Commit Graph

415 Commits

Author SHA1 Message Date
Matt Woodrow
949de08277 Backout Bug 861805 for causing Bug 871729. rs=roc 2013-06-10 12:13:10 +12:00
Robert O'Callahan
7f35fbcd56 Bug 868082. Allow SetIsFixedPosition to be used on layers with transforms. In CompositorParent, use the animated transform value as the base transform in CompositorParent::TransformFixedLayers when it has been set by the animation sampler. r=cwiis
--HG--
extra : rebase_source : 3b809428bf8740753a98defc30ad7b7d96339442
2013-05-17 00:34:24 +12:00
Jonathan Watt
bf6b128469 Bug 870816 - Replace DEBUG_INVALIDATIONS with a pref called nglayout.debug.invalidation. r=mattwoodrow 2013-05-14 00:47:02 +01:00
Jonathan Watt
78d6740b24 Bug 870192 - Prevent rounding issues in gfxMatrix::ScaleFactors from combinging with timing issues to cause sporadic invalidation of transforming elements. r=roc 2013-05-13 00:12:19 +01:00
Masatoshi Kimura
761bf787f0 Bug 859018 - Remove the MSVC exemption for FAIL_ON_WARNINGS in layout. r=dbaron 2013-04-28 19:02:35 +09:00
Ryan VanderMeulen
5376b3dcca Backed out changeset 4a55715677d7 (bug 856807) for intermittent Linux32 reftest-ipc timeouts. 2013-04-19 11:17:21 -04: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
223146b735 Bug 856807. Add apparently-pointless call to SetClipRect(nullptr) to avoid Android regression. r=mattwoodrow 2013-04-19 22:04:04 +12:00
Jonathan Watt
082ba25ac4 Bug 861805 - Stop layers from snapping transforms for SVG content. r=roc 2013-04-15 13:30:28 +01: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
7fde7ae78c Bug 841192. Part 3: Make DisplayItemClip members private and encapsulate them in a real API. r=mattwoodrow
--HG--
extra : rebase_source : d6076e123603de9a1c48681f527719cd41b09883
2013-03-04 22:56:00 +13:00
Robert O'Callahan
74c9caea47 Bug 841192. Part 2: Move FrameLayerBuilder::Clip to DisplayItemClip. r=mattwoodrow
--HG--
extra : rebase_source : 2950e5dd64e217a406ede2dc9f6682b5e0540975
2013-03-04 22:55:59 +13:00
Nicholas Cameron
90c04a5e03 Bug 856272; don't round our mask size too early so we get a proper transform for small surfaces. r=roc 2013-04-05 16:16:38 +13:00
Matt Brubeck
11834fef4e Back out 795e9ec338a7 (bug 856272) because of test failures 2013-04-04 17:40:16 -07:00
Nicholas Cameron
04b8d0946c Bug 856272; don't round our mask size too early so we get a proper transform for small surfaces. r=roc 2013-04-05 12:42:14 +13:00
Matt Woodrow
02007e421a Bug 855233 - Recreate mask layers if the ContainerParameters offset changes. r=nrc 2013-04-04 15:59:24 +13: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
1cda36613a Bug 852489. Part 6: Don't temporarily reset clip when recycling Thebes/Image/ColorLayers. r=mattwoodrow
--HG--
extra : rebase_source : 28ac0c65edef8d2f0de2e79003370520066508e7
2013-03-22 15:17:29 +13:00
Robert O'Callahan
9c2443b17a Bug 852489. Part 5: Don't temporarily reset clip rect when reusing an existing layer. r=mattwodrow
--HG--
extra : rebase_source : 65ace15a404e25e14c02e514077997554d36f092
2013-03-22 15:17:29 +13:00
Robert O'Callahan
11da332212 Bug 852489. Part 4: Don't call RepositionChild if the layer is already in the right position. r=mattwoodrow
--HG--
extra : rebase_source : 1a3be842c65ab00dc7a72361e522e5343e5de967
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
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
Paul Rouget
38a173fccd Bug 847890 - paint flashing for content only. r=roc 2013-03-12 11:01:00 -07:00
Ed Morley
6a8c65a07f Backed out changeset eaf182f23c3a (bug 847890) for failures in test_bug847890_paintFlashing.html on a CLOSED TREE 2013-03-13 10:06:34 +00:00
Paul Rouget
09f83d1399 Bug 847890 - paint flashing for content only. r=roc 2013-03-12 11:01:00 -07:00
Matt Woodrow
7876915769 Bug 846971 - Don't create layers that are scaled to 0. r=roc 2013-03-06 09:04:40 +13:00
Robert O'Callahan
ff837639e6 Bug 845526 - Limit complexity of invalid region in RemoveFrameFromLayerManager. r=mattwoodrow 2013-03-02 12:21:00 -05:00
Ed Morley
8040985ec5 Backed out changeset 05c35dc73323 (bug 845526) 2013-02-27 12:49:29 +00:00
Robert O'Callahan
bffb159b08 Bug 845526. Limit complexity of invalid region in RemoveFrameFromLayerManager. r=mattwoodrow
--HG--
extra : rebase_source : ca0a1d7928c991604d5979bcf35b4fcea462c31a
2013-02-27 16:05:32 +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
Anthony Jones
3c191a8ead Bug 825808 - Fix animations by marking transforms as not fixed. r=roc 2013-01-12 15:48:55 -05:00
Nicholas Cameron
3ad3f5b421 Bug 824454; use the resolution scale in OMTA transforms. r=cjones; a=blocking-basecamp
--HG--
extra : rebase_source : 8f045dd319418b771c5f31ca2f3477ab5673a5ad
2013-01-08 10:39:12 +01:00
Nicholas Cameron
9b79ff5d5b Bug 822231; use the maximum scale for animated scaling. r=roc 2012-12-21 16:58:17 -05:00
Justin Lebar
326d9f9fdf Bug 819791 - Part 8: Use explicit TArray copy constructors in FrameLayerBuilder. r=roc 2012-12-18 20:16:06 -05:00
Matt Woodrow
35435d86a2 Bug 821995 - Revert an incorrect change to matrix multiplication in ChooseScaleAndSetTransform. r=roc 2012-12-18 18:58:44 +13:00
Jeff Walden
7146c23e80 Bug 820570 - Move mozilla::DebugOnly into DebugOnly.h to pare down the grab-baggish Util.h. r=Ms2ger 2012-12-14 18:58:45 -05:00
Matt Woodrow
f995da7b0f Backout changeset 3ba90f85653a (Bug 805343) for regressing android talos tests 2012-12-14 11:51:00 +13:00
Matt Woodrow
5c2d424a58 Backout changeset e8f5182d94c5 (Bug 805343) for regressing android talos tests 2012-12-14 11:50:57 +13:00
Matt Woodrow
1bc8a88aa8 Bug 820541 - Only call ProcessRemovedDisplayItems once per transaction. r=roc 2012-12-13 09:47:05 +13:00
Robert O'Callahan
2e8615df8f Bug 663776. Part 1: When determining whether the scale factors hav changed, we need to use GetBaseTransform for the old scale factors, because that's what stores the old transform that we computed scale factors from. r=mattwoodrow
--HG--
extra : rebase_source : 48be38242fa6bf51644dc45a804dd834e7eb97b7
2012-12-07 12:58:12 +13:00
Nicholas Cameron
2b16f074f3 Bug 782368; undo patch from 780868. r=mattwoodrow
--HG--
extra : rebase_source : 6eb5a907d4e1eafa6bc7c6dd5d185c28a4c248be
2012-12-12 10:57:52 +13:00