Robert O'Callahan
cdaa7cd2e4
Bug 1042104. Part 1: Cache prerender flag in nsDisplayTransform. r=tn
...
--HG--
extra : rebase_source : 79f39bb1b0d29cc28b4d492fbf6a497f99ec9dac
2014-07-30 00:09:35 +12:00
Wes Kocher
3c155637a3
Backed out 11 changesets (bug 952977) for reftest-no-accel failures
...
Backed out changeset ea2367c19da3 (bug 952977)
Backed out changeset c401c8748eb3 (bug 952977)
Backed out changeset a93e9ff1043b (bug 952977)
Backed out changeset 765b7f67163e (bug 952977)
Backed out changeset 3d8cf4f5777f (bug 952977)
Backed out changeset 8993710a3ab3 (bug 952977)
Backed out changeset 1298c39b745a (bug 952977)
Backed out changeset be0b899fbe5e (bug 952977)
Backed out changeset f69bea1f1feb (bug 952977)
Backed out changeset 1a745777f07e (bug 952977)
Backed out changeset 5ad1d18dfe17 (bug 952977)
2014-07-29 18:58:46 -07:00
David Zbarsky
b967b647bf
Bug 952977: More gfx::Matrix cleanup in nsDisplayTransform r=nical
2014-07-29 19:18:50 -04:00
Matt Woodrow
bf15ddaf06
Bug 1039020
- Layerize background-attachment:fixed for all elements, not just the root one. r=roc
2014-07-25 20:37:50 +12:00
Timothy Nikkel
3ace971252
Bug 1041510. Allow z-index overrides of 0 to work correctly on display items. r=roc
2014-07-23 18:07:18 -05:00
Robert O'Callahan
91f1cc1251
Bug 1041200. Ensure nsDisplayZoom and friends compute mVisibleRect relative to their reference frame. r=mattwoodrow
2014-07-22 17:50:11 +12:00
Robert O'Callahan
37ae3ee79e
Bug 1003425. When opacity is delegated to an nsDisplayBoxShadowOuter via nsDisplayItem::ApplyOpacity, store the opacity in our geometry so we can invalidate if it changes. r=mattwoodrow
...
--HG--
extra : rebase_source : f4b44bad8537029b0e03d912b927686aa352d681
2014-07-22 01:59:10 +12:00
Robert O'Callahan
b55f535d57
Bug 1022612. Part 43: Fix up SuppressComponentAlpha to allow component alpha in inactive layers over opaque parts of the chrome window. r=mattwoodrow
...
--HG--
extra : rebase_source : d6489832ba0a14c38647e25bfe632d2efc698f80
2014-07-15 16:23:37 +12:00
Robert O'Callahan
88a4213214
Bug 1022612. Part 42: Add opaque regions of ThebesLayer content to the "exclude glass" region. r=mattwoodrow
...
--HG--
extra : rebase_source : 715df6c86b139aec7ad607e56c89dbfad3475380
2014-07-14 12:46:13 +12:00
Robert O'Callahan
815af71a46
Bug 1022612. Part 37: Remove aAllowVisibleRegionExpansion. r=mattwoodrow
...
This is no longer needed thanks to the readback simplification.
--HG--
extra : rebase_source : 659147670395fefe41647daab8af93f6c439a99c
2014-06-23 16:24:51 +12:00
Robert O'Callahan
06102a099d
Bug 1022612. Part 33: Remove InFixedPos code. r=mattwoodrow
...
This hasn't been used for a while I guess.
--HG--
extra : rebase_source : d59328f96a11cc65e141c75475c09edac5d42af2
2014-06-23 16:24:14 +12:00
Robert O'Callahan
b2460097a3
Bug 1022612. Part 32: Remove nsDisplayItem::SetVisibleRegionOnLayer. r=mattwoodrow
...
It is no longer called because FrameLayerBuilder always sets the visible
regions on layers now.
--HG--
extra : rebase_source : b6c375fbbaeb79e7332cb55bdda9943bc1ee7f3c
2014-06-23 16:24:14 +12:00
Robert O'Callahan
808792d22f
Bug 1022612. Part 30: Expose IsConstructingScrollLayerForScrolledFrame and IsDisplayPortOpaque on nsDisplayScrollLayer. r=mattwoodrow
...
--HG--
extra : rebase_source : 87d76ad3e9d560f34dad56c25cb96516871e280a
2014-06-23 16:23:58 +12:00
Robert O'Callahan
4ee42acd8c
Bug 1022612. Part 27: Make FrameLayerBuilder responsible for setting all layer visible regions. r=mattwoodrow
...
Calling Layer::SetVisibleRegion multiple times in a transaction can result in
unnecessary IPC traffic.
This patch removes Intersect(childGfxBounds). This is only needed to
restrict the visible region to something sane for 3D transforms, and this will
be fixed up in a later patch.
--HG--
extra : rebase_source : 4518bc060fa2c28dacdb7d3aaeca55a148dfe762
2014-06-18 15:12:55 +12:00
Robert O'Callahan
a438107cde
Bug 1022612. Part 24: Simplify nsDisplayList::ComputeVisibilityForSublist now that FrameLayerBuilder does most of the work. r=mattwoodrow
...
--HG--
extra : rebase_source : 0db68211898c111a465dc641bed8e3b2923f0e4e
2014-06-09 16:48:02 +12:00
Robert O'Callahan
f00b9f098c
Bug 1022612. Part 23: Remove nsDisplayItem::IsVaryingRelativeToMovingFrame. r=mattwoodrow
...
It's obsolete and no-one calls it.
--HG--
extra : rebase_source : f07121d1e5766d7b2a0ecdc2d10bc3ccf587a14b
2014-06-09 16:48:02 +12:00
Robert O'Callahan
b767cf2502
Bug 1022612. Part 22: Add MOZ_COUNT_CTOR to nsDisplayWrapList. r=mattwoodrow
...
--HG--
extra : rebase_source : 09252e01de90bd3e5c0cb77de80ee88e24b85f05
2014-06-09 16:48:01 +12:00
Robert O'Callahan
de781d04dc
Bug 1022612. Part 21: Remove DidComputeVisibility checking. r=mattwoodrow
...
--HG--
extra : rebase_source : 31b54ea4998ddc6fa62369f9f943b4c751101cad
2014-06-09 16:48:01 +12:00
Robert O'Callahan
6fb1dbced3
Bug 1022612. Part 20: Do the business. r=mattwoodrow
...
--HG--
extra : rebase_source : c13789e08893c3ac7745aa32c9002b6edb6e2192
2014-06-09 16:48:01 +12:00
Robert O'Callahan
7632a9b8c6
Bug 1022612. Part 15: Add nsDisplayItem::GetVisibleRectForChildren(). r=mattwoodrow
...
--HG--
extra : rebase_source : cf958f41493ab25762f0c3bcc0361b0810e88549
2014-07-15 23:47:46 +12:00
Robert O'Callahan
60c38334c4
Bug 1022612. Part 14: Don't compute a final transparent region anymore. r=mattwoodrow
...
Computing this via FrameLayerBuilder is some work and we don't really have to.
SuppressComponentAlpha will be true in more cases. This will be OK as long as
text in the chrome window is over opaque content in the same ThebesLayer. We
will miss some edge cases such as text in 'opacity' with no opaque background.
This should be OK.
--HG--
extra : rebase_source : fa23d4980710a3961f23cedf3ebdf01b49d63518
2014-06-09 16:48:00 +12:00
Robert O'Callahan
ef4dbca93e
Bug 1022612. Part 13: Set mDidComputeVisibility in ProcessDisplayItems. r=mattwoodrow
...
--HG--
extra : rebase_source : c17d6f4c83b9a47c8d3158203ebe0cbff8d2d313
2014-07-07 17:46:28 +12:00
Robert O'Callahan
5abf69fdfb
Bug 1022612. Part 11: Set opaque flag on nsDisplayList if we find an opaque item that covers the whole list. r=mattwoodrow
...
This is less general than what nsDisplayItem::ComputeVisibility does. This means
if multiple opaque items together cover the list bounds, but not individually,
we won't mark the list as opaque. I think that should be OK.
--HG--
extra : rebase_source : 947fe7bfe8729703ebd46288dfa29f0935fadf87
2014-06-09 16:48:00 +12:00
Robert O'Callahan
f454ea8959
Bug 1022612. Part 10: Implement merging and flattening in ProcessDisplayItems. r=mattwoodrow
...
BuildContainerLayerFor now has to be able to mutate the passed-in display item
list.
--HG--
extra : rebase_source : a3cf9106703d4946a49a73ef60a605f72b2afee3
2014-06-09 16:48:00 +12:00
Robert O'Callahan
bb2fc8e625
Bug 1022612. Part 8: nsDisplayWrapList (but not subclasses) should return true for ShouldFlattenAway. r=mattwoodrow
...
Also the assertion in TryMerge is going away because we're going to do TryMerge
first in FrameLayerBuilder.
--HG--
extra : rebase_source : de8a1a620279182bf5e33165aa9bbe9a74c08a73
2014-06-09 16:47:59 +12:00
Robert O'Callahan
a7afb232a3
Bug 1022612. Part 6: Set the initial mVisibleRect for each display item to the dirty rect when we create the item. r=mattwoodrow
...
--HG--
extra : rebase_source : b3207861e7476e954a8869a8b2d74e642ea6e56b
2014-06-09 16:47:59 +12:00
Robert O'Callahan
b928ef8d93
Bug 1022612. Part 4: Track current dirty rect in nsDisplayListBuilder. r=mattwoodrow
...
We need this to set the initial visible rect during display list construction.
Eventually we'll also be able to get rid of the dirty rect parameter to
nsIFrame::BuildDisplayList.
--HG--
extra : rebase_source : b793c7d51917b85ea2a5f39993bc1fec24b49d04
2014-05-20 15:59:14 +12:00
Robert O'Callahan
2f1bbefcfd
Bug 1022612. Part 3: Rename "cached frame" to "current frame" in nsDisplayListBuilder and take advantage of the fact it's always set. r=mattwoodrow
...
--HG--
extra : rebase_source : cde43a3f358fbb0991ed84d10fc4e1a0de255e9c
2014-05-20 15:49:54 +12:00
Robert O'Callahan
3baea5dd36
Bug 1022612. Part 2: Remove unused nsDisplayWrapList constructor. r=mattwoodrow
...
--HG--
extra : rebase_source : 724f95df1dec4a8c7e1a136e029b06e56eb7202f
2014-05-20 15:08:20 +12:00
Robert O'Callahan
8d8168a588
Bug 1022612. Part 1: Always pass a frame to AutoBuildingDisplayList. r=mattwoodrow
...
--HG--
extra : rebase_source : 7ae8b6e75e0ceeda8afd214e9792a915a21928e3
2014-05-20 15:08:18 +12:00
Ryan VanderMeulen
df23fd9dde
Backed out 46 changesets (bug 1022612) for B2G mochitest permafails on a CLOSED TREE.
...
Backed out changeset 34b3014a3112 (bug 1022612)
Backed out changeset 6ae9316fd909 (bug 1022612)
Backed out changeset b8f3749c95eb (bug 1022612)
Backed out changeset caab10bf6ca3 (bug 1022612)
Backed out changeset 0c57c620c898 (bug 1022612)
Backed out changeset fac64141a00a (bug 1022612)
Backed out changeset bf0df1c9d68b (bug 1022612)
Backed out changeset b42054800020 (bug 1022612)
Backed out changeset 667793b21194 (bug 1022612)
Backed out changeset f14ada64fe1b (bug 1022612)
Backed out changeset 75b837686bdf (bug 1022612)
Backed out changeset 66de53183a22 (bug 1022612)
Backed out changeset 0ff86ced4d46 (bug 1022612)
Backed out changeset 18eecc5b1ef7 (bug 1022612)
Backed out changeset 2763c4878de5 (bug 1022612)
Backed out changeset b72413ecc385 (bug 1022612)
Backed out changeset b23f1081afb8 (bug 1022612)
Backed out changeset f7e2c6a72043 (bug 1022612)
Backed out changeset 959917c9027d (bug 1022612)
Backed out changeset 0268a46f4880 (bug 1022612)
Backed out changeset 3388856a80ad (bug 1022612)
Backed out changeset e4b17cf0f806 (bug 1022612)
Backed out changeset 2f4e9da0e4b6 (bug 1022612)
Backed out changeset 489f6a7c0c03 (bug 1022612)
Backed out changeset 8369d9ad7ad3 (bug 1022612)
Backed out changeset 0758d2a06002 (bug 1022612)
Backed out changeset f2ae9cb22edb (bug 1022612)
Backed out changeset 9c48c6ee5dc2 (bug 1022612)
Backed out changeset fe7134400f08 (bug 1022612)
Backed out changeset cc2c5397ca8b (bug 1022612)
Backed out changeset a3d1a3e8b39d (bug 1022612)
Backed out changeset 8974b74b0eb0 (bug 1022612)
Backed out changeset 75f7dbb5a2a6 (bug 1022612)
Backed out changeset 2aa04a071e60 (bug 1022612)
Backed out changeset f2ab1bcd4c39 (bug 1022612)
Backed out changeset da9152b6ea29 (bug 1022612)
Backed out changeset 58abf5b0e148 (bug 1022612)
Backed out changeset 797058a09ad2 (bug 1022612)
Backed out changeset ea3e99a92ff0 (bug 1022612)
Backed out changeset adc4a4a7aa73 (bug 1022612)
Backed out changeset 7b18dedd1505 (bug 1022612)
Backed out changeset 055dd1921e8e (bug 1022612)
Backed out changeset 42fa2c97e989 (bug 1022612)
Backed out changeset cd594236388f (bug 1022612)
Backed out changeset 9eadc5fee43d (bug 1022612)
Backed out changeset 5cc8d30ff7c9 (bug 1022612)
2014-07-17 11:24:47 -04:00
Carsten "Tomcat" Book
90cdb8090f
Backed out changeset 87ae841e4f92 (bug 1021564) for crashtest failures/assertions on a CLOSED TREE
2014-07-17 16:12:46 +02:00
Markus Stange
957c1797d3
Bug 1021564 - Invalidate filtered frames when they move in certain ways. r=roc
2014-07-17 14:58:24 +02:00
Robert O'Callahan
ca7cf8e3ba
Bug 1022612. Part 43: Fix up SuppressComponentAlpha to allow component alpha in inactive layers over opaque parts of the chrome window. r=mattwoodrow
...
--HG--
extra : rebase_source : b3c9dae42dac31e32623accb15750ed834e3e8ed
2014-07-15 16:23:37 +12:00
Robert O'Callahan
666d0f69a2
Bug 1022612. Part 42: Add opaque regions of ThebesLayer content to the "exclude glass" region. r=mattwoodrow
...
--HG--
extra : rebase_source : 26af2a0828f64ee9e1f481f59eba60055df4cbf2
2014-07-14 12:46:13 +12:00
Robert O'Callahan
72f7632627
Bug 1022612. Part 37: Remove aAllowVisibleRegionExpansion. r=mattwoodrow
...
This is no longer needed thanks to the readback simplification.
--HG--
extra : rebase_source : 5c288eec4f5af7b40e6e2545198000fb6e326c25
2014-06-23 16:24:51 +12:00
Robert O'Callahan
71a35072a2
Bug 1022612. Part 33: Remove InFixedPos code. r=mattwoodrow
...
This hasn't been used for a while I guess.
--HG--
extra : rebase_source : 2f1d090404040d53af34fdf129323f0ef725fc70
2014-06-23 16:24:14 +12:00
Robert O'Callahan
7abc34bc0f
Bug 1022612. Part 32: Remove nsDisplayItem::SetVisibleRegionOnLayer. r=mattwoodrow
...
It is no longer called because FrameLayerBuilder always sets the visible
regions on layers now.
--HG--
extra : rebase_source : e5a4d2985c055b3d53137e0bb4822961dbf57408
2014-06-23 16:24:14 +12:00
Robert O'Callahan
1c7e576bdb
Bug 1022612. Part 30: Expose IsConstructingScrollLayerForScrolledFrame and IsDisplayPortOpaque on nsDisplayScrollLayer. r=mattwoodrow
...
--HG--
extra : rebase_source : 0c93329b450dbf046a4a1a30cd32b1896f5b233f
2014-06-23 16:23:58 +12:00
Robert O'Callahan
a5f94f9666
Bug 1022612. Part 27: Make FrameLayerBuilder responsible for setting all layer visible regions. r=mattwoodrow
...
Calling Layer::SetVisibleRegion multiple times in a transaction can result in
unnecessary IPC traffic.
This patch removes Intersect(childGfxBounds). This is only needed to
restrict the visible region to something sane for 3D transforms, and this will
be fixed up in a later patch.
--HG--
extra : rebase_source : 5931e3462734983134193b766410593288afc296
2014-06-18 15:12:55 +12:00
Robert O'Callahan
147ce5c12a
Bug 1022612. Part 24: Simplify nsDisplayList::ComputeVisibilityForSublist now that FrameLayerBuilder does most of the work. r=mattwoodrow
...
--HG--
extra : rebase_source : be5f97d69f41cf00eaf02d0292d4630a8721952d
2014-06-09 16:48:02 +12:00
Robert O'Callahan
c680be18b6
Bug 1022612. Part 23: Remove nsDisplayItem::IsVaryingRelativeToMovingFrame. r=mattwoodrow
...
It's obsolete and no-one calls it.
--HG--
extra : rebase_source : 588144666e7abac06c19bfa5d1d3f41589bdd988
2014-06-09 16:48:02 +12:00
Robert O'Callahan
c4e7f391f8
Bug 1022612. Part 22: Add MOZ_COUNT_CTOR to nsDisplayWrapList. r=mattwoodrow
...
--HG--
extra : rebase_source : fd4ab8981669d3bf9e2c75d03e88590abb0c7ca1
2014-06-09 16:48:01 +12:00
Robert O'Callahan
8031d664e1
Bug 1022612. Part 21: Remove DidComputeVisibility checking. r=mattwoodrow
...
--HG--
extra : rebase_source : e0e13e5e6cc87fbc0d4f62e14465a813aa176094
2014-06-09 16:48:01 +12:00
Robert O'Callahan
d5174e2937
Bug 1022612. Part 20: Do the business. r=mattwoodrow
...
--HG--
extra : rebase_source : 48f0e2563f91351cac5ce1d3ed5e52364f24ccba
2014-06-09 16:48:01 +12:00
Robert O'Callahan
7929f2e6de
Bug 1022612. Part 15: Add nsDisplayItem::GetVisibleRectForChildren(). r=mattwoodrow
...
--HG--
extra : rebase_source : 79f4ee133e464d10c82efc78e42ea6dbcb2571c1
2014-07-15 23:47:46 +12:00
Robert O'Callahan
527a62cc6b
Bug 1022612. Part 14: Don't compute a final transparent region anymore. r=mattwoodrow
...
Computing this via FrameLayerBuilder is some work and we don't really have to.
SuppressComponentAlpha will be true in more cases. This will be OK as long as
text in the chrome window is over opaque content in the same ThebesLayer. We
will miss some edge cases such as text in 'opacity' with no opaque background.
This should be OK.
--HG--
extra : rebase_source : 8ac6abb8f6b3ab078883935688ae1f5059b797c7
2014-06-09 16:48:00 +12:00
Robert O'Callahan
2d1cc777ee
Bug 1022612. Part 13: Set mDidComputeVisibility in ProcessDisplayItems. r=mattwoodrow
...
--HG--
extra : rebase_source : 456aaeba5a9bb3e8d34e0d900dd693f337cf2b12
2014-07-07 17:46:28 +12:00
Robert O'Callahan
4c7064adf3
Bug 1022612. Part 11: Set opaque flag on nsDisplayList if we find an opaque item that covers the whole list. r=mattwoodrow
...
This is less general than what nsDisplayItem::ComputeVisibility does. This means
if multiple opaque items together cover the list bounds, but not individually,
we won't mark the list as opaque. I think that should be OK.
--HG--
extra : rebase_source : 26e5e44fa90000089f1dc64c1cb073d5b1806765
2014-06-09 16:48:00 +12:00
Robert O'Callahan
d143dbdffc
Bug 1022612. Part 10: Implement merging and flattening in ProcessDisplayItems. r=mattwoodrow
...
BuildContainerLayerFor now has to be able to mutate the passed-in display item
list.
--HG--
extra : rebase_source : c242006445d90372f6c7941d909f30945422321b
2014-06-09 16:48:00 +12:00