Commit Graph

604 Commits

Author SHA1 Message Date
Carsten "Tomcat" Book
23334cced9 Backed out changeset 5ebd2f6b65a6 (bug 1022612) 2014-07-15 10:30:41 +02:00
Carsten "Tomcat" Book
4fc2a6fcb3 Backed out changeset 3bf33a32bfe0 (bug 1022612) 2014-07-15 10:30:38 +02:00
Carsten "Tomcat" Book
3cf75ddd59 Backed out changeset 75fffcce9c4d (bug 1022612) 2014-07-15 10:30:36 +02:00
Carsten "Tomcat" Book
d758f9c681 Backed out changeset 121bf69509b1 (bug 1022612) 2014-07-15 10:30:33 +02:00
Carsten "Tomcat" Book
029b32a486 Backed out changeset e95971991caa (bug 1022612) 2014-07-15 10:30:32 +02:00
Carsten "Tomcat" Book
795c1dd368 Backed out changeset 032ba47c6684 (bug 1022612) 2014-07-15 10:30:21 +02:00
Carsten "Tomcat" Book
eab891583c Backed out changeset c081917e5626 (bug 1022612) 2014-07-15 10:30:19 +02:00
Carsten "Tomcat" Book
e53aa45084 Backed out changeset f67228df9ae0 (bug 1022612) 2014-07-15 10:30:18 +02:00
Carsten "Tomcat" Book
e48a8d7347 Backed out changeset f5ec6bcf251f (bug 1022612) 2014-07-15 10:30:16 +02:00
Carsten "Tomcat" Book
f12cd5f28f Backed out changeset f89950384bf2 (bug 1022612) 2014-07-15 10:30:13 +02:00
Carsten "Tomcat" Book
4681a11b43 Backed out changeset f9564f9f4648 (bug 1022612) 2014-07-15 10:30:11 +02:00
Carsten "Tomcat" Book
6622b23ead Backed out changeset 233345d8ffc6 (bug 1022612) 2014-07-15 10:30:06 +02:00
Carsten "Tomcat" Book
3288f22940 Backed out changeset 21d141d01c97 (bug 1022612) 2014-07-15 10:30:03 +02:00
Carsten "Tomcat" Book
4dafc50d79 Backed out changeset 7e9751c1302a (bug 1022612) 2014-07-15 10:30:01 +02:00
Carsten "Tomcat" Book
b21012d2de Backed out changeset 3de27f6dcd31 (bug 1022612) 2014-07-15 10:29:55 +02:00
Carsten "Tomcat" Book
abd220850c Backed out changeset f12d7d68b685 (bug 1022612) 2014-07-15 10:29:48 +02:00
Carsten "Tomcat" Book
75f0b66945 Backed out changeset cc1776b2606d (bug 1022612) 2014-07-15 10:29:46 +02:00
Robert O'Callahan
216105530b 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 : a15fb640c4fe7917321bcea5cdf2dc5e6087a140
2014-07-15 16:23:37 +12:00
Robert O'Callahan
d3e59dec22 Bug 1022612. Part 42: Add opaque regions of ThebesLayer content to the "exclude glass" region. r=mattwoodrow
--HG--
extra : rebase_source : 2b429e274ec49b5310e69bad65ae9a399dba514a
2014-07-14 12:46:13 +12:00
Robert O'Callahan
46c2b20d44 Bug 1022612. Part 37: Remove aAllowVisibleRegionExpansion. r=mattwoodrow
This is no longer needed thanks to the readback simplification.

--HG--
extra : rebase_source : 6dad4c34681c478f9d4bf4829723ff9542b9d083
2014-06-23 16:24:51 +12:00
Robert O'Callahan
435bb6a055 Bug 1022612. Part 33: Remove InFixedPos code. r=mattwoodrow
This hasn't been used for a while I guess.

--HG--
extra : rebase_source : 8087253453b58dc4ea52a040341ced4638ffd0a7
2014-06-23 16:24:14 +12:00
Robert O'Callahan
fd35d10211 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 : 6157f9e4a6822598242f6fc9c0abaf07258613d6
2014-06-23 16:24:14 +12:00
Robert O'Callahan
07591874be Bug 1022612. Part 30: Expose IsConstructingScrollLayerForScrolledFrame and IsDisplayPortOpaque on nsDisplayScrollLayer. r=mattwoodrow
--HG--
extra : rebase_source : 0eddaa98dae6ba5e5b15b818716bafd1811f16db
2014-06-23 16:23:58 +12:00
Robert O'Callahan
a8a94867f0 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 : dc1eaa8079f61648c24ac9502e837ac9f2630730
2014-06-18 15:12:55 +12:00
Robert O'Callahan
59e39bc3ce Bug 1022612. Part 26: nsDisplayList::mVisibleRect is no longer used. r=mattwoodrow
--HG--
extra : rebase_source : c5e3161afc622a1c297e9033593c0e7eac111f7d
2014-06-12 00:09:13 +12:00
Robert O'Callahan
775fd8f7d9 Bug 1022612. Part 24: Simplify nsDisplayList::ComputeVisibilityForSublist now that FrameLayerBuilder does most of the work. r=mattwoodrow
--HG--
extra : rebase_source : 566019828bc5c021e15bb148accc4262c69232e1
2014-06-09 16:48:02 +12:00
Robert O'Callahan
0fad4d82d8 Bug 1022612. Part 23: Remove nsDisplayItem::IsVaryingRelativeToMovingFrame. r=mattwoodrow
It's obsolete and no-one calls it.

--HG--
extra : rebase_source : c9f65e4a062a4cc641de201c40b7755706a1afca
2014-06-09 16:48:02 +12:00
Robert O'Callahan
48eca50d7e Bug 1022612. Part 22: Add MOZ_COUNT_CTOR to nsDisplayWrapList. r=mattwoodrow
--HG--
extra : rebase_source : 40d1dcc98c182d175cddff8fadf0084ad2f831a9
2014-06-09 16:48:01 +12:00
Robert O'Callahan
f59ff43d93 Bug 1022612. Part 21: Remove DidComputeVisibility checking. r=mattwoodrow
--HG--
extra : rebase_source : dc32021b0ba919d68a93f555cc8430e1d0a741a4
2014-06-09 16:48:01 +12:00
Robert O'Callahan
e4542f2a87 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 : dc8bbdd564cc99df1286921e59642648779b9c4a
2014-06-09 16:48:00 +12:00
Robert O'Callahan
958eac2c9b Bug 1022612. Part 13: Set mDidComputeVisibility in ProcessDisplayItems. r=mattwoodrow
--HG--
extra : rebase_source : c1a929e549c437388aa308b3dfda68b923eb0236
2014-07-07 17:46:28 +12:00
Robert O'Callahan
394c554597 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 : 43dced732123617f85f360d13861b01d70fddef5
2014-06-09 16:48:00 +12:00
Robert O'Callahan
7ec8598426 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 : 6a9727998a5ffb01896a4a2bbdd8d30a24c89dcd
2014-06-09 16:48:00 +12:00
Robert O'Callahan
74fa42385b 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 : d6343f0a7cb26f9848c2d2b8d46bb1787d3ae632
2014-06-09 16:47:59 +12:00
Robert O'Callahan
664f39225d 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 : 23fb5aefd5de004ca89037724aff7b34e1a5864e
2014-06-09 16:47:59 +12:00
Robert O'Callahan
f0eb2a246f 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 : 1ba0444270986dd799a27e4373ca16525f3ced6c
2014-05-20 15:59:14 +12:00
Robert O'Callahan
46963f0a77 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 : 78a1f6886828d88d1a9d4e96d36d86846ebb845f
2014-05-20 15:49:54 +12:00
Robert O'Callahan
18b43e922a Bug 1022612. Part 2: Remove unused nsDisplayWrapList constructor. r=mattwoodrow
--HG--
extra : rebase_source : df4241bf3f2a646b45c8653c0e36f9eea1cf823e
2014-05-20 15:08:20 +12:00
Robert O'Callahan
ca0ac51233 Bug 1022612. Part 1: Always pass a frame to AutoBuildingDisplayList. r=mattwoodrow
--HG--
extra : rebase_source : c76f7af7e65a4e98dc3ee0a8309d0c05e02cf82e
2014-05-20 15:08:18 +12:00
Benoit Girard
2175dbff83 Bug 1024148 - Part 2: Merge nsDisplayOpacity into nsDisplayBackgroundColor. r=mattwoodrow
--HG--
extra : rebase_source : c48cc799414ff83b74caff8df5503a743dbf74b1
2014-06-14 11:10:45 -04:00
Benoit Girard
8147665edf Bug 1024148 - Part 1: Merge nsDisplayOpacity items together. r=mattwoodrow
--HG--
extra : rebase_source : f461cb97357c854db22122b40777358a17f736ec
2014-06-12 11:34:35 -04:00
Markus Stange
9da2196479 Bug 1013392 - Put APZ scrollbar annotations on the scrollbar thumb. r=roc 2014-06-04 14:44:26 +02:00
Markus Stange
598c605e7d Bug 1018464 - Add nsDisplayItem::IsInvisibleInRect API to expose holes in display items. r=roc
--HG--
extra : rebase_source : 9f362283113c0ce925ca81c3613ac8c6d19dfebe
2014-06-03 14:48:16 +02:00
Mats Palmgren
ac5e91a762 Bug 508665 - part 1, Change the signature of SetParent/GetParent from nsIFrame* to nsContainerFrame*. r=roc 2014-05-24 22:20:39 +00:00
Matt Woodrow
73814d43f9 Bug 1013771 - Dump nsDisplayTransform transforms during display list dumping. r=roc 2014-05-22 14:36:26 +12:00
Wes Kocher
391727c7ba Backed out changeset 91d280c835b2 (bug 1013771) for b2g osx build bustage 2014-05-21 20:00:33 -07:00
Matt Woodrow
212cd95ad4 Bug 1013771 - Dump nsDisplayTransform transforms during display list dumping. r=roc 2014-05-22 14:36:26 +12:00
Markus Stange
8a8718475b Bug 1008915 - Reorder origin translations in order to avoid variations caused by insufficient floating point precision. r=mattwoodrow 2014-05-13 13:37:55 +02:00
Matt Woodrow
5329b64309 Bug 950312 - Part 4: Create active layers for nsDisplayMixBlendMode and nsDisplayBlendContainer if the layer manager supports all contained blend mode. r=roc 2014-05-09 21:49:27 +12:00
Kartikaya Gupta
c4ff39d0ca Bug 984460 - Fill in a missing piece of code to compute the right dirty rect in the face of CSS transforms. r=mattwoodrow 2014-04-23 09:26:52 -04:00
Robert O'Callahan
e5b74e7c9c Bug 972713. Part 1: Make all callers of GetAnimatedGeometryRootFor pass a display item so we can stop searching when we reach the item's reference frame. r=mattwoodrow
This guarantees that the animated geometry root for an item is always in the
same display list coordinate system as the frame.

--HG--
extra : rebase_source : 974434342459b76d62d89fdc04c22c518bf0c58b
2014-02-18 14:26:57 +13:00
Kartikaya Gupta
ab6d729aae Bug 982888 - Populate the scroll parent field as appropriate. r= 2014-04-11 19:39:22 -04:00
Botond Ballo
05a2f728cf Bug 982141 - Make sure the primary async-scrollable frame has a displayport set. r=tn
--HG--
extra : rebase_source : 6ceb20abb14f3e829ea06c3b3b911455cff9db23
2014-03-19 13:29:24 -04:00
Ryan VanderMeulen
2bf6dfd88c Backed out 6 changesets (bug 982141) for Windows and OSX bustage. CLOSED TREE
Backed out changeset 16540ab2d2cb (bug 982141)
Backed out changeset 2ad9ce9d904e (bug 982141)
Backed out changeset af219bb49c06 (bug 982141)
Backed out changeset ffe51d96e86e (bug 982141)
Backed out changeset 6642718ad3bb (bug 982141)
Backed out changeset 95b341d26f7b (bug 982141)
2014-04-10 15:27:42 -04:00
Botond Ballo
c3e7091b0a Bug 982141 - Make sure the primary async-scrollable frame has a displayport set. r=tn
--HG--
extra : rebase_source : cecfe35b5407d6bbe1709eb0a2abf55ab8503c2d
2014-03-19 13:29:24 -04:00
Matt Woodrow
761f4b0fbe Bug 991046 - Combine the display item clips when we flatten an nsDisplayOpacity. r=roc 2014-04-09 14:28:38 +12:00
Timothy Nikkel
fa25b28ebf Bug 874950. Record on display items if they are inside a fixed position subtree. r=roc 2014-03-20 18:23:16 -05:00
Markus Stange
178e89ae41 Bug 926292 - Put overlay scrollbars on top of the topmost positioned descendant of the scrolled frame. r=mats 2014-03-20 10:12:46 +08:00
Chris Lord
f641bc93ff Bug 874950 - Don't let fixed position content occlude displayports. r=tn
Don't let opaque fixed position items occlude display items that are in
display ports and thus may be asynchronously scrolled.
2014-03-17 23:39:59 +00:00
Matt Woodrow
007105ff82 Bug 982812 - Use UpdateThemeGeometry for windows region clearing. r=mstange 2014-03-17 16:42:48 +08:00
Matt Woodrow
e638200a0e 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
Mike Conley
4611b5bdb4 Backing out bug 940455 (36e45a68452b) for numerous regressions. r=bustage-fix. 2014-03-07 16:50:30 -05:00
Matt Woodrow
cf2d089996 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
L. David Baron
6a0c7b3f88 Bug 828173 patch 4: Expose AddAnimationsAndTransitionsToLayer and allow it to be called from style change handling. r=mattwoodrow 2014-03-04 20:13:21 -08:00
James Kitchener
ed09b3f79b Bug 975935 - nsDisplaymtdBorder needs to override GetBounds. r=bz 2014-03-03 10:37:08 -05:00
Timothy Nikkel
6bbec0c664 Bug 978542. If paint dumping is enabled at build time also enable frame dumping so we can get frame names in display list dumps. r=mattwoodrow
Also makes DidComputeVisibility available during non-debug painting so we can use it.
2014-03-02 16:22:29 -06:00
Timothy Nikkel
c98b478ef2 Bug 959847. Part 10. Implement GetBounds, GetOpaqueRegion, and ShouldBuildLayerEvenIfInvisible for nsDisplaySubDocument items that are being used as scrollable layers like scroll layer items. r=roc 2014-02-27 16:01:54 -06:00
Timothy Nikkel
7c6fe99703 Bug 959847. Part 9. Subdocument items for subdocuments that have displayports need to expand the visibility region. r=roc 2014-02-27 16:01:54 -06:00
Timothy Nikkel
5d30b2243f 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
Timothy Nikkel
b2fdd6bcf1 Bug 959847. Part 4. Call RecordFrameMetrics for subdocument layers. r=roc
We do this by creating a new display item type: nsDisplaySubDocument.

Original patch by Kartikaya Gupta <kgupta@mozilla.com>.
2014-02-27 16:01:53 -06:00
Matt Woodrow
5c0203ae3f Bug 968555 - Don't create a stacking context for backface-visibility:hidden. r=dbaron 2014-02-27 15:57:45 +13:00
Timothy Nikkel
26cf62ec1a Bug 976370. Move overlay scrollbar display items above scroll layer items for the same scroll frame. r=roc
This has two desirable side effects. The first and more important is that it prevents a scrollbar item from sitting between scroll layer items and preventing them from merging into one and thus preventing the creation of an async scrollable layer. The second is that scrollbars should be on top of the content they are scrolling in general, and this will make that happen in more cases.
2014-02-24 23:42:11 -06:00
Arnaud Sourioux
1d21dd1816 Bug 974687 - Part 2: Fix more than 80cols issues caused by MOZ_OVERRIDE annotation. r=dholbert 2014-02-24 09:41:56 -05:00
Arnaud Sourioux
bea44014b1 Bug 974687 - Part 1: Add about 300 MOZ_OVERRIDE in layout/. r=dholbert 2014-02-24 09:41:56 -05:00
Robert O'Callahan
cdf3eb974c 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
Robert O'Callahan
b8b97141df Backing out patches for bug 972713 (changesets b5486b9ed88c and 7829e535cdd7) due to Windows 8 test failure. 2014-02-18 22:48:18 +13:00
Robert O'Callahan
b4cf7258be Bug 972713. Part 1: Make all callers of GetAnimatedGeometryRootFor pass a display item so we can stop searching when we reach the item's reference frame. r=mattwoodrow
This guarantees that the animated geometry root for an item is always in the
same display list coordinate system as the frame.

--HG--
extra : rebase_source : 249fd847a2c08f8d0846d698cce9dd4681e38a98
2014-02-18 14:26:57 +13:00
Timothy Nikkel
ea9c6493ec Bug 966510. Scroll frame display items are never opaque. r=roc
The content they contain may be moved, so any region that is opaquely covered at paint time may not be later.

This problem was made worse by bug 951467 because it made the bounds of the scroll layer item be the bounds of the scrollport is all cases (making it return wrong results even at paint time), instead of the bounds of the contained content (meaning the results would only be wrong after async scroll).
2014-02-10 04:56:30 -06:00
Timothy Nikkel
32cb74e6ed Bug 962791. Fail to create a scrollable layer if it would cause incorrect clipping of absolutely position items. r=roc
We incorrectly wrap abs pos items, but not wrapping them leads to too many sites failing to create scrollable layers that we can't do that. So instead just fix the clipping issue for now until a more robust solution can be developed.
2014-02-03 23:16:20 -06:00
Matt Woodrow
21451501e0 Bug 952011 - Use Untransform API to safetly untransform points when we have a projective matrix. r=roc 2014-02-04 12:25:23 +13:00
Matt Woodrow
d9d558f8f0 Bug 952011 - Remove some nsLayoutUtils transform functions that are no longer needed. r=roc 2014-02-04 12:25:22 +13:00
Robert O'Callahan
a6d3b2e9c0 Bug 946502. Part 4: Remove mStickyPosFrame. r=mattwoodrow
--HG--
extra : rebase_source : 71bcbd246cf6806196a3e64d32fdde169bddfa07
2014-01-04 18:14:27 +13:00
Robert O'Callahan
3ffa57cf68 Bug 946502. Part 2: Remove unimplemented, unused function. r=mattwoodrow
--HG--
extra : rebase_source : fbc4a398d1554ffc668a18bd667b6b90fdace15f
2013-12-18 00:19:31 +13:00
Matt Woodrow
eec83a3058 Bug 946952 - Run a 'compressed' paint up to 1 second after skipping the ColorLayer optimization. r=roc 2014-01-30 18:41:17 +13:00
Timothy Nikkel
d5eb33d7d0 Bug 962505. Put the scroll frame and the scrolled frame in the display list dump for scroll layer items. r=mats 2014-01-26 16:09:06 -06:00
Timothy Nikkel
05195514d5 Bug 962505. When dumping display lists print the entire line at once so it works better with Fennec and b2g. r=mats 2014-01-26 16:07:08 -06:00
Timothy Nikkel
491cf736ad Bug 931028. Remove app units per pixel argument from nsDisplayTransform::GetTransform. r=mattwoodrow
All callers were using, and should only be using, the same value.
2014-01-20 00:56:55 -06:00
Robert O'Callahan
ddd88c039d Bug 945203. Part 4: Add nsDisplayEventRegions and build it when painting. r=mats
--HG--
extra : rebase_source : 26b71b6a18681e8fc48c6082c8df6263c1bd3739
2013-12-17 00:22:11 +13:00
Robert O'Callahan
aeb166a207 Bug 950427. Don't descend into subdocuments at all in elementFromPoint. r=mats
--HG--
extra : rebase_source : 59ce23c3ab81afc624921e4543fe48dd7ae47ce2
2013-12-18 18:37:24 +13:00
Phil Ringnalda
47bb18469f Back out f55504b0184f (bug 950427) for mochitest-4 and mochitest-oth bustage (at least)
CLOSED TREE
2013-12-17 23:22:20 -08:00
Robert O'Callahan
9454d623f6 Bug 950427. Don't descend into subdocuments at all in elementFromPoint. r=mats 2013-12-18 18:37:24 +13:00
Timothy Nikkel
a969eaf546 Bug 951467. Give scroll layer items the bounds of the scroll port, not the bounds of the display port. r=roc
The bounds of the scroll port match what will actually be drawn on the screen.

The bounds of the contained content (sized to the display port) are still accessible via mList.GetBounds, and similarly the visible rect of the contained content is mList.GetVisibleRect. The external bounds/visible rect are GetBounds and GetVisibleRect on the nsDisplayScrollLayer object itself.

We implement nsDisplayScrollInfoLayer::GetBounds solely so that it continues to return an empty rect because we expect active empty layers to have empty visible rects.

We no longer have to set our mVisibleRect in nsDisplayScrollLayer::ComputeVisibility because nsDisplayList::ComputeVisibilityForSublist now does it correctly for us (like other items).

We also have to teach ContainerState::ProcessDisplayItems to not set the visible region for scroll layers because it has the external visible region, not the larger internal display port sized visible region. We instead let BuildContainerLayer set the visible region of the layer.
2013-12-17 23:02:56 -06:00
Chris Lord
7977706b6f Bug 936500 - Always build layers for nsDisplayScrollLayer. r=tn
APZC information is associated with layers, and having those layers suddenly
disappear because they became occluded, or their displayports are off-screen
has undesired effects.
2013-12-13 19:37:34 +00:00
Cameron McCormack
6f8dcf77b4 Bug 773296 - Part 16: Add a ref-counted list nsCSSValue unit and use it for tranform lists; hold a strong reference to one on nsStyleDisplay. r=dbaron
This adds a new eCSSUnit_SharedList type for nsCSSValue, which is a
reference counted object that contains an nsCSSValueList.  We need this
so that nsStyleDisplay::mSpecifiedTransform can hold a strong reference
to a specified transform list value.  When 'transform' is specified
using a variable reference, the resulting nsCSSValue does not stick
around in the Declaration object, so we wouldn't be guaranteed that
it lives long enough for nsStyleDisplay to keep referencing it.
2013-12-12 13:09:44 +11:00
Kartikaya Gupta
1af8763544 Bug 814435 - Annotate layers for scrollbars as such. r=tn, BenWa 2013-12-09 22:14:53 -05:00
Nicholas Cameron
792ecf9509 Bug 943110. Don't use fputc in display list/layers dumps. r=BenWa 2013-11-26 15:07:41 +13:00
Matt Woodrow
0cc69e6803 Bug 941559 - Invalidate nsDislaySolidColor display items when their color changes. r=roc 2013-11-25 14:59:00 +13:00
Benoit Girard
f8fd653be7 Bug 942483 - Port paint-dumping to android/b2g. r=gal 2013-11-23 17:44:18 -05:00
Matt Woodrow
4122bef511 Bug 939607 - Part 3: Try fold nsDisplayOpacity items opacity value into their children. r=roc 2013-11-18 22:32:09 +13:00
Matt Woodrow
7bb2bbae86 Bug 939607 - Part 2: Add an API for storing an opacity on a display item, and implement it for nsDisplayBoxShadowOuter. r=roc 2013-11-18 22:32:09 +13:00
Robert O'Callahan
d1b9afa1b6 Bug 919144. Part 10: Fold nsDisplayFixedPosition into nsDisplayStickyPosition. r=mattwoodrow
--HG--
extra : rebase_source : 597e2a178762509421a32d53be6242cd588c7995
2013-09-27 18:02:03 +12:00
Robert O'Callahan
ac362be738 Bug 919144. Part 9: Move FrameLayerBuilder::ContainerParameters to mozilla::ContainerLayerParameters. r=mattwoodrow
This is to avoid having to #include FrameLayerBuilder.h in nsLayoutUtils.h in the next patch.

--HG--
extra : rebase_source : 5f3c3ae2785267949766ae094414781133d4ce44
2013-09-27 18:01:16 +12:00
Robert O'Callahan
c7ac6cec44 Bug 919144. Part 8: Delete lots of code that's no longer needed. r=mattwoodrow
I never liked nsDisplayListBuilder::IsFixedItem anyway, its behavior and
naming was confusing. Also, it assumed there's only one viewport displayport,
on the rootmost document, and that's a bad assumption in general.
We're able to remove calls to ForceVisiblityForFixedItem because FrameLayerBuilder
is now responsible for inflating the visible region of the fixed-pos layers.

--HG--
extra : rebase_source : e93d8e25d2f5c7f3e167e47203d961e6b4293b81
2013-09-27 18:01:16 +12:00
Robert O'Callahan
6a8e8942c3 Bug 919144. Part 1: Rename identifiers from 'active scroll(ed) root' to 'animated geometry root'. r=mattwoodrow
Also sneaks in a couple of other refactorings:

--HG--
extra : rebase_source : 8b0e0729f26231d98ed069b54dd4f7c1e51b10b5
2013-09-26 09:07:26 +12:00
Robert O'Callahan
654b2fe263 Backout changesets 37f9a5424227, c1578a4fc86d and a417424f9213 (for bugs 933354, 929021 and 923193 respectively) while we figure out performance regressions
--HG--
extra : rebase_source : e4a004a15c92b5a8a8b780e7da779ac86d1c29be
2013-11-11 15:23:56 +13:00
Robert O'Callahan
5a7f1f55e0 Bug 933354. Avoid calling GetDeltaToPerspectiveOrigin for elements that don't have perspective. r=heycam
--HG--
extra : rebase_source : 2e887376cc3529191799e6e7726c336199121e96
2013-11-05 23:03:38 -08:00
Kartikaya Gupta
b0a97ce747 Bug 732971 - Create a new layer type for subdocuments with a resolution. r=tn
The new nsDisplayResolution layer type is created for any subdocument whose
presShell specifies a non-1.0 resolution. This is specifically needed for
platforms such as Android and Metro, where the presShells corresponding to
the tabs (which have non-1.0 resolutions) are not the root presShell.
2013-10-29 09:27:15 -04:00
L. David Baron
ccbb4acceb Bug 929673 Patch 3: Rename GetDeltaToMoz{Transform,Perspective}Origin to remove the Moz to avoid use of deprecated CSS prefixes in variable names. r=dzbarsky 2013-10-24 14:46:00 +02:00
L. David Baron
a84ee2a5cd Bug 929673 Patch 2: Rename mToMozOrigin to mToTransformOrigin to avoid use of deprecated CSS prefixes in variable names. r=dzbarsky 2013-10-24 14:46:00 +02:00
Robert O'Callahan
3e2355be8b Bug 903340. Make nsDisplayScrollInfoLayer::ShouldFlattenAway side-effect-free. r=tn 2013-10-21 15:47:26 -07:00
Birunthan Mohanathas
967e556c1c Bug 784739 - Switch from NULL to nullptr in layout/; r=ehsan
--HG--
extra : rebase_source : 0d0d9e11be9d39e4457bddd0bac7e19a50b91b0b
2013-10-08 14:47:21 -04:00
Markus Stange
203d1cece9 Bug 532828 - Don't invalidate the whole window on window activation/deactivation. r=roc 2013-09-27 17:24:32 +02:00
Rik Cabanier
37cda4a234 Bug 902525 - Part 3: create a layer for content that stores the blend mode r=roc 2013-09-14 20:40:11 -07:00
Rik Cabanier
48ef519963 Bug 902525 - Part 2: Create layers for isolated groups when blending is involved r=roc 2013-09-14 20:30:00 -07:00
Corey Ford
54030945f9 Bug 897105 - Part 4: Build display items and layers for sticky positioned elements. r=roc 2013-09-12 18:56:57 -07:00
Nicholas Cameron
4517b466e2 Bug 893330. Invalidate the frame area for box shadow display list items with border radius. r=mattwoodrow 2013-08-23 13:47:54 +12:00
Scott Johnson
2c9180dedd Bug 746015: Add a nsDisplayGenericOverflow class that uses a frame's visual overflow rect as its bounds to correctly display column rules that lie outside of a column set frame's bounds. [r=dbaron] 2013-08-20 16:38:29 -05:00
Ehsan Akhgari
5fa9157954 Bug 906790 - Minimize layout/base #includes; r=roc 2013-08-19 18:55:18 -04:00
Benoit Girard
7186e08ba4 Bug 873378 - Add a limit on mobile of 20 layers per container layer. r=roc 2013-07-16 16:17:18 -04:00
Ehsan Akhgari
9854ac6166 Bug 872127 - Part 2: Replace mozilla/StandardInteger.h with stdint.h; r=Waldo,ted 2013-07-30 10:25:31 -04:00
David Zbarsky
4a272eb16a Backout 4c89002460da (Bug 873378) for breaking the settings app on B2G 2013-07-26 13:20:23 -07:00
Ms2ger
65809ecc1e Bug 896261 - Remove aAppendedThemedBackground arguments from nsDisplayBackgroundImage::AppendBackgroundItemsToTop, nsFrame::DisplayBackgroundUnconditional; r=roc 2013-07-24 09:38:55 +02:00
Benoit Girard
72ce20909b Bug 873378 - Add a limit on mobile of 20 layers per container layer. r=roc 2013-07-16 16:17:18 -04:00
Markus Stange
925f3877d6 Bug 894905 - Create a separate nsDisplayItem subclass for -moz-appearance backgrounds. r=roc 2013-07-18 08:34:58 +02:00
Markus Stange
a3bbc51f36 Bug 894905 - Make AppendBackgroundItemsToTop return a bool instead of an nsDisplayBackgroundImage. r=roc 2013-07-18 08:34:10 +02:00
Timothy Nikkel
89a1d139e5 Bug 695763. Part 3. Invalidate the background images of buttons, fieldsets, and mathml chars if they are not decoded and we are asked to do a sync decode. r=matt.woodrow 2013-06-26 11:43:26 -05:00
Robert O'Callahan
5b98f9c1a4 Bug 876092. Copy the DisplayItemClip into OutOfFlowDisplayData instead of storing a pointer. r=mats 2013-06-18 21:15:39 +12:00
Robert O'Callahan
133d433fda Bug 876092. Part 1. Don't let effects of MarkFramesForDisplayList carry over between pages. r=mats 2013-06-18 21:15:37 +12:00
Timothy Nikkel
c3a504ac61 Bug 878612. Make sure to pass through the background painting flags through in all cases. r=matt.woodrow 2013-06-03 23:49:03 -05:00
Joe Drew
c1f4978ba3 Bug 878062 - Don't call TryOptimizeToImageLayer if we are definitely not going to optimize to an image layer, since it uses lots of memory. r=mattwoodrow 2013-06-03 10:57:06 -04:00
Joe Drew
9a5d492da7 Bug 867770 - Layerize all animated images. r=mattwoodrow 2013-05-30 09:50:50 -04:00
Arnaud Sourioux
043b0fd84c Bug 875367: Annotate ~280 more methods with MOZ_OVERRIDE in /layout. r=dholbert 2013-05-29 12:37:49 -07:00
Markus Stange
66fb5cfd84 Bug 676241 part 8: Remove alternate layer manager handling. r=mattwoodrow 2013-05-23 16:49:18 +02:00
Markus Stange
ea03392fcc Bug 871590 - Make unified titlebar / toolbar handling more robust. r=roc 2013-05-22 11:50:57 +02:00
Markus Stange
7b49365fa6 Backed out 2 changesets (bug 871590) CLOSED TREE 2013-05-22 14:10:46 +02:00
Markus Stange
7343081400 Bug 871590 - Make unified titlebar / toolbar handling more robust. r=roc
--HG--
extra : rebase_source : dc4c5dff4f0a392e096976b355bcf2140f7b2879
2013-05-22 11:50:57 +02:00
Arnaud Sourioux
9a8c47ea32 Bug 870516: Annotate ~600 more methods with MOZ_OVERRIDE in /layout r=dholbert 2013-05-14 09:33:23 -07:00
Robert O'Callahan
5e25d35f87 Bug 866579. Don't bother adding an arena-allocated DisplayItemClip to mDisplayItemClipsToDestroy if its destructor isn't going to do anything interesting. r=mattwoodrow
--HG--
extra : rebase_source : b8b64d9697cd2f19a42ff751cbfb7a1566f28209
2013-05-07 22:16:30 -07:00
Robert O'Callahan
fd709d6e6f Bug 860524. Remove hacky (and buggy) pseudo-destruction of DisplayItemClips created by GetCurrentClip; ensure that they're all destroyed properly when the arena goes away, by tracking them explicitly in nsDisplayListBuilder. r=mattwoodrow
--HG--
extra : rebase_source : f5d572ed37255b9036ce2678645788768e0a52ae
2013-04-15 17:11:10 +12:00
Ed Morley
d84e7e16cb Backed out changeset dc2ced1dd175 (bug 860524) for reftest failures 2013-04-19 13:51:24 +01:00
Robert O'Callahan
2817c39fd2 Bug 862180. Part 2: Rename nsDisplayItem::GetUnderlyingFrame() to Frame(). r=mattwoodrow 2013-04-20 00:02:13 +12:00
Robert O'Callahan
305561c096 Bug 860524. Remove hacky (and buggy) pseudo-destruction of DisplayItemClips created by GetCurrentClip; ensure that they're all destroyed properly when the arena goes away, by tracking them explicitly in nsDisplayListBuilder. r=mattwoodrow 2013-04-15 17:11:10 +12:00
Robert O'Callahan
7cbe6380ff Bug 841192. Part 14: Convert all usage of nsDisplayClip(RoundedRect) to use DisplayListClipState/DisplayItemClip. r=mattwoodrow
This patch does several things. Sorry.

In BuildDisplayList implementations, instead of wrapping display items in nsDisplayClip, we
push clip state onto the nsDisplayListBuilder and give the display items an
explicit clip when they're created.

In FrameLayerBuilder, we use the explicit clips we find on display items instead of
computing our own.

We remove nsDisplayClip and everything that depends on it.

We remove ExplodeAnonymousChildLists. With nsDisplayClip gone, and
nsDisplayOptionEventGrabber removed in a previous patch, there are no
anonymous child lists.

nsDisplayItem::TryMerge implementations need to make sure they have the same
clip before being merged.

I ripped out the part of PruneDisplayListForExtraPage that adjusts clip rects.
As far as I can tell, it isn't actually necessary.

--HG--
extra : rebase_source : 6f3988b385d0ac54ab26fad10b12173884441f48
2013-03-04 22:56:02 +13:00
Robert O'Callahan
96f57a5820 Bug 841192. Part 8: On encountering out-of-flow frames during display list construction, save their clip rect as well as their dirty rect for later use when we traverse the placeholder. r=mattwoodrow
--HG--
extra : rebase_source : 3a41e2eb4940f1ae7c0748f27211a7d0cf7ad638
2013-03-04 22:56:02 +13:00
Robert O'Callahan
c57aa1a36d Bug 841192. Part 6: Save and restore DisplayListClipState when we start building display lists for a frame. r=mattwoodrow
--HG--
extra : rebase_source : 9c9cb95acfb4d802ecf045e6d4c30811af647218
2013-03-04 22:56:01 +13:00
Robert O'Callahan
ab135d1d50 Bug 841192. Part 5: Add "current DisplayListClipState" to nsDisplayListBuilder. r=mattwoodrow
--HG--
extra : rebase_source : e8f99c3f0e6f9d516bfbed189ee42ad16cb8a6ee
2013-03-04 22:56:01 +13:00
Mats Palmgren
76816cc92f Bug 855920 - Remove unused nsDisplayTransform ctor. r=roc 2013-04-01 18:45:18 +02:00
Robert O'Callahan
ec730ddcc9 Bug 852489. Part 9: Avoid temporarily setting a layer's visible region to a non-final value. r=mattwoodrow
We currently set the visible region on most container layers twice: once in
BuildContainerLayerFor, where we don't take clipping from ancestors into
account, and then later ProcessDisplayItems calls RestrictVisibleRegionForLayer
which does take ancestor clipping into account. This causes unnecessary
Mutated()s.

In this patch we partially fix this by forcing transform layers to take
account of their ancestor clipping when they set the visible region in
BuildContainerLayerFor. For those layers we don't need to apply
ancestor clipping in ProcessDisplayItems. This is done in a rather
ugly way, by passing the ancestor clip rect as an extra field of
ContainerParameters. To preserve the optimization that prerendered
elements are treated as fully visible regardless of ancestor clipping,
we have to add a flag to turn that clipping off in BuildContainerLayerFor.

In bug 841192 we will be able to fix this in a much nicer way, because we can
get the ancestor clip directly off the nsDisplayItem passed to
BuildContainerLayerFor. But this approach is needed for the B2G18 branch.

--HG--
extra : rebase_source : 26fbe55db84ab96e1e358b8803b0563f42590836
2013-03-22 15:17:29 +13:00
Robert O'Callahan
3f62f02bdc Bug 846901 - Support prerendering elements with animated transforms that are offscreen but only by a small amount. r=mattwoodrow 2013-03-19 09:08:29 -04:00
Ed Morley
3be8543796 Backed out changeset e8ffcf4b8e22 (bug 846901) 2013-03-19 14:15:07 +00:00
Robert O'Callahan
e0e3473650 Bug 846901 - Support prerendering elements with animated transforms that are offscreen but only by a small amount. r=mattwoodrow 2013-03-19 09:08:29 -04:00
Matt Woodrow
43a03870a5 Bug 725981 - Only invalidate the difference in bounds when a solid color moves or resizes. r=roc 2013-03-08 15:15:10 +13:00
Timothy Nikkel
d695637b6c Bug 689623. Part 5. Add mechanism to update image visibility upon some amount of scrolling. r=mats 2013-02-24 18:59:21 -06:00
L. David Baron
822b2ca3bc Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert
Except for the changes in:
  layout/generic/nsIFrame.h (part)
  layout/style/nsComputedDOMStyle.h (all)
  layout/style/nsRuleNode.cpp (part)
  layout/style/nsStyleContext.cpp (part)
  layout/style/nsStyleContext.h (part)
(see patch 3b in the bug), this patch was written with the sed script:
s/\<GetStyle\(Font\|Color\|List\|Text\|Visibility\|Quotes\|UserInterface\|TableBorder\|SVG\|Background\|Position\|TextReset\|Display\|Content\|UIReset\|Table\|Margin\|Padding\|Border\|Outline\|XUL\|SVGReset\|Column\)\>/Style\1/g
2013-02-16 13:51:02 -08:00
Robert O'Callahan
d9665619b9 Bug 840902. Part 2: Remove nsresults from various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : de498510bf8d85d9b0b2fab0137ef3be01c9adfa
2013-02-15 00:12:27 +13:00
Robert O'Callahan
59dfd955a1 Bug 840902. Part 1: Stop checking the results of various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : 50a3d6809ef76a25a3d02d91f2873d9ba11fdc56
2013-02-15 00:08:08 +13:00
Matt Woodrow
6ff7e265f4 Bug 836179 - Add WriteDebugInfo so that display items can add extra information when printing display lists. r=roc 2013-01-30 18:07:30 +13:00
Matt Woodrow
23cabe0437 Bug 820839 - Draw OSX titlebar content into a retained buffer during the ThebesLayer painting phase, before we clear invalidation state. r=roc 2013-01-17 11:59:23 +13:00
Mats Palmgren
6c53161814 Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
Matt Woodrow
4c9c3921d4 Bug 829921 - Make sure that we don't choose a reference frame that is an ancestor of the root reference frame. r=roc 2013-01-14 18:30:47 +13:00
Matt Woodrow
bb271e80fa Bug 820246 - Split nsDisplayCanvasBackground into separate color and image items. r=roc 2012-12-13 14:15:55 +13:00
Ed Morley
5c0064f135 Backout 4777ad9776ec (bug 820246) for causing frequent failures in background-image-zoom-1.html on Android 2012-12-13 12:25:12 +00:00
Matt Woodrow
0ef5d0e471 Bug 820246 - Split nsDisplayCanvasBackground into separate color and image items. r=roc 2012-12-13 14:15:55 +13:00
Matt Woodrow
d12fc1cdaf Bug 820131 - Compute a more accurate bounds for nsDisplayBoxShadowOuter. r=roc 2012-12-12 09:36:54 +13:00
Robert O'Callahan
06e395c355 Bug 818643. Issue an NotifyRenderingChanged callback on nsDisplayItems when we invalidate anything to do with the display item. Make nsDisplayCanvasBackground override NotifyRenderingChanged to invalidate the cached background image. r=mattwoodrow
--HG--
extra : rebase_source : c28b2804d647a991f7d2cb8167fcf039c1835d75
2012-12-10 18:34:31 +13:00
Matt Woodrow
d79e024902 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
4fd3be0cc7 Bug 815593. Don't layerize images that exceed MaxTextureSize. r=mattwoodrow
--HG--
extra : rebase_source : f94300b24b90d063df095324663c9d8fa49e42e9
2012-11-28 15:34:45 +13:00
Matt Woodrow
ec0f46bf5a Bug 814272 - Cache the bounds of nsDisplayBackgroundImage items. r=roc 2012-11-28 17:05:32 +13:00
Nicholas Cameron
75dacf4dde Bug 812908; add a debug pref for forcing active layers; r=roc 2012-11-23 12:29:05 +13:00
Matt Woodrow
5dc466f953 Bug 811927 - Allow conversion of nsDisplayBackgroundImage into ImageLayers. r=roc 2012-11-19 16:28:18 +13:00
Robert O'Callahan
57460ca6e6 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
72186d552d 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
9c308072cc 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
9e3732f25f 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
e8d8fdb494 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
98fc051fd7 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
6a40d5fd04 Bug 808491 - Force 3d transformed layers to always be active. r=roc 2012-11-13 22:26:29 -08:00
Bas Schouten
dec539af30 Bug 811173. Part 1: Allow nsDisplayBackgroundColor::GetBounds to enable snapping. r=roc
--HG--
extra : rebase_source : 4eb0dadaaf17d7c30a82454c98390fd5c01eb4ec
2012-11-13 11:57:59 -08:00
Matt Woodrow
a5b3f77bcf 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
c71a6efb72 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
Matt Woodrow
85acfcddf9 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
aad1519dae Back out c95958e3b85d and e8a8bf41e0c4 (bug 798964) for Android reftest-4 failures 2012-10-25 01:19:57 -07:00
Phil Ringnalda
29d12d417c Back out 8bffa268afd8 (bug 800041) for reftest assertions in 745934-1.html 2012-10-24 23:49:39 -07:00
Matt Woodrow
df721374f4 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
19592164ef Bug 798964 - Add nsDisplayBackground color and make the bounds of nsDisplayBackground match the image. r=roc 2012-10-25 18:32:25 +13:00
Timothy Nikkel
ada10776c7 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
Matt Woodrow
ba464dd210 Bug 802321 - Don't compare geometry objects for inactive layers. r=roc 2012-10-17 21:00:00 +13:00
Matt Woodrow
7c4e5b5701 Bug 800198 - Make mContainerReferenceFrame the reference frame for the items inside the container, not the container itself. r=roc 2012-10-16 14:10:48 +13:00
Robert O'Callahan
e7f231d6c8 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
Matt Woodrow
640446a3b7 Bug 800287 - Optimize display list processing. r=roc 2012-10-12 12:38:25 +13:00
Isaac Aggrey
997db4d142 Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
Matt Woodrow
28ef42bcbf Bug 781053 - Part 1 - Allow conversion of nsImageBoxFrame to an ImageLayer. r=roc 2012-09-25 08:29:14 +12:00
Matt Woodrow
5f32437ca2 Bug 539356 - Add an option for frames to invalid just a rect instead of the frame bounds. r=roc 2012-08-29 17:48:45 +12:00
Matt Woodrow
5a14809d04 Bug 539356 - Part 9f - Compute the invalid area of the layer tree and pass this to the widget. r=roc 2012-08-29 17:47:18 +12:00
Matt Woodrow
4e75c1edde Bug 539356 - Part 9e - FrameLayerBuilder changes for display list invalidation. r=roc
* * *
imported patch move-by-correctly
2012-08-29 17:47:15 +12:00
Matt Woodrow
cdbc43ed27 Bug 539356 - Part 9a - Add new display list invalidation API to nsDisplayItem and implement it. r=roc 2012-08-29 17:39:01 +12:00
Ed Morley
c863356300 Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE 2012-09-27 16:34:46 +01:00
Matt Woodrow
297a694be4 Bug 781053 - Part 1 - Allow conversion of nsImageBoxFrame to an ImageLayer. r=roc 2012-09-25 08:29:14 +12:00
Matt Woodrow
7d7084a2d1 Bug 539356 - Add an option for frames to invalid just a rect instead of the frame bounds. r=roc 2012-08-29 17:48:45 +12:00
Matt Woodrow
c73c0db2f1 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00