Robert O'Callahan
21b91ec109
Bug 1022612. Part 42: Add opaque regions of ThebesLayer content to the "exclude glass" region. r=mattwoodrow
2014-07-14 12:46:13 +12:00
Robert O'Callahan
aa0649262d
Bug 1022612. Part 41: Use itemType instead of calling GetType() again. r=mattwoodrow
2014-07-11 13:18:10 +12:00
Robert O'Callahan
d26d89d408
Bug 1022612. Part 40: Restrict visible rect of 3D-transformed layers before converting to nsIntRect. r=mattwoodrow
2014-07-11 13:17:47 +12:00
Robert O'Callahan
c40683e83e
Bug 1022612. Part 34: Skip RecomputeVisibilityForItems in inactive layers. r=mattwoodrow
...
RecomputeVisibilityForItems for the retained ThebesLayer already recomputes
visibility for all items in that layer, including items nested in other items.
2014-06-23 16:24:14 +12:00
Robert O'Callahan
c3ca54a25d
Bug 1022612. Part 31: Perform layer-level occlusion culling in FrameLayerBuilder. r=mattwoodrow
...
We need this to avoid constructing and painting unncecessarily large
ThebesLayers.
2014-06-23 16:24:00 +12:00
Robert O'Callahan
686672cfd0
Bug 1022612. Part 28: Make nsLayoutUtils::GetScrollableFrameFor return null for non-scrolled-frames. r=mattwoodrow
2014-07-09 10:12:41 +12:00
Robert O'Callahan
89460546b7
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.
2014-06-18 15:12:55 +12:00
Robert O'Callahan
f2d23aeeea
Bug 1022612. Part 21: Remove DidComputeVisibility checking. r=mattwoodrow
2014-06-09 16:48:01 +12:00
Robert O'Callahan
9e2dab2fef
Bug 1022612. Part 20: Do the business. r=mattwoodrow
2014-06-09 16:48:01 +12:00
Robert O'Callahan
dee0cd4561
Bug 1022612. Part 15.5: Use GetVisibleRectForChildren instead of GetVisibleRect. r=mattwoodrow
2014-07-15 23:49:38 +12:00
Robert O'Callahan
2e0072cfe2
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.
2014-06-09 16:48:00 +12:00
Robert O'Callahan
e4425f16a2
Bug 1022612. Part 13: Set mDidComputeVisibility in ProcessDisplayItems. r=mattwoodrow
2014-07-07 17:46:28 +12:00
Robert O'Callahan
c44679289c
Bug 1022612. Part 12: Propagate NeedsTransparentSurface in ProcessDisplayItems. r=mattwoodrow
2014-06-09 16:48:00 +12:00
Robert O'Callahan
16c125cbdd
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.
2014-06-09 16:48:00 +12:00
Robert O'Callahan
a521d8328a
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.
2014-06-09 16:48:00 +12:00
Matt Woodrow
1fdc226af0
Bug 1039145 - Part 1: Clean up AreComponentAlphaLayersEnabled. r=roc
2014-07-18 18:48:23 +12:00
Matt Woodrow
48effa20b5
Bug 1023677 - Don't flatten active transform layers. r=roc
2014-07-18 18:48:23 +12:00
Matt Woodrow
a95a955d3d
Bug 1023677 - Don't set mSupportComponentAlphaChildren unless we actually have them. r=roc
2014-07-18 18:48:23 +12:00
Matt Woodrow
7c92e0ade7
Bug 1023677 - Don't repeat layer building if there was only a single layer. r=roc
2014-07-18 18:48:22 +12:00
Carsten "Tomcat" Book
d10cdacc30
Backed out changeset 3c5f96882e6c (bug 1023677)
2014-07-18 10:45:29 +02:00
Carsten "Tomcat" Book
ae03105a25
Backed out changeset 84df2aaf5e2a (bug 1023677)
2014-07-18 10:45:27 +02:00
Carsten "Tomcat" Book
081b71c63e
Backed out changeset d03cb12a166e (bug 1023677)
2014-07-18 10:45:26 +02:00
Carsten "Tomcat" Book
52a205ef04
Backed out changeset b049e0ae4d1d (bug 1039145)
2014-07-18 10:45:24 +02:00
Matt Woodrow
741db2aed5
Bug 1039145 - Part 1: Clean up AreComponentAlphaLayersEnabled. r=roc
2014-07-18 18:48:23 +12:00
Matt Woodrow
30ffd467c5
Bug 1023677 - Don't flatten active transform layers. r=roc
2014-07-18 18:48:23 +12:00
Matt Woodrow
d311dedd78
Bug 1023677 - Don't set mSupportComponentAlphaChildren unless we actually have them. r=roc
2014-07-18 18:48:23 +12:00
Matt Woodrow
9fde888037
Bug 1023677 - Don't repeat layer building if there was only a single layer. r=roc
2014-07-18 18:48:22 +12:00
Ryan VanderMeulen
c55b45acd3
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
Robert O'Callahan
6549ff77c2
Bug 1022612. Part 45: Increase region complexity limit for mDrawAboveRegion/mVisibleAboveRegion to fix scroll-rounding.html test failure. r=mattwoodrow
2014-07-17 15:41:06 +12:00
Robert O'Callahan
af19be11bf
Bug 1022612. Part 43: Fix up SuppressComponentAlpha to allow component alpha in inactive layers over opaque parts of the chrome window. r=mattwoodrow
2014-07-15 16:23:37 +12:00
Robert O'Callahan
83a6deb536
Bug 1022612. Part 42: Add opaque regions of ThebesLayer content to the "exclude glass" region. r=mattwoodrow
2014-07-14 12:46:13 +12:00
Robert O'Callahan
9d764909a5
Bug 1022612. Part 41: Use itemType instead of calling GetType() again. r=mattwoodrow
2014-07-11 13:18:10 +12:00
Robert O'Callahan
a00f1820c8
Bug 1022612. Part 40: Restrict visible rect of 3D-transformed layers before converting to nsIntRect. r=mattwoodrow
2014-07-11 13:17:47 +12:00
Robert O'Callahan
7d68b653f0
Bug 1022612. Part 34: Skip RecomputeVisibilityForItems in inactive layers. r=mattwoodrow
...
RecomputeVisibilityForItems for the retained ThebesLayer already recomputes
visibility for all items in that layer, including items nested in other items.
2014-06-23 16:24:14 +12:00
Robert O'Callahan
b84a327b96
Bug 1022612. Part 31: Perform layer-level occlusion culling in FrameLayerBuilder. r=mattwoodrow
...
We need this to avoid constructing and painting unncecessarily large
ThebesLayers.
2014-06-23 16:24:00 +12:00
Robert O'Callahan
021e41bf3f
Bug 1022612. Part 28: Make nsLayoutUtils::GetScrollableFrameFor return null for non-scrolled-frames. r=mattwoodrow
2014-07-09 10:12:41 +12:00
Robert O'Callahan
000604a34b
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.
2014-06-18 15:12:55 +12:00
Robert O'Callahan
f38b84a210
Bug 1022612. Part 21: Remove DidComputeVisibility checking. r=mattwoodrow
2014-06-09 16:48:01 +12:00
Robert O'Callahan
b041721ef9
Bug 1022612. Part 20: Do the business. r=mattwoodrow
2014-06-09 16:48:01 +12:00
Robert O'Callahan
fe6256f5a1
Bug 1022612. Part 15.5: Use GetVisibleRectForChildren instead of GetVisibleRect. r=mattwoodrow
2014-07-15 23:49:38 +12:00
Robert O'Callahan
52635b7c62
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.
2014-06-09 16:48:00 +12:00
Robert O'Callahan
5aa84fc0a0
Bug 1022612. Part 13: Set mDidComputeVisibility in ProcessDisplayItems. r=mattwoodrow
2014-07-07 17:46:28 +12:00
Robert O'Callahan
073fce9b6a
Bug 1022612. Part 12: Propagate NeedsTransparentSurface in ProcessDisplayItems. r=mattwoodrow
2014-06-09 16:48:00 +12:00
Robert O'Callahan
575e2220e8
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.
2014-06-09 16:48:00 +12:00
Robert O'Callahan
49f0e4c35d
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.
2014-06-09 16:48:00 +12:00
Carsten "Tomcat" Book
afb56000fb
Backed out changeset 3bf33a32bfe0 (bug 1022612)
2014-07-15 10:30:38 +02:00
Carsten "Tomcat" Book
1aa958d3bb
Backed out changeset 75fffcce9c4d (bug 1022612)
2014-07-15 10:30:36 +02:00
Carsten "Tomcat" Book
aeb4446778
Backed out changeset cc140abf7b17 (bug 1022612)
2014-07-15 10:30:35 +02:00
Carsten "Tomcat" Book
8a1801c435
Backed out changeset 121bf69509b1 (bug 1022612)
2014-07-15 10:30:33 +02:00
Carsten "Tomcat" Book
8cbe0173e7
Backed out changeset e95971991caa (bug 1022612)
2014-07-15 10:30:32 +02:00