Commit Graph

537 Commits

Author SHA1 Message Date
Timothy Nikkel
ebd5b0ef6e Bug 1029718. Skip transform calculation if region to transform is empty for layer event regions. r=mstange
This means that we keep empty regions empty instead of rounding out causing empty regions to become non-empty. It can be significant for perf. Bug 1016525 fixed this. Bug 977831 regressed this.
2014-07-03 13:40:13 -05:00
Carsten "Tomcat" Book
2711b03876 Backed out changeset 8179a07a4181 (bug 1009306) for m6 and m7 android test failures on a CLOSED TREE 2014-06-30 12:31:07 +02:00
Chris Lord
8cc7040966 Bug 1009306 - Allow invalidation when a layer's sub-pixel scroll changes. r=roc
We #ifdef'd this out before the implementation of flexible scroll ranges,
but now there's no need for this and it ends up causing visible rendering
glitches.
2014-06-25 17:48:53 +01:00
Jonathan Watt
0a412a04d6 Bug 1031055 - Get rid of the Thebes backed gfxContexts in FrameLayerBuilder.cpp, and get rid of gfxASurface::DumpAsDataURL. r=mattwoodrow 2014-06-27 12:19:40 +01:00
Markus Stange
32deb51be9 Bug 1026450 - Don't let clipped animated transforms trigger layerization of elements outside the clip. r=roc
--HG--
extra : rebase_source : 2e260272a4d6aa4271d4e3231d7da3dd224b838c
2014-06-25 10:36:13 +02:00
Timothy Nikkel
017b37e3d0 Bug 1030370. We should be looking at the layer data for the frame we are looping over in the loop, not the starting frame each time in FrameLayerBuilder::GetThebesLayerScaleForFrame. r=mattwoodrow 2014-06-25 22:55:20 -05:00
Ed Morley
2a6e6feea8 Backed out changeset 5f35e9f7ad4a (bug 1026450) for B2G reftest failures; CLOSED TREE
--HG--
extra : amend_source : f9a3650794b0844becd8ff0ab6b284d727e463b3
2014-06-25 17:13:20 +01:00
Markus Stange
6cebd31352 Bug 1026450 - Don't let clipped animated transforms trigger layerization of elements outside the clip. r=roc 2014-06-25 10:36:13 +02:00
Mats Palmgren
f640b8d77d Bug 1025212 - Initialize 'last' to silence a static analyzer warning. r=dholbert 2014-06-24 17:52:18 +00:00
Jonathan Watt
ef224664db Bug 1027645 - Eliminate all nsRenderingContext::AppUnitsPerDevPixel() callers and all non-propagating nsRenderingContext::DeviceContext() callers. r=roc 2014-06-20 07:42:30 +01:00
Timothy Nikkel
fd868e10b6 Bug 977831. Store layer event regions on thebes layer data in appunits relative to the reference frame until we finalize the thebes layer and then convert to layer coordinates. r=roc
Event regions weren't in a workable state prior to this. They were already stored relative to the reference frame, but in layer pixels.

Inside inactive layer managers the scale is always 1 regardless of the scale on the containing thebes layer (which is the scale it will actually be drawn at), and so the event regions did not take into account scale in this situation.

Storing the regions in appunits relative to the reference frame means we can just transform to the new reference frame (if it is different) when passing event regions up and out of inactive layer managers. The proper scale will be applied when we apply the event regions to the layer.
2014-06-19 22:56:36 -05:00
Benoit Girard
19effe56b7 Bug 1027496 - Stream display list and layers dump. r=mattwoodrow 2014-06-19 18:36:25 -04:00
Jonathan Watt
6586dcffb2 Bug 1027763, part 2 - Make non-Moz2D callers of DrawTarget::GetType() call DrawTarget::GetBackendType() instead. r=Bas 2014-06-19 21:35:33 +01:00
Chris Lord
ffcda6a27d Bug 1006084 - Allow ThebesLayers to be recreated when the creation hint changes. r=mattwoodrow 2014-06-13 17:11:08 +01:00
Markus Stange
164d699aff Fix a typo in a comment in ContainerState::FindThebesLayerFor. No bug, r=typo 2014-06-04 14:44:28 +02:00
Markus Stange
9aa68b0bc5 Bug 1018464 - Make ContainerState::FindOpaqueBackgroundColorFor look through holes in display items. r=roc
--HG--
extra : rebase_source : 69d82381327e1114a6264d5ed360dd16aca39166
2014-06-03 14:50:42 +02:00
Victor Porof
9ce7e9c089 Bug 1007203 - Always add categories when pushing to the pseudostack, r=djvj 2014-05-23 17:12:29 -04:00
Markus Stange
6ee31049c7 Bug 1016525 - Ignore empty rects in AddTransformedBoundsToRegion. r=roc 2014-05-28 11:47:07 +02:00
Birunthan Mohanathas
59b969f7f4 Bug 869836 - Part 8: Use Append('c') instead of Append("c"). r=ehsan 2014-05-22 06:48:52 +03:00
Matt Woodrow
24c80a523e Bug 1013536 - Clip paint flashing area when using single-rect painting mode. r=Bas 2014-05-22 14:36:26 +12:00
Wes Kocher
6df3da8665 Backed out changeset 6761e016c804 (bug 1009680) for m-oth bustage on an otherwise CLOSED TREE 2014-05-13 15:56:42 -07:00
Markus Stange
ce0373dbda Bug 1009680 - Disable paint flashing for inactive layer contents. r=roc 2014-05-13 23:13:11 +02:00
Markus Stange
fa2b5d8efd Bug 1009020 - Use a fixed epsilon when nudging the transform to integers in ChooseScaleAndSetTransform. r=roc 2014-05-12 21:37:21 +02:00
Markus Stange
78b0944e4b Bug 1008301 - Add invalidation logging for layer scale change invalidations. r=roc 2014-05-12 21:37:21 +02:00
Wes Kocher
1e1dbd59bb Backed out 4 changesets (bug 1008301) for possibly breaking OSX 10.8 reftests on a CLOSED TREE
Backed out changeset 6a9b7a423db8 (bug 1008301)
Backed out changeset bd16c8833501 (bug 1008301)
Backed out changeset d1fab05aa5f5 (bug 1008301)
Backed out changeset 16ddb5b9eb6d (bug 1008301)
2014-05-12 14:35:46 -07:00
Markus Stange
3cf0ed567d Bug 1008301 - Add invalidation logging for layer scale change invalidations. r=roc 2014-05-12 21:37:21 +02:00
Matt Woodrow
f67185f255 Bug 938395 - Enable single rect painting for d3d10. r=Bas 2014-05-08 14:56:48 +12:00
Markus Stange
b406fc1145 Bug 1000875 - Add invalidation debugging annotations for changes of a layer's forced background color. r=roc 2014-05-05 10:26:28 +02:00
Markus Stange
acd1568bc2 Bug 1000382 - Don't simplify the invalidation region before calling nsSVGIntegrationUtils::AdjustInvalidAreaForSVGEffects. r=roc
--HG--
extra : rebase_source : a0eb465b54735c13e7b1934c3f6379ef74fd3f35
2014-04-24 10:25:17 +02:00
Markus Stange
cf6d1698fb Bug 1000167 - Choose the right animated geometry root for inactive layer contents. r=roc
Choosing a frame that is scrolled along with the inactive layer results in a fixed offset between the two, so the transform that we set on the thebes layer in the basic layer manager of the inactive layer doesn't change when the page is scrolled.

--HG--
extra : rebase_source : 9b7996e2979e7d833aaddada2eebdd3c15ab621e
2014-04-24 10:18:11 +02:00
Timothy Nikkel
2ad94f8051 Bug 1000266. Don't purge the canvas fixed background image cache if we are only scrolling. r=mattwoodrow
Also NotifyRenderingChanged was on the canvas background color item, not the background image item.

Bug 818643 was a problem where the cache didn't get purged enough, but the fix meant we basically always purged the cached and never got to use it, making it useless. It meant that we purged the cache anytime the item has any type of invalidation whatsoever, even if the item would be drawn the same but the layer contents needed to be invalidated so that it would be redrawn (ie due to staying at the same position on screen but a different position in the layer).

This is really hacky, but NotifyRenderingChanged is only observed on one type of display item. So we just isolate the case where the only thing that changed is the offset (due to scrolling) and skip the NotifyRenderingChanged in that case.
2014-04-23 21:56:15 -05:00
Markus Stange
ed33e48d8b Bug 987005 - Add comments to a condition in PopThebesLayerData(). r=roc 2014-04-22 16:27:44 +02:00
Robert O'Callahan
a4aeed0a3c Bug 972713. Part 2: Ignore active scrolled roots in inactive layer trees, because they don't help and could hurt. r=mattwoodrow
--HG--
extra : rebase_source : 3c1c4abb6685f106f927f0f43dbb62fe64a37038
2014-02-18 17:00:35 +13:00
Jonathan Watt
d54d6a8047 Bug 960524 - Get rid of Image::DeprecatedGetAsSurface (Moz2D migration). r=mattwoodrow 2014-04-10 09:49:53 +01:00
Jonathan Watt
52c729fd76 Bug 964731 - Convert ImageLayerD3D10 and CreateOptimalSurface/CreateOptimalMaskSurface to Moz2D. r=Bas 2014-04-10 09:49:49 +01:00
Daniel Holbert
06bfde0043 (no bug) Remove whitespace at end of line in FrameLayerBuilder. (whitespace-only, DONTBUILD) 2014-03-20 14:49:27 +08:00
Matt Woodrow
0cb3a2793a Bug 982812 - Use UpdateThemeGeometry for windows region clearing. r=mstange 2014-03-17 16:42:48 +08:00
Matt Woodrow
0304720ba9 Bug 940455 - Add LayerManager functonality to clear out a portion of the window for the OS to paint. r=roc,Bas 2014-02-13 13:20:41 +13:00
Matt Woodrow
81eff840bb Bug 981252 - Initialize all values in MaskLayerUserData so that equality comparisons make sense. r=dbaron 2014-03-11 11:12:48 +13:00
Mike Conley
e5ef2f1eee Backing out bug 940455 (36e45a68452b) for numerous regressions. r=bustage-fix. 2014-03-07 16:50:30 -05:00
Matt Woodrow
3f1217aeee Bug 978911 - Add the entire visible region to the layers invalid region when we invalidate the whole thing. r=roc 2014-03-07 12:31:47 +13:00
Matt Woodrow
205af94a59 Bug 940455 - Add LayerManager functonality to clear out a portion of the window for the OS to paint. r=roc,Bas 2014-02-13 13:20:41 +13:00
Ed Morley
46cd2a9fc8 Merge latest green b2g-inbound changeset and mozilla-central 2014-03-03 14:45:43 +00:00
Timothy Nikkel
be8bb76db2 Bug 978655. Simplify ContainerState::FindFixedPosFrameForLayerData. r=mattwoodrow 2014-03-03 00:04:59 -06:00
Timothy Nikkel
b46e8f3a85 Bug 974643. The displayport is not relevant to position: fixed content, only to scrolling content. r=roc
The relevant part of postion: fixed items lies within the viewport, which is the scroll position clamping scroll port size if one has been set.
2014-03-02 19:49:39 -06:00
Timothy Nikkel
7d49d25691 Bug 959847. Part 8. Don't let ProcessDisplayItems set the clip on subdocument items when they are being used to draw the display port content. r=roc 2014-02-27 16:01:54 -06:00
Matt Woodrow
e528934d7f Bug 971720 - Allow ThebesLayers to be optimized to ColorLayers even if they have rounded rect clipping. r=roc 2014-03-01 08:52:03 +13:00
Matt Woodrow
0827270cd6 Bug 976877 - Don't build optimized layers (color/image) inside inactive layer trees. r=roc 2014-03-01 08:49:58 +13:00
Robert O'Callahan
d4a1d76dc4 Bug 976412. Part 1: Fix logic for determining when a display item can be placed in a layer. r=mattwoodrow
--HG--
extra : rebase_source : c390532cb3f6252fa388dfbe8176f4f911dfbdb3
2014-02-26 17:17:18 +13:00
Robert O'Callahan
0c22df2d8c Bug 969354. Track which ThebesLayers contain items which returned true from ShouldFixToViewport, and make sure each such item gets its own ThebesLayer. r=mattwoodrow
--HG--
extra : rebase_source : 629f91869bd4c4ad2e4e17c40c5fe0311532fb67
2014-02-21 14:11:17 +13:00