Commit Graph

460 Commits

Author SHA1 Message Date
Matt Woodrow
77a22aa86c Bug 820246 - Split nsDisplayCanvasBackground into separate color and image items. r=roc 2012-12-13 14:15:55 +13:00
Jeff Muizelaar
7877c58e7a Bug 798245. Propagate the zoom from the tab child into the frame metrics. r=cjones
This lets the default zoom make it back to the APZC when the viewport is set.
2012-12-11 17:49:57 -05:00
Robert O'Callahan
0a7d1f4614 Bug 663776. Part 0.5: Mark layers that could have their transforms changed via off-main-thread animations or empty transactions, and treat all ThebesLayerOGL descendants of such layers as potentially resampled so that their buffers are put into the correct state and size. r=mattwoodrow
--HG--
extra : rebase_source : d3c78cc61f1a3d5f12dedb57180371b41b1647f6
2012-12-12 18:21:23 +13:00
Nicholas Cameron
3575f84d30 Bug 780692; throttle OMTA (rollup patch). r=dbaron,bz
--HG--
extra : rebase_source : 1207275df5c509ac1974e2b9333c738b995f9d5e
2012-12-12 10:12:43 +13:00
Matt Woodrow
7d9d1178c3 Bug 820131 - Compute a more accurate bounds for nsDisplayBoxShadowOuter. r=roc 2012-12-12 09:36:54 +13:00
Matt Woodrow
b703eaf5e8 Bug 791644 - Refactor nsDisplayTransform::GetResultingTransformMatrix into two functions with less optional parameters. r=roc 2012-09-18 10:34:21 +12:00
Robert O'Callahan
9b4a4815ee Backout 7aceff7124d9 (bug 815591) for Mac test failures 2012-11-29 20:39:36 +13:00
Robert O'Callahan
f9199a2935 Bug 815593. Don't layerize images that exceed MaxTextureSize. r=mattwoodrow
--HG--
extra : rebase_source : f94300b24b90d063df095324663c9d8fa49e42e9
2012-11-28 15:34:45 +13:00
Robert O'Callahan
15eedf82be Bug 815591. Don't build nsDisplayBackgroundColor if there is no background color and we're not going to do hit-testing. r=mattwoodrow
--HG--
extra : rebase_source : ce6fbf882f00d7c3ceb7f149bb6e9cb21ed6f74d
2012-11-28 01:50:09 +13:00
Matt Woodrow
4ee23c25c7 Bug 814272 - Cache the bounds of nsDisplayBackgroundImage items. r=roc 2012-11-28 17:05:32 +13:00
Nicholas Nethercote
a9de315db1 Bug 814312 - Avoid PL_ArenaPool recycling in the layout engine. r=roc.
--HG--
extra : rebase_source : 7aaa3d745583c595692f1effd933cc70931194ff
2012-11-25 14:40:28 -08:00
Robert O'Callahan
374246c82f Bug 813722. Create layers for opacity:0 elements with animated opacity. r=mattwoodrow
--HG--
extra : rebase_source : 5dbcb7966983f040f340f661dd8a585dc92dae1e
2012-11-23 14:09:24 +13:00
Nicholas Cameron
9fbca42363 Bug 812908; add a debug pref for forcing active layers; r=roc 2012-11-23 12:29:05 +13:00
Chris Lord
30136b7c25 Bug 783368 - Add critical display port content property. r=roc
Add a property to represent a sub-rectangle of the display port that is
considered 'critical' to render correctly.
2012-11-21 22:34:18 +00:00
Ehsan Akhgari
a1ca146c7c Backed out 11 changesets (bug 783368) because of build bustage on a CLOSED TREE
Backed out changeset 2bc4310263c4 (bug 783368)
Backed out changeset a35c83a8d99d (bug 783368)
Backed out changeset afb9b2a661ba (bug 783368)
Backed out changeset 3926f510f9be (bug 783368)
Backed out changeset 9d1fe200ff87 (bug 783368)
Backed out changeset b6e4f88f5730 (bug 783368)
Backed out changeset bc53f7dba7c6 (bug 783368)
Backed out changeset 1948fa2fccc1 (bug 783368)
Backed out changeset 9af163388fd1 (bug 783368)
Backed out changeset 7a2256e1aa7c (bug 783368)
Backed out changeset 4da1958a9885 (bug 783368)
2012-11-21 14:57:02 -05:00
Chris Lord
9a58cff763 Bug 783368 - Add critical display port content property. r=roc
Add a property to represent a sub-rectangle of the display port that is
considered 'critical' to render correctly.
2012-11-21 19:16:51 +00:00
Chris Jones
676ebf7c6e Bug 799768: Only bother computing an invalid rect if it affects composition and enable omtc for X11 b2g builds. r=mattwoodrow 2012-10-11 16:55:42 -07:00
Robert O'Callahan
e8a5527e77 Bug 812776. Reset InlineBackgroundData whenever there are no display lists extant. Frame trees can't change while there are display lists extant. r=mattwoodrow 2012-11-19 23:54:41 +13:00
Matt Woodrow
caced635cb Bug 811927 - Allow conversion of nsDisplayBackgroundImage into ImageLayers. r=roc 2012-11-19 16:28:18 +13:00
Robert O'Callahan
4762b4de2c Bug 810470. Part 8: Limit the BasicLayers background-caching optimization to cases where the destination context has an integer translation only, and snap the image rectangle. r=mattwoodrow
Previous patches in this bug enabled the nsDisplayCanvasBackground
background-caching optimization for the test 402807-1.html. That exposed
an existing bug where we don't snap the background image to pixel
boundaries when drawing through that path. This patch fixes it.
This patch also stops the IsSingleFixedPositionImage path from using
mDestRect, returning the rect as an out-parameter instead.

--HG--
extra : rebase_source : b7a496dfc7584dd8c73cddd0809fc5aa31992d53
2012-11-14 17:35:18 -08:00
Robert O'Callahan
aac114d53d Bug 810470. Part 7: Simplify TryOptimizeToImageLayer/IsSingleFixedPositionImage now that colors are not involved. r=mattwoodrow
--HG--
extra : rebase_source : 42177253b513be84e55a6ad2e9ba1db6a1f76eef
2012-11-10 00:42:10 -05:00
Robert O'Callahan
de0ff3cd83 Bug 810470. Part 6: Rename nsDisplayBackground to nsDisplayBackgroundImage. r=mattwoodrow
--HG--
extra : rebase_source : c532ae41706db6c9d5488bc2b7901c3bf0f0fc25
2012-11-09 18:14:59 -05:00
Robert O'Callahan
5e7bbc6525 Bug 810470. Part 4: Make only background-attachment:fixed backgrounds that have propagated to the viewport use a dedicated layer, and refactor how we do that. r=mattwoodrow
--HG--
extra : rebase_source : f1085ce640e50617b687f9902edd83816512f786
2012-11-09 18:14:14 -05:00
Robert O'Callahan
5387b9f845 Bug 810470. Part 2: Change nsDisplayBackground invalidation to store and compare the background positioning rect. r=mattwoodrow
--HG--
extra : rebase_source : c9141ba46d034fc496a3e9e33efce5b022bec41c
2012-11-08 10:05:32 -05:00
Robert O'Callahan
fd2ab3281a Bug 810470. Part 1: Cache nsStyleBackground pointer in nsDisplayBackground. r=mattwoodrow
--HG--
extra : rebase_source : a104cfa5d8c72e208866b56507c56174e14ef143
2012-11-07 23:08:40 -05:00
Matt Woodrow
052f5cf6e0 Bug 811831 - Don't create layers for nsDisplayOpacity items that have an opacity of 0. r=roc 2012-11-14 14:43:29 -08:00
Matt Woodrow
ceb5b81a1a Bug 808491 - Force 3d transformed layers to always be active. r=roc 2012-11-13 22:26:29 -08:00
Matt Woodrow
c39ede05cb Bug 805197 - Compute a region in LayerTreeInvalidation. r=roc 2012-11-12 10:31:15 -08:00
L. David Baron
1d86113ecf Bug 809533, patch 1: Make allocation in the frame arena and the display list arena infallible. r=roc 2012-11-07 11:55:53 -08:00
Matt Woodrow
9ef6a10cc9 Bug 805948 - Use the local perspective value instead of trying to retrieve it from the nsStyleDisplay again. r=cjones 2012-11-07 19:56:57 +13:00
Matt Woodrow
d5a8630bc0 Bug 798964 - Add nsDisplayBackground color and make the bounds of nsDisplayBackground match the image. r=roc 2012-10-25 18:32:25 +13:00
Robert O'Callahan
313c8cc5d1 Bug 805331. Only chrome display items that are leaves should be treated as especially opaque. r=mats 2012-11-03 01:59:03 +13:00
Robert O'Callahan
45f55abd96 Bug 805331. Part 1: Refactor nsDisplayList::GetList
Renames GetList to GetSameCoordinateSystemChildren, and adds an assertion
to verify that the children have the same reference frame as the parent.
Adds nsDisplayList::GetChildren to return whatever children there are.
Obsoletes nsDisplayTransform::GetStoredList.
2012-11-03 01:59:03 +13:00
Robert O'Callahan
ea96212e03 Bug 796452. Add mozpasspointerevents attribute for IFRAMEs in chrome windows. r=mats 2012-11-02 23:42:59 +13:00
Matt Woodrow
68ac6cb0e7 Bug 800041 - Make nsDisplayWrapList set its own reference frame correctly, and sanity check during ComputeVisibilityForSublist. r=roc 2012-10-25 18:32:25 +13:00
Phil Ringnalda
1d64e213a8 Back out c95958e3b85d and e8a8bf41e0c4 (bug 798964) for Android reftest-4 failures 2012-10-25 01:19:57 -07:00
Phil Ringnalda
d3bdbf57ba Back out 8bffa268afd8 (bug 800041) for reftest assertions in 745934-1.html 2012-10-24 23:49:39 -07:00
Matt Woodrow
b7fc4d07b6 Bug 800041 - Make nsDisplayWrapList set its own reference frame correctly, and sanity check during ComputeVisibilityForSublist. r=roc 2012-10-25 18:32:25 +13:00
Matt Woodrow
1c151da429 Bug 798964 - Add nsDisplayBackground color and make the bounds of nsDisplayBackground match the image. r=roc 2012-10-25 18:32:25 +13:00
Matt Woodrow
64df41fa2a Bug 800041 - Set the correct reference frame for nsDisplayScrollLayer when the frame is transformed. r=roc 2012-10-25 12:04:41 +13:00
Chris Lord
d09c17393d Bug 803826 - Restore the layer builder pointer on return from PaintForFrame. r=mattwoodrow
It's possible for nsDisplayList::PaintForFrame to reset the layer builder
pointer on a layer manager it didn't create. Instead of setting it to null,
store the existing pointer and restore it on return.
2012-10-23 12:01:23 +01:00
Timothy Nikkel
31bcc858c2 Bug 642257. If there are no plugins in the display list skip a potentially expensive compute visibility pass with accurate visible regions to determine plugin geometry because it is not needed. r=roc
If there is a plugin in a background tab and a complex scene in a foreground tab the accurate visible regions can cause us to bog down, for no good reason.
2012-10-18 00:34:58 -05:00
Robert O'Callahan
8aec82ec43 Bug 626245. Part 4: Compute plugin widget geometry updates via the refresh driver's painting, and defer actual widget updates until we've just composited the window. r=mats
Updating plugin widget geometry every time we paint means we don't have to
explicitly request plugin geometry updates.
This patch stops us from flushing plugin geometry changes in
FlushPendingNotifications(Flush_Layout). There are too many Flush_Layouts and
flushing plugin geometry changes on them produces frequent
desynchronization of the plugin geometry with the rendered window contents.
There is some Web compatibility risk there --- it means we have to change
our tests, for one thing --- but hopefully it's OK.

--HG--
extra : rebase_source : 87adde45795ea2cab362ed9df54e62c5cc97e16c
2012-10-07 02:03:23 +13:00
Ed Morley
730f7084d0 Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-10-12 11:59:59 +01:00
Chris Jones
b00b1e25b0 Bug 795657: Integrate native viewport configuration better into async pan-zoom code. r=jwir3,roc
This is a rollup of the following patches
 - Change the interpretation of FrameMetrics.mZoom to a "resolution-indepedent zoom", instead of a resolution-depedent scale factor. r=roc
 - Remove mention of "meta" from TabChild. r=roc
 - Remove some useless logging. r=roc
 - Tag FrameMetrics with its composition bounds at paint time. r=roc
 - Add a helper to calculate the render resolution for a FrameMetrics. r=roc
 - Add a helper to compute the approximate CSS dimensions a FrameMetrics will cover during composition. r=roc
 - BrowserElementScrolling doesn't actually care about zoom or resolution. r=roc
 - Accept the viewport that content has calculated, when it's received the latest widget geometry update. r=roc
 - Mechanically separate uses of zoom/resolution based on new definitions. r=roc
 - Convert GetViewportInfo()'s resolution-dependent scale into resolution-indepedent zoom. r=roc
 - Reinterpret defaultZoom == 0.0 as "intrinsic scale". r=jwir3,roc
2012-10-11 22:46:24 -07:00
Matt Woodrow
8b3fa0303c Bug 795674 - Refactor DisplayItemData storage in FrameLayerBuilder. r=roc 2012-10-12 12:38:24 +13:00
Chris Lord
de6ceac9dc Bug 795674 - Reinstate underlying frame swap when merging nsDisplayScrollLayer. r=roc
This swap was removed with the work in Bug 785333, as layers were associated
with merged frames as well as their underlying frames. Since DLBI, this is no
longer the case, so reinstate this temporary fix for a very common case of
the underlying frame of a display-item changing.
2012-10-05 10:56:49 +01:00
Chris Jones
a734561c9e Bug 790505, part 4: If we're just updating the transform of a prerendered layer, then schedule an empty transaction to skip unnecessary display-list overhead. r=mattwoodrow,roc 2012-10-02 22:55:52 -07:00
Chris Jones
8e7287f20e Bug 790505, part 1: Have prerendered transform frames pretend that they don't have an opaque region so that we can move them around more efficiently. r=mattwoodrow 2012-10-02 22:55:50 -07:00
Chris Jones
263dc7d01e Back out bug 790505 for leaking 2012-10-03 00:21:08 -07:00