David Zbarsky
205b93ba09
Bug 1060165: Remove gfxPoint3D r=nical
2014-08-29 14:47:30 -04:00
Trevor Saunders
fd5e9d1fcc
bug 1047696 - mark a number of classes MOZ_FINAL to get compilers to devirtualize more r=froydnj
2014-08-05 13:33:55 -04:00
Matt Woodrow
c2d79a26ff
Bug 1056427 - Stop PRenderFrame from managing PLayerTransaction since it hasn't worked since the layers refactoring. r=roc
...
--HG--
extra : rebase_source : 38c86648bb8e59a6b992bd377acb9aacb418c98b
2014-08-22 12:16:44 +12:00
Markus Stange
5a3e2e40cf
Bug 1055585 - Make nsDisplayClearBackground force drawing into a transparent surface. r=roc
2014-08-20 17:24:39 +02:00
Markus Stange
e7720a7604
Bug 1055585 - Add nsDisplayClearBackground. r=roc
2014-08-20 17:16:41 +02:00
Robert O'Callahan
a1480fca87
Bug 1048752. Part 19: Create nsCaret::GetPaintGeometry to call during painting. r=tn
...
This is the start of the changes to caret-drawing proper.
The idea is to combine GetCaretFrame and GetCaretRect into a method
GetPaintGeometry which looks like GetGeometry but returns values
needed for painting (i.e. including bidi decorations, and returning
a null frame if we're not supposed to paint due to specific caret
state, e.g. in the "off" phase of the blink cycle).
Mostly a straightforward refactoring but there are a few interesting changes:
-- nsDisplayCaret stores its bounds instead of getting them from nsCaret on
demand. Eventually those bounds will not be stored in nsCaret at all.
-- nsDisplayCaret::GetBounds returns true for aSnap. nsCaret draws snapped
rects, so why not.
-- I removed "if (caretRect.Intersects(aDirtyRect))" in EnterPresShell.
As far as I can tell, this check is incorrect because it doesn't take
transforms into account. Since there's at most one drawn caret per window,
hence we do this at most once per paint, I don't think there's any real
performance advantage to having this check.
--HG--
extra : rebase_source : c98d3a5994478b482d19cc2e2ac83ab51bd17e00
2014-08-06 17:19:28 +12:00
Robert O'Callahan
075f97aa37
Bug 1048752. Part 11: Remove nsLayoutUtils.h from nsDisplayList.h. r=tn
...
--HG--
extra : rebase_source : 02251076442a5c4251e8d9484cb428a4c07f3a13
2014-08-06 17:19:25 +12:00
Robert O'Callahan
0de1b9e514
Bug 1048752. Part 10: Remove FrameLayerBuilder.h from nsDisplayList.h. r=tn
...
I was inspired by the previous patch to remove FrameLayerBuilder.h from
nsDisplayList.h too.
--HG--
extra : rebase_source : b34a01bea5865da4737817e2396b98d54cc6d1bf
2014-08-06 17:19:25 +12:00
Robert O'Callahan
b8bd1730f3
Bug 1048752. Part 9: Remove nsCaret.h from nsDisplayList.h. r=tn
...
I got tired of slow build turnarounds every time I modified nsCaret.h.
--HG--
extra : rebase_source : 0c4598c4881ab8de0a636b08c70fb801bb912247
2014-08-06 17:19:25 +12:00
Timothy Nikkel
810c40617a
Bug 1051097. Set the initial visible rect correctly on the wrap list item stored inside transform display items. r=roc
2014-08-10 21:59:02 -05:00
Timothy Nikkel
fb63d1472a
Bug 1042772. Update the reference frame and current frame offset when moving to outside a transform so that we can use the correct offset to compute the initial visible rect for wrap list display items. r=roc
...
* * *
The current reference frame is still the same as our reference frame because we set and restore it in nsFrame::BuildDisplayListForChild before this. So we need to actually compute it.
2014-08-07 11:33:18 -05:00
Ehsan Akhgari
2b84010cb8
Bug 1048246
- Fix more bad implicit constructors in layout; r=roc
...
--HG--
extra : rebase_source : ed828993139bc70232508364a9f046e38b7d3e06
2014-08-07 19:48:38 -04:00
Matt Woodrow
cfce6663f6
Bug 1045864 - Disable layerized background-attachment:fixed when we're using a software compositor. r=roc
2014-08-05 15:25:00 +12:00
David Zbarsky
1c4b5d248a
Bug 952977: More gfx::Matrix cleanup in nsDisplayTransform r=nical
2014-08-01 08:31:48 -04:00
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