Commit Graph

636 Commits

Author SHA1 Message Date
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
Ed Morley
a8ea0bbb16 Backed out changeset 1d056bb94292 (bug 779395) for reftest failures on Tegras 2013-05-21 14:03:43 +01:00
David Zbarsky
c0eb3c766a Bug 779395 - Add support for skew transforms to compositor-driven animations r=dbaron 2013-05-21 18:22:44 +08:00
Matt Woodrow
f46eb6a53e Bug 866470 - Make the style context lookup in nsDisplayList match what nsCSSRendering does. r=roc 2013-05-08 15:47:31 +12: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
Mats Palmgren
7ade6fec14 Bug 868906 - Make GetChildFrameContainingOffset() stable. r=roc 2013-05-07 20:48:59 +02:00
Nicolas Silva
391cf268bb Bug 863324 - Rename PLayers into PLayerTransaction, r=jrmuizel
--HG--
rename : gfx/layers/ipc/ShadowLayersChild.cpp => gfx/layers/ipc/LayerTransactionChild.cpp
rename : gfx/layers/ipc/ShadowLayersChild.h => gfx/layers/ipc/LayerTransactionChild.h
rename : gfx/layers/ipc/ShadowLayersParent.cpp => gfx/layers/ipc/LayerTransactionParent.cpp
rename : gfx/layers/ipc/ShadowLayersParent.h => gfx/layers/ipc/LayerTransactionParent.h
rename : gfx/layers/ipc/PLayers.ipdl => gfx/layers/ipc/PLayerTransaction.ipdl
2013-04-24 14:42:40 -04: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
Ehsan Akhgari
8d3203e0f8 Backed out changeset fdaa0659fe13 (bug 863324) because of build bustage on a CLOSED TREE
--HG--
rename : gfx/layers/ipc/PLayerTransaction.ipdl => gfx/layers/ipc/PLayers.ipdl
rename : gfx/layers/ipc/LayerTransactionChild.cpp => gfx/layers/ipc/ShadowLayersChild.cpp
rename : gfx/layers/ipc/LayerTransactionChild.h => gfx/layers/ipc/ShadowLayersChild.h
rename : gfx/layers/ipc/LayerTransactionParent.cpp => gfx/layers/ipc/ShadowLayersParent.cpp
rename : gfx/layers/ipc/LayerTransactionParent.h => gfx/layers/ipc/ShadowLayersParent.h
2013-04-22 18:12:15 -04:00
Nicolas Silva
ab0ca9312a Bug 863324 - Rename PLayers into PLayerTransaction, r=jrmuizel
--HG--
rename : gfx/layers/ipc/ShadowLayersChild.cpp => gfx/layers/ipc/LayerTransactionChild.cpp
rename : gfx/layers/ipc/ShadowLayersChild.h => gfx/layers/ipc/LayerTransactionChild.h
rename : gfx/layers/ipc/ShadowLayersParent.cpp => gfx/layers/ipc/LayerTransactionParent.cpp
rename : gfx/layers/ipc/ShadowLayersParent.h => gfx/layers/ipc/LayerTransactionParent.h
rename : gfx/layers/ipc/PLayers.ipdl => gfx/layers/ipc/PLayerTransaction.ipdl
2013-04-22 22:51:11 -04:00
Ryan VanderMeulen
25f1906153 Backed out changeset ddf944cc292d (bug 863324) for Android bustage on a CLOSED TREE.
--HG--
rename : gfx/layers/ipc/PLayerTransaction.ipdl => gfx/layers/ipc/PLayers.ipdl
rename : gfx/layers/ipc/LayerTransactionChild.cpp => gfx/layers/ipc/ShadowLayersChild.cpp
rename : gfx/layers/ipc/LayerTransactionChild.h => gfx/layers/ipc/ShadowLayersChild.h
rename : gfx/layers/ipc/LayerTransactionParent.cpp => gfx/layers/ipc/ShadowLayersParent.cpp
rename : gfx/layers/ipc/LayerTransactionParent.h => gfx/layers/ipc/ShadowLayersParent.h
2013-04-22 14:47:16 -04:00
Nicolas Silva
3b0ce69477 Bug 863324 - Rename PLayers into PLayerTransaction, r=jrmuizel
--HG--
rename : gfx/layers/ipc/ShadowLayersChild.cpp => gfx/layers/ipc/LayerTransactionChild.cpp
rename : gfx/layers/ipc/ShadowLayersChild.h => gfx/layers/ipc/LayerTransactionChild.h
rename : gfx/layers/ipc/ShadowLayersParent.cpp => gfx/layers/ipc/LayerTransactionParent.cpp
rename : gfx/layers/ipc/ShadowLayersParent.h => gfx/layers/ipc/LayerTransactionParent.h
rename : gfx/layers/ipc/PLayers.ipdl => gfx/layers/ipc/PLayerTransaction.ipdl
2013-04-22 18:07:48 -04: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
037af48e84 Bug 862180. Part 1: Remove null checks on the result of nsDisplayItem::GetUnderlyingFrame(). r=mattwoodrow 2013-04-20 00:01:41 +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
Mats Palmgren
109767f361 Bug 485149 - Using box-shadow on a <fieldset> with <legend> does not follow box shape. r=roc 2013-04-17 22:16:14 +02:00
Robert O'Callahan
31d25be8bf Bug 860579. Make FindContentInDocument use the frame tree as much as possible. r=mattwoodrow
--HG--
extra : rebase_source : c4d05d33fdc6b2bcc99437808f78ada8770f9263
2013-04-16 18:14:56 +12:00
Ms2ger
dbbebc6ee4 Backout changesets 3581b3d60886, cff9eab960e3, d390c8c21882 for Android foreignObject-fixedpos-01.html failures on a CLOSED TREE. 2013-04-16 11:40:41 +02:00
Robert O'Callahan
d13d3fcf4b Bug 860579. Make FindContentInDocument use the frame tree as much as possible. r=mattwoodrow 2013-04-16 18:14:56 +12:00
Chris Lord
f67f2ed873 Bug 856932 - Fix async scrolling of auto-positioned fixed position elements. r=nrc
Layers representing auto-positioned fixed position elements should not be
offset by the fixed layer margins.
2013-04-15 09:31:48 +01:00
Matt Woodrow
30d119577c Bug 859630 - Use the PresContext's document in FindContentInDocument when the frame doesn't have an associated nsIContent. r=roc 2013-04-15 18:55:36 +12:00
Robert O'Callahan
bf594d63fa Bug 841192. Part 16: Take plugin's own clipping into account when computing the region for its window. Make SortByContentOrder handle cases where display items in the same list come from different documents. r=mattwoodrow
--HG--
extra : rebase_source : f39deb6250c7aef71d6cd3a62df43785a3bfc7b1
2013-04-05 21:30:34 +13: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
62aa179c29 Bug 841192. Part 13: Rename nsFrame::ApplyOverflowClipping to ShouldApplyOverflowClipping. r=mattwoodrow
We rename nsFrame::ApplyOverflowClipping to nsFrame::ShouldApplyOverflowClipping
to reflect the fact that it doesn't cause any clipping.

--HG--
extra : rebase_source : d3bd1ef902276526b37b27c510a8d3a9db6416dc
2013-03-07 00:08:16 +13:00
Robert O'Callahan
53c6c63412 Bug 841192. Part 12: Move RoundedRectIntersectsRect from nsDisplayList.cpp to nsLayoutUtils. r=mattwoodrow
--HG--
extra : rebase_source : aa0ad96c363b70895b068a6d4805f9164cc03b27
2013-03-07 00:08:15 +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
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
Benoit Girard
fc10a7cfe4 Bug 851611 - Part 3: Rename headers. r=jrmuizel
--HG--
rename : tools/profiler/sampler.h => tools/profiler/GeckoProfiler.h
rename : tools/profiler/sps_sampler.h => tools/profiler/GeckoProfilerImpl.h
extra : rebase_source : 6ea7c660764a4390cdd8dd91561fff1d7bad6035
2013-03-18 15:25:50 +01:00
Benoit Girard
9d12529d78 Bug 851611 - Part 2: Update profiler calls. r=jrmuizel
--HG--
extra : rebase_source : f76accc3d3dd86c75cb3e9750734f23ec9c29941
2013-03-16 00:47:02 -04:00
Matt Woodrow
976550b695 Bug 822086 - Handle a nullptr ContainerLayer in nsDisplayTransform::BuildLayer. r=bustage CLOSED TREE 2013-03-21 16:27:02 +13:00
Matt Woodrow
667dc0c39c Bug 822086 - Don't build ContainerLayers that would have a singular matrix. r=roc 2013-03-21 15:33:00 +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
Ed Morley
b2109c458f Backed out changeset c75481a07302 (bug 851611) 2013-03-18 14:10:35 +00:00
Ed Morley
2b1775b4e9 Backed out changeset d195190adc48 (bug 851611)
--HG--
rename : tools/profiler/GeckoProfiler.h => tools/profiler/sampler.h
rename : tools/profiler/GeckoProfilerImpl.h => tools/profiler/sps_sampler.h
2013-03-18 14:10:30 +00:00
Benoit Girard
664cf994b4 Bug 851611 - Part 3: Rename headers. r=jrmuizel
--HG--
rename : tools/profiler/sampler.h => tools/profiler/GeckoProfiler.h
rename : tools/profiler/sps_sampler.h => tools/profiler/GeckoProfilerImpl.h
extra : rebase_source : 552fe1d3ff61d15b264aaf86f7c8cb4f4eff69d1
2013-03-18 14:41:02 +01:00
Benoit Girard
c4c6a0ddf5 Bug 851611 - Part 2: Update profiler calls. r=jrmuizel
--HG--
extra : rebase_source : 3032aaf7e50cdf9c350da688ec34e50a695fc7ca
2013-03-16 00:47:02 -04:00
Timothy Nikkel
2b0ae273b3 Bug 848421. Part 2. Remove useless PresContext argument to nsCSSRendering::FindBackground. r=mats 2013-03-07 10:03:49 -06:00
Chris Lord
81f0522af9 Bug 716403 - Annotate layers with the fixed margins from the PresShell. r=nrc,roc
This annotates fixed layers with the margins that have been applied from
nsIPresShell->GetContentDocumentFixedPositionMargins. Using SyncViewportInfo
in CompositorParent, this allows for async fixed position margin setting.
2013-03-07 10:17:33 +00:00
Ryan VanderMeulen
893d8d351a Backed out 9 changesets (bug 716403) for Android 4.0 robocop bustage on a CLOSED TREE. 2013-03-06 16:11:05 -05:00
Chris Lord
f223199f29 Bug 716403 - Annotate layers with the fixed margins from the PresShell. r=nrc,roc
This annotates fixed layers with the margins that have been applied from
nsIPresShell->GetContentDocumentFixedPositionMargins. Using SyncViewportInfo
in CompositorParent, this allows for async fixed position margin setting.
2013-03-06 16:56:00 +00:00
Ed Morley
2e90a500bf Backed out changeset cacb9f3ee44d (bug 840693) 2013-03-04 14:37:43 +00:00
Anthony Jones
fffa15107b Bug 840693 - Change to using gfx:: types in AsyncPanZoomController; r=cjones 2013-03-04 13:25:26 +13:00
Ryan VanderMeulen
5d849d0751 Backed out 8 changesets (bug 716403) for frequent Android mochitest-8 failures on a CLOSED TREE. 2013-03-01 16:09:59 -05:00
Chris Lord
f56a95adbd Bug 716403 - Annotate layers with the fixed margins from the PresShell. r=nrc,roc
This annotates fixed layers with the margins that have been applied from
nsIPresShell->GetContentDocumentFixedPositionMargins. Using SyncViewportInfo
in CompositorParent, this allows for async fixed position margin setting.
2013-03-01 15:46:34 +00:00
Matt Woodrow
84c04d1e4c Bug 846144 - Don't optimize backgrounds to an ImageLayer if they have border-radius clipping. r=roc 2013-02-28 21:49:30 +13: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
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
L. David Baron
63fdfec174 Bug 841789, patch 1: Rename nsIFrame::GetStyleContext() to nsIFrame::StyleContext() since it can never return null. r=dholbert
This makes it conform to our convention that getters returning pointers
that can never be null do not begin with "Get".
2013-02-15 21:38:33 -08:00
Ed Morley
ea6cb39072 Backed out changeset b1905f6653d4 (bug 840902) on a CLOSED TREE 2013-02-14 11:47:08 +00:00
Robert O'Callahan
0b8b76fcca Bug 840902. Part 1: Stop checking the results of various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : f90be285148c68fae306d09714f0fe642b490c45
2013-02-15 00:08:08 +13:00
Robert O'Callahan
8b7ec02e58 Bug 815591. Don't build nsDisplayBackgroundColor if there is no background color and we're not going to do hit-testing. r=mattwoodrow 2012-11-28 01:50:09 +13:00
Ryan VanderMeulen
daec4f1f33 Backed out changeset 394bbaa548e3 (bug 815591) for OSX reftest failures on a CLOSED TREE. 2013-02-13 22:10:09 -05:00
Robert O'Callahan
ada178ae9a Bug 815591. Don't build nsDisplayBackgroundColor if there is no background color and we're not going to do hit-testing. r=mattwoodrow
--HG--
extra : rebase_source : 1e7055649266621e72cbd669949c3d30a32980a2
2012-11-28 01:50:09 +13:00
Nicholas Cameron
a1be3479be Bug 828531; fix scaling CSS pixels for animations; r=roc
--HG--
extra : rebase_source : 0e24bf2ee472a37b742efe3d142c2c25fef3e572
2013-02-13 10:00:54 +13:00
Matt Woodrow
ce93190e34 Bug 836844 - Pass the right clip area for canvas frames. r=roc 2013-02-04 07:11:49 -05:00
Robert O'Callahan
a70281e646 Bug 828146. Ensure nsDisplayBackgroundImage::ComputeInvalidationRegion invalidates something for nsDisplayBackgroundImages which are themed. r=mattwoodrow
--HG--
extra : rebase_source : 1050ffe991aed624958b9cb63f142a76a34fc67d
2013-02-01 17:09:32 +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
f18c00bb62 Bug 832341 - Use the correct border area (rather than the canvas area) when computing the bounds of an nsDisplayCanvasBackgroundImage. r=roc 2013-01-30 18:07:29 +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
L. David Baron
7f995ece9b Bug 827717: Change record of CSS animation start to be before delay so that dynamic changes to animation-delay are honored. r=bzbarsky
This matches the CSS Working Group consensus recorded in
http://lists.w3.org/Archives/Public/www-style/2012Nov/0261.html , though
the spec hasn't yet been updated.
2013-01-10 21:14:51 -08:00
Robert O'Callahan
85884b1a4b Bug 826632. Part 1: Merge nsIViewManager into nsViewManager. r=tnikkel
--HG--
rename : view/public/nsIViewManager.h => view/public/nsViewManager.h
extra : rebase_source : d00947c925b17f860fcdc0e12b1ec3cc31b7c630
2013-01-05 16:12:24 +13:00
Phil Ringnalda
408fbe5931 Back out 5e76dfb1d426 (bug 826635) and 0df74b1a4543:20df426b6111 (bug 826632) for bustage
CLOSED TREE
2013-01-04 21:30:14 -08:00
Robert O'Callahan
b56cdd701e Bug 826632. Part 1: Merge nsIViewManager into nsViewManager. r=tnikkel
--HG--
rename : view/public/nsIViewManager.h => view/public/nsViewManager.h
extra : rebase_source : 85587555e1f202809cd39fe899570644e6ca4eb3
2013-01-05 16:12:24 +13:00
Robert O'Callahan
f9b9491b81 Bug 825866. Part 8: Mass-rename of nsIView to nsView. r=tnikkel
This was autogenerated by basically replacing all occurrences of the word "nsIView" with nsView.

--HG--
rename : view/public/nsIView.h => view/public/nsView.h
2013-01-04 02:23:11 +13:00
Anthony Jones
0a019ca139 Bug 811950 - Remove fixed position environment variable. r=roc 2012-12-23 10:47:16 -05:00
Nicholas Cameron
478a83c47c Bug 823460; start throttled transitions with delays; r=dbaron; a=blocking-basecamp
--HG--
extra : rebase_source : 8e57f7106fd8241556e63076f8dedc0cb72052e7
2012-12-23 17:52:13 +13:00
Matt Woodrow
bc0064ee3b bug 822865 - Null check the background outparam before assigning to it. r=roc 2012-12-21 22:09:25 +13:00
Matt Woodrow
ccc6b9efe8 Bug 819915 - Fix IsSingleFixedPositionImage to actually check if we only have a single image. r=roc 2012-12-17 17:30:57 +13:00
Matt Woodrow
800b08b7f2 Bug 821477 - Don't build nsDisplay{Canvas}BackgroundImage items when the image is empty. r=roc 2012-12-14 11:16:14 +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
Jeff Muizelaar
713f78d599 Bug 798245. Propagate the zoom from the tab child into the frame metrics. r=cjones
This lets the default zoom make it back to the APZC when the viewport is set.
2012-12-11 17:49:57 -05:00
Robert O'Callahan
bb1dcd8d55 Bug 663776. Part 0.5: Mark layers that could have their transforms changed via off-main-thread animations or empty transactions, and treat all ThebesLayerOGL descendants of such layers as potentially resampled so that their buffers are put into the correct state and size. r=mattwoodrow
--HG--
extra : rebase_source : d3c78cc61f1a3d5f12dedb57180371b41b1647f6
2012-12-12 18:21:23 +13:00
Nicholas Cameron
04002c184f Bug 780692; throttle OMTA (rollup patch). r=dbaron,bz
--HG--
extra : rebase_source : 1207275df5c509ac1974e2b9333c738b995f9d5e
2012-12-12 10:12:43 +13:00
Matt Woodrow
d12fc1cdaf Bug 820131 - Compute a more accurate bounds for nsDisplayBoxShadowOuter. r=roc 2012-12-12 09:36:54 +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
bdbd1f0280 Backout 7aceff7124d9 (bug 815591) for Mac test failures 2012-11-29 20:39:36 +13: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
Robert O'Callahan
b5bf3e65b7 Bug 815591. Don't build nsDisplayBackgroundColor if there is no background color and we're not going to do hit-testing. r=mattwoodrow
--HG--
extra : rebase_source : ce6fbf882f00d7c3ceb7f149bb6e9cb21ed6f74d
2012-11-28 01:50:09 +13:00
Matt Woodrow
ec0f46bf5a Bug 814272 - Cache the bounds of nsDisplayBackgroundImage items. r=roc 2012-11-28 17:05:32 +13:00
Nicholas Nethercote
885bd89c9e Bug 814312 - Avoid PL_ArenaPool recycling in the layout engine. r=roc.
--HG--
extra : rebase_source : 7aaa3d745583c595692f1effd933cc70931194ff
2012-11-25 14:40:28 -08:00
Robert O'Callahan
95147e8a27 Bug 813722. Create layers for opacity:0 elements with animated opacity. r=mattwoodrow
--HG--
extra : rebase_source : 5dbcb7966983f040f340f661dd8a585dc92dae1e
2012-11-23 14:09:24 +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
Chris Lord
49699652e2 Bug 783368 - Add critical display port content property. r=roc
Add a property to represent a sub-rectangle of the display port that is
considered 'critical' to render correctly.
2012-11-21 22:34:18 +00:00
Ehsan Akhgari
abcfaa316e Backed out 11 changesets (bug 783368) because of build bustage on a CLOSED TREE
Backed out changeset 2bc4310263c4 (bug 783368)
Backed out changeset a35c83a8d99d (bug 783368)
Backed out changeset afb9b2a661ba (bug 783368)
Backed out changeset 3926f510f9be (bug 783368)
Backed out changeset 9d1fe200ff87 (bug 783368)
Backed out changeset b6e4f88f5730 (bug 783368)
Backed out changeset bc53f7dba7c6 (bug 783368)
Backed out changeset 1948fa2fccc1 (bug 783368)
Backed out changeset 9af163388fd1 (bug 783368)
Backed out changeset 7a2256e1aa7c (bug 783368)
Backed out changeset 4da1958a9885 (bug 783368)
2012-11-21 14:57:02 -05:00
Chris Lord
78b87d6c47 Bug 783368 - Add critical display port content property. r=roc
Add a property to represent a sub-rectangle of the display port that is
considered 'critical' to render correctly.
2012-11-21 19:16:51 +00:00
Chris Jones
3387cec057 Bug 799768: Only bother computing an invalid rect if it affects composition and enable omtc for X11 b2g builds. r=mattwoodrow 2012-10-11 16:55:42 -07:00
Robert O'Callahan
5786974f42 Bug 812776. Reset InlineBackgroundData whenever there are no display lists extant. Frame trees can't change while there are display lists extant. r=mattwoodrow 2012-11-19 23:54:41 +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
4f7062809b Bug 811831 - Don't create layers for nsDisplayOpacity items that have an opacity of 0. r=roc 2012-11-14 14:43:29 -08:00
Matt Woodrow
6a40d5fd04 Bug 808491 - Force 3d transformed layers to always be active. r=roc 2012-11-13 22:26:29 -08:00
Matt Woodrow
bcdaf96109 Bug 805197 - Compute a region in LayerTreeInvalidation. r=roc 2012-11-12 10:31:15 -08:00
L. David Baron
cbecfc83f0 Bug 809533, patch 1: Make allocation in the frame arena and the display list arena infallible. r=roc 2012-11-07 11:55:53 -08:00
Matt Woodrow
4a08c209ba Bug 805948 - Use the local perspective value instead of trying to retrieve it from the nsStyleDisplay again. r=cjones 2012-11-07 19:56:57 +13: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
c9803f76aa Bug 805331. Only chrome display items that are leaves should be treated as especially opaque. r=mats 2012-11-03 01:59:03 +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
Robert O'Callahan
e8d5856ece Bug 796452. Add mozpasspointerevents attribute for IFRAMEs in chrome windows. r=mats 2012-11-02 23:42:59 +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
Matt Woodrow
8e05c0f895 Bug 800041 - Set the correct reference frame for nsDisplayScrollLayer when the frame is transformed. r=roc 2012-10-25 12:04:41 +13:00
Chris Lord
7f25a0bb58 Bug 803826 - Restore the layer builder pointer on return from PaintForFrame. r=mattwoodrow
It's possible for nsDisplayList::PaintForFrame to reset the layer builder
pointer on a layer manager it didn't create. Instead of setting it to null,
store the existing pointer and restore it on return.
2012-10-23 12:01:23 +01: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
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
Ed Morley
edeb5cd80c Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-10-12 11:59:59 +01:00
Chris Jones
c310927390 Bug 795657: Integrate native viewport configuration better into async pan-zoom code. r=jwir3,roc
This is a rollup of the following patches
 - Change the interpretation of FrameMetrics.mZoom to a "resolution-indepedent zoom", instead of a resolution-depedent scale factor. r=roc
 - Remove mention of "meta" from TabChild. r=roc
 - Remove some useless logging. r=roc
 - Tag FrameMetrics with its composition bounds at paint time. r=roc
 - Add a helper to calculate the render resolution for a FrameMetrics. r=roc
 - Add a helper to compute the approximate CSS dimensions a FrameMetrics will cover during composition. r=roc
 - BrowserElementScrolling doesn't actually care about zoom or resolution. r=roc
 - Accept the viewport that content has calculated, when it's received the latest widget geometry update. r=roc
 - Mechanically separate uses of zoom/resolution based on new definitions. r=roc
 - Convert GetViewportInfo()'s resolution-dependent scale into resolution-indepedent zoom. r=roc
 - Reinterpret defaultZoom == 0.0 as "intrinsic scale". r=jwir3,roc
2012-10-11 22:46:24 -07:00
Matt Woodrow
d6769ad8b7 Bug 795674 - Refactor DisplayItemData storage in FrameLayerBuilder. r=roc 2012-10-12 12:38:24 +13:00
Chris Lord
3f8854bee2 Bug 795674 - Reinstate underlying frame swap when merging nsDisplayScrollLayer. r=roc
This swap was removed with the work in Bug 785333, as layers were associated
with merged frames as well as their underlying frames. Since DLBI, this is no
longer the case, so reinstate this temporary fix for a very common case of
the underlying frame of a display-item changing.
2012-10-05 10:56:49 +01:00
Chris Jones
ca55cb45de Bug 790505, part 4: If we're just updating the transform of a prerendered layer, then schedule an empty transaction to skip unnecessary display-list overhead. r=mattwoodrow,roc 2012-10-02 22:55:52 -07:00
Chris Jones
c78629f9f8 Bug 790505, part 1: Have prerendered transform frames pretend that they don't have an opaque region so that we can move them around more efficiently. r=mattwoodrow 2012-10-02 22:55:50 -07:00
Chris Jones
17867c12a8 Back out bug 790505 for leaking 2012-10-03 00:21:08 -07:00
Chris Jones
4f1e40ca75 Bug 790505, part 4: If we're just updating the transform of a prerendered layer, then schedule an empty transaction to skip unnecessary display-list overhead. r=roc 2012-10-02 22:55:52 -07:00
Chris Jones
dd55277c3e Bug 790505, part 1: Have prerendered transform frames pretend that they don't have an opaque region so that we can move them around more efficiently. r=mattwoodrow 2012-10-02 22:55:50 -07:00
Doug Sherk
c0e08ee726 Bug 784908: Part 1: Change names of FrameMetrics variables to be more descriptive, add documentation, change some coordinate spaces. r=roc 2012-09-28 22:16:34 -04:00
Oleg Romashin
67b104cbd1 Bug 539356 - Part 20 - Simplify regions to avoid excessive region calculation. r=roc 2012-08-29 17:48:43 +12:00
Matt Woodrow
9de7f5c346 Bug 539356 - Part 14 - Handle multiple widget layer managers retaining data for the same frame. r=roc 2012-08-29 17:48:41 +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
f4205ce848 Bug 539356 - Part 9b - Add new frame invalidation API. r=roc 2012-08-29 17:39:01 +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
Oleg Romashin
13a2856362 Bug 539356 - Part 20 - Simplify regions to avoid excessive region calculation. r=roc 2012-08-29 17:48:43 +12:00
Matt Woodrow
05068168cf Bug 539356 - Part 14 - Handle multiple widget layer managers retaining data for the same frame. r=roc 2012-08-29 17:48:41 +12:00
Matt Woodrow
c73c0db2f1 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
Matt Woodrow
b01a10cd1c Bug 793132 - Make sure that only display lists get the reference frame adjusted transform. r=roc 2012-09-26 10:47:41 +12:00
Matt Woodrow
944b66cc36 Bug 792314 - Make nsDisplayTransform support untransformed frames. r=roc 2012-09-20 11:14:07 +12:00
Matt Woodrow
891faaf4e5 Bug 788044 - Make transformed frames the reference frame for their display list tree. r=roc 2012-09-16 22:32:59 +12:00
Matt Woodrow
77745de1bf Bug 788044 - Make various functions take const parameters. r=roc 2012-09-13 12:32:53 +12:00
Chris Lord
b3a668dd2a Bug 786502 - Fix background-attachment:fixed scrolling with page. r=roc
Fix the size check in nsDisplayBackground::ShouldFixToViewport so that async
scrolling of fixed backgrounds works correctly when zoomed in on Firefox
Mobile. Also make IsFixedItem in nsDisplayList public and use it in
FrameLayerBuilder, so that fixed items are determined and treated consistently.
2012-09-13 11:34:34 +01:00
Chris Lord
6b2dc34a0b Bug 786502 - Separate background layers into separate items. r=roc
Separate out background layers into separate display-list items, so that
backgrounds that are a mix of fixed and non-fixed layers will be treated
individually.
2012-09-13 11:34:23 +01:00
Chris Lord
9e0e5d24bf Bug 785333 - Store container layers against merged frames. r=roc
As well as storing the container layer against the underlying frame of the
container item, store it against its merged frames as well. In addition, check
for old container layers against merged frames when building a container layer.

This protects against losing the layer when the underlying frame of a container
item changes to either a new frame or an existing, merged frame.
2012-08-29 11:53:20 +01:00
Gavin Sharp
f99257a9f5 Back out bug 785333 (revisions 79345542f853 and a1756976e61d) to fix crasher bug 785626 2012-08-27 16:41:19 -07:00
David Zbarsky
5b8ee4d5ca Fix 2 logging calls I added today to also log the element and it's id, no bug, r=me 2012-08-26 00:14:31 -04:00
David Zbarsky
e0fe5ae49b Bug 785657 - Enable async animations in content processes r=cjones 2012-08-25 21:27:28 -04:00
David Zbarsky
6a9972f334 Bug 785648 - Improve OMTA logging r=cjones 2012-08-25 21:27:28 -04:00