Commit Graph

728 Commits

Author SHA1 Message Date
Botond Ballo
52886c2f82 Bug 978997 - Fix a regression caused by bug 959847 where the root layer sometimes doesn't get an APZC. r=tnikkel on a CLOSED TREE
Root scroll frames in display root documents don't get a scroll info layer from ScrollFrameHelper::BuildDisplayList, so we always need to call RecordFrameMetrics from nsDisplayList::PaintForFrame.
2014-03-03 19:57:28 -05:00
Ryan VanderMeulen
ea7db637cd Merge inbound to m-c. 2014-03-03 17:00:34 -05:00
James Kitchener
ed09b3f79b Bug 975935 - nsDisplaymtdBorder needs to override GetBounds. r=bz 2014-03-03 10:37:08 -05:00
Ed Morley
a96a5e92b0 Merge latest green b2g-inbound changeset and mozilla-central 2014-03-03 14:45:43 +00: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
7057743a64 Bug 974643. The displayport is not relevant to position: fixed content, only to scrolling content. r=roc
The relevant part of postion: fixed items lies within the viewport, which is the scroll position clamping scroll port size if one has been set.
2014-03-02 19:49:39 -06:00
Timothy Nikkel
00358747ba Bug 959847. Part 11. Use nsLayoutUtils::ViewportHasDisplayPort instead of repeating boilerplate code. r=roc 2014-02-27 16:01:54 -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
a56df55cd5 Bug 959847. Part 6. Only call RecordFrameMetrics from PaintForFrame if we are ignoring viewport scrolling so that we don't call it twice for the same scroll frame (the other one being the scroll layers created by nsGfxScrollFrame). r=roc 2014-02-27 16:01:53 -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
Botond Ballo
59fc4de447 Bug 958596 - Add a content description field to FrameMetrics and populate it if the apz.printtree pref is on. r=kats,tn 2014-01-22 16:37:57 -05: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
Wes Kocher
26af0b1154 Backed out 12 changesets (bug 958596) for several Android permafails to fix a CLOSED TREE
Backed out changeset e4c0e3d3a768 (bug 958596)
Backed out changeset 7bc4f48d6b05 (bug 958596)
Backed out changeset 89cd12e3db45 (bug 958596)
Backed out changeset 283411053340 (bug 958596)
Backed out changeset 5329fa8c8847 (bug 958596)
Backed out changeset 0d1d26d588e3 (bug 958596)
Backed out changeset 715fe9eb5dfd (bug 958596)
Backed out changeset 66dde9d67ffa (bug 958596)
Backed out changeset 79e589f75065 (bug 958596)
Backed out changeset 1ed4c880ab70 (bug 958596)
Backed out changeset 1d40b0b8036d (bug 958596)
Backed out changeset ad35d51d9781 (bug 958596)
2014-02-25 18:34:47 -08:00
Botond Ballo
d6421e976c Bug 958596 - Add a content description field to FrameMetrics and populate it if the apz.printtree pref is on. r=kats,tn 2014-01-22 16:37:57 -05:00
Matt Woodrow
048b93a1e5 Bug 975592 - Make sure we find the correct composition manager when updating child process layer trees. r=nical
--HG--
extra : rebase_source : 5e1457117293c74a362a0570aca2673c90038334
2014-02-25 11:45:40 +13:00
Ed Morley
58117b43b2 Backed out changeset a29e486e2214 (bug 958596) 2014-02-25 17:17:02 +00:00
Botond Ballo
179fa07f9a Bug 958596 - Add a content description field to FrameMetrics and populate it if the apz.printtree pref is on. r=kats,tn
--HG--
extra : rebase_source : f009ad9d779fb1a3afa525fe7e5eb3a399aee628
2014-01-22 16:37:57 -05: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
Max Vujovic
bc8022d715 Bug 948265 - Pass an nsStyleFilter chain instead of an nsSVGFilterFrame into nsSVGFilterInstance. r=roc 2014-02-24 10:22:58 -05:00
Botond Ballo
43f24142b6 Bug 964517 - Do not pretend a layer is opaque if it really is transparent. r=roc 2014-02-09 00:28:04 -05: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
Tor Arvid Lund
09df5cf35c Bug 948765 - Port CopyableCanvasLayer to Moz2D. r=nical
This patch deprecates the UpdateSurface and PaintWithOpacity methods in the
CCL class. To do this, many other changes were made in the process.

BasicImplData::Paint was deprecated, and its mOperator was ported to Moz2D.
This caused changes in several *Layer subclasses.

GLScreenBuffer::Readback was deprecated.

I want to change the usages of the (now) deprecated functions, so that they
use the new Moz2D ones: CanvasClient::Update has been updated, but the big
one (BasicLayerManager::PaintSelfOrChildren) will have to be its own
project.
2014-02-12 10:07:46 -05:00
L. David Baron
d1d272808d Bug 91419 patch 5: Rename everything with SpecialSibling to IBSplitSibling. r=mats 2014-02-06 17:45:31 -08:00
Kartikaya Gupta
5fde241c65 Bug 963278 - Better fix to deal with concurrent scroll updates from APZ and other places. r=tn,botond,jimm 2014-02-05 17:43:20 -05:00
Timothy Nikkel
bbe549de72 Bug 962791. Include nsIFrameInlines.h so linux debug build doesn't complain about missing IsAbsolutelyPositioned. r=me on a CLOSED TREE 2014-02-04 00:14:07 -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
9a8f69348f Bug 946502. Part 3: Extend FrameLayerBuilder to set fixed-pos metadata on layers created for background-attachment:fixed content. r=mattwoodrow
--HG--
extra : rebase_source : dbaab718d7a358bfaa40124913bcd5acf0255aa1
2013-12-18 00:30:21 +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
Benoit Girard
2947052490 Bug 940842 - 2/3 - Implement will-change in layers-building code - r=mattwoodrow 2013-11-22 13:14:34 -05:00
Timothy Nikkel
fce6c10380 Bug 950301. Make the underlying frame of scroll layer items be the scrolled frame before the layerizing display lists. r=mattwoodrow 2014-01-27 17:30:29 -06:00
David Zbarsky
1e61d187aa Bug 952977: Convert SetBaseTransform to gfx::Matrix4x4 r=nical 2014-01-27 10:28:33 -05: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
Benoit Girard
49072be9c6 Bug 950488 - Overhaul APZ handling of overflow:hidden. r=botond
--HG--
extra : rebase_source : 6ba93899e5ac446b5c4a4cacb18574dd05c54c62
2014-01-21 12:33:52 -05: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
Timothy Nikkel
b2654ec621 Bug 931028. Transform matrices when used for painting related things should be in dev pixels and not CSS pixels. r=mattwoodrow 2014-01-19 17:30:36 -06:00
Robert O'Callahan
1b23587630 Bug 812795. Disable subpixel AA in content subject to SVG effects such as filters. r=jwatt
--HG--
extra : rebase_source : 7cd6724d55b57af99db8077517564c01ba1848a8
2014-01-10 16:03:24 +13:00
Anthony Jones
3b3605ff77 Bug 951463 - Rename ClampRect to ForceInside; r=botond 2014-01-06 10:05:07 -05: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
David Zbarsky
ca9e9d862a Bug 952977: Switch IsSVGTransformed to gfx::Matrix r=nical 2013-12-29 18:35:53 -05: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
Kartikaya Gupta
8109167828 Bug 949132 - Add a flag to FrameMetrics indicating a non-APZ scroll (original patch by mstange). r=tn 2013-12-16 12:04:45 -05:00