Commit Graph

67 Commits

Author SHA1 Message Date
Kartikaya Gupta
65e8605d26 Bug 980500 - Allow scrollbars to be children of the scrollable container layer. r=botond 2014-04-11 19:12:44 -05:00
Kartikaya Gupta
31afc0a194 Bug 948377 - Remove unwanted rounding in CalculateCompositedRectInCssPixels; add a CalculateCompositedSizeInCssPixels also. r=botond 2014-03-28 10:36:47 -04:00
Chadd Williams
1035df8afc Bug 980493 - Transition FrameMetrics::mScrollId to use a getter/setter. r=botond
--HG--
extra : histedit_source : 1c84496d4b61f019e6e6cc24591ee3a10434e4cc
2014-03-21 17:48:08 -04:00
Botond Ballo
c169aeed9c Bug 980493 - Transition FrameMetrics::mScrollOffset to use a getter/setter. r=kats 2014-03-13 02:34:34 -04:00
Brian Birtles
32a6b5d8fd Bug 972199 part 1 - Make SampleAnimations filter out animations that are yet to start; r=nrc
When restoring the refresh driver after testing we can arrive at a situation
where a layer has an animation that has yet to start. However, calling
ElementAnimations::GetPositionInIteration with a negative value from the
compositor thread is an error.

This patch detects animations on the compositor thread that are yet-to-start and
skips them when sampling. It also moves the activeAnimations = true line up as
otherwise we would need special logic to wake up the compositor after the delay
has finished.
2014-03-05 10:19:15 +09:00
Matt Woodrow
a008f620fb Bug 966679 - Resolve RefLayers during IPDL transactions. r=nical 2014-02-11 17:01:20 +13:00
David Zbarsky
05bdc40a75 Bug 952977: Convert AsyncCompositionManager to gfx::Matrix4x4 r=nical 2014-01-27 15:25:21 -05:00
David Zbarsky
287bef7020 Bug 952977: Convert shadow transforms to gfx::Matrix4x4 r=nical 2014-01-27 10:29:27 -05:00
David Zbarsky
44eeb608e1 Bug 952977: Convert GetTransform to gfx::Matrix4x4 r=nical 2014-01-27 10:28:47 -05:00
David Zbarsky
1e61d187aa Bug 952977: Convert SetBaseTransform to gfx::Matrix4x4 r=nical 2014-01-27 10:28:33 -05:00
David Zbarsky
2cef9a18e8 Bug 952977: Convert GetLocalTransform to gfx::Matrix4x4 r=nical 2014-01-27 10:28:18 -05:00
Chris Lord
381ed51e56 Bug 958549 - Don't move scroll indicators for empty container layers. r=kats
If we've applied an async transform to an empty container layer (e.g. a layer
that corresponds to an nsDisplayScrollInfo display item), don't use that
transform on the corresponding scrollbar.
2014-01-22 14:25:44 +00:00
Chris Lord
173f125b57 Bug 950993 - Fix async scrolling of fixed layers within scrollable sub-layers. r=roc
Fixed layers are relative to their nearest scrollable ancestor, so when we
encounter a scrollable layer in AlignFixedAndStickyLayers, reset the transform
and sub-tree root to start from that scrollable layer.

This fixes async scrolling of the fixed header in the Firefox marketplace on
B2G.
2014-01-15 12:15:50 +00:00
Tor Arvid Lund
a98f5ad615 Bug 929513 - Change gfxSize references to gfx::Size r=nical 2013-12-13 18:31:53 +01:00
Kartikaya Gupta
f5fa7a6026 Bug 949310. r=BenWa 2013-12-12 13:34:50 -05: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
0612b4fc6d Bug 814435 - Apply a shadow transform to scrollbar layers to keep them in sync with async transforms. r=BenWa 2013-12-09 22:14:54 -05:00
Kartikaya Gupta
189805593c Bug 732971 - For Fennec move the resolution from the top-level presShell to the content presShell. r=BenWa
The bulk of this patch is fixing up pieces of code that infer the resolution
as the inverse of the scaling transform on the root layer. This used to be
how various bits of gfx code obtained the resolution, but now that we can set
the resolution on the actual presShell that contains the content, we can also
just read the resolution from the FrameMetrics directly.
2013-10-29 09:27:50 -04:00
L. David Baron
56054297a0 Bug 929673 Patch 1: Rename mozOrigin to transformOrigin to avoid use of deprecated CSS prefixes in variable names. r=dzbarsky 2013-10-24 14:46:00 +02:00
Corey Ford
dfec315ee7 Bug 897105 - Part 3: Keep sticky position layers fixed during async panning, within certain scroll ranges. r=roc 2013-09-11 21:24:32 -07:00
Botond Ballo
5fa50f4b24 Bug 912806 - Store both cumulative and non-cumulative resolutions in FrameMetrics and use whichever is appropriate. r=kats 2013-09-05 18:26:59 -04:00
Benoit Girard
ca00f294f2 Bug 914656 - Annotate the compositor thread for profiling. r=jrmuizel 2013-09-10 15:56:49 -04:00
Nicholas Cameron
8628de1017 Bug 903816. Include-what-you-use for gfx/layers. r=roc 2013-08-12 11:17:23 +12:00
Kartikaya Gupta
6bf3464260 Bug 903460 - Back out cset 9813b854b713 because it regresses panning behaviour on Android. r=me 2013-08-12 08:32:11 -04:00
Phil Ringnalda
be5f1b23e0 Back out d393cfeb5dbf:9f82224bb8a3 (bug 903816) for Android reftest failures
CLOSED TREE
2013-08-11 19:21:17 -07:00
Nicholas Cameron
59f7f45c1b Bug 903816. Include-what-you-use for gfx/layers. r=roc 2013-08-12 11:17:23 +12:00
Kartikaya Gupta
8792f2231a Bug 903460 - Apply the async transform after the CSS transform for a given layer. r=BenWa
Since the CSS transform includes a 1/resolution scaling factor, the translation
amount in the async transform is now in LayoutDevicePixels instead of LayerPixels.
The shadow tree transform is now effectively:
(1/resolution * rest of CSS transform * async translation * async resolution)
Whereas before it was
(async translation * async resolution * 1/resolution * rest of CSS transform)
2013-08-10 11:19:47 -04:00
Ryan VanderMeulen
2ebd22d781 Merge m-c to inbound. 2013-07-30 18:08:18 -04:00
Nicholas Cameron
841a60fca7 Bug 897839. Add some null checks for the compositor map. r=mattwoodrow 2013-07-31 09:45:42 +12:00
Kartikaya Gupta
2435f93954 Bug 866232 - Extract a GetCurrentAsyncTransform method in APZC. r=BenWa 2013-07-30 14:03:41 -04:00
Kartikaya Gupta
5c723f09e5 Bug 866232 - Add an APZCTreeManager to encapsulate the multiple APZCs corresponding to a given layer tree. r=BenWa, mattwoodrow 2013-07-30 14:03:40 -04:00
Chris Lord
f6b2427db2 Bug 886298 - Convert Layers fixed position margins to typed units. r=kats 2013-07-22 09:50:13 +01:00
Chris Lord
28526bfea8 Bug 886298 - Convert Layers fixed position anchor to typed units. r=kats 2013-07-22 09:50:09 +01:00
Chris Lord
29a13bb097 Bug 876542 - Restore async pan/zoom compensation behaviour during overscroll. r=roc
Bug 876542 introduces a patch that reworks how we maintain the position of
fixed position layers, but didn't handle overscroll/zoom. This restores the old
behaviour in this situation.
2013-07-22 09:50:07 +01:00
Chris Lord
f84974d92e Bug 876542 - Restore async fixed layer margin animation. r=roc, kats
Restore the reconciliation between content document fixed position margins at
render time and the fixed layer margins as retrieved via SyncViewportInfo
during async panning/zooming.
2013-07-22 09:50:05 +01:00
Robert O'Callahan
984f6e94b7 Bug 876542. Rework TransformFixedLayers so that it explicitly makes layer anchor points invariant under a change in transform of a specified ancestor layer. r=Cwiiis,kats 2013-06-24 13:34:33 +12:00
Kartikaya Gupta
0c24d26106 Bug 866265 - Use the resolution from the metrics object instead of inferring it from the layer transform. r=kentuckyfriedtakahe 2013-07-04 09:13:52 -04:00
Benoit Girard
a34b4b1e5b Bug 775459 - Make APZC attachable only to container layers. r=kats
--HG--
extra : rebase_source : 5a94d9958013f92e64db4781e09bdc9db4b66c9a
2013-07-02 12:01:46 -04:00
David Zbarsky
e4852e695c Remove unused argument to AsyncCompositionManager::WalkTheTree, no bug, r=mattwoodrow over irc 2013-06-29 11:53:49 -07:00
Kartikaya Gupta
19f7d51c44 Bug 883646 - Initialize transform variables for non-Fennec codepaths. r=kentuckyfriedtakahe 2013-06-21 17:03:57 -04:00
Kartikaya Gupta
f39a3aa067 Bug 883646 - Update the ViewTransform class to have a LayoutToScreen scale factor. r=kentuckyfriedtakahe, BenWa 2013-06-21 17:03:57 -04:00
Kartikaya Gupta
e6d307eeca Bug 883646 - Propagate the ScaleFactor classes far and wide. r=kentuckyfriedtakahe 2013-06-21 17:03:56 -04:00
Kartikaya Gupta
19a2597e70 Bug 883646 - Apply the mDevPixelsPerCSSPixel scaling factor in a few places. r=kentuckyfriedtakahe 2013-06-21 17:03:55 -04:00
Ryan VanderMeulen
89cd9674cd Backed out 7 changesets (bug 883646) for reftest-ipc failures.
Backed out changeset 2272804a8e71 (bug 883646)
Backed out changeset e39d3bdf847a (bug 883646)
Backed out changeset bf46fc332efe (bug 883646)
Backed out changeset 6bb558c3136f (bug 883646)
Backed out changeset d7d5d16e27e0 (bug 883646)
Backed out changeset 14c73096a132 (bug 883646)
Backed out changeset 89f6185a271b (bug 883646)
2013-06-20 17:36:39 -04:00
Kartikaya Gupta
f1493d9dae Bug 883646 - Update the ViewTransform class to have a LayoutToScreen scale factor. r=kentuckyfriedtakahe, BenWa 2013-06-20 16:10:58 -04:00
Kartikaya Gupta
bc7a93a250 Bug 883646 - Propagate the ScaleFactor classes far and wide. r=kentuckyfriedtakahe 2013-06-20 16:10:58 -04:00
Kartikaya Gupta
c2a7c58533 Bug 883646 - Apply the mDevPixelsPerCSSPixel scaling factor in a few places. r=kentuckyfriedtakahe 2013-06-20 16:10:57 -04:00
Kartikaya Gupta
94dd1b2c73 Bug 880676 - Replace a couple of Rect scaling functions with strongly typed operators. r=BenWa 2013-06-14 16:11:31 -04:00
Kartikaya Gupta
3c498464ed Bug 880676 - Introduce a ScaleFactor struct and use it to type conversions between units. r=BenWa,kentuckyfriedtakahe 2013-06-14 16:11:31 -04:00
Kartikaya Gupta
35149c0bb7 Bug 880676 - Make the ViewTransform classes store the unscaled layer translation. r=BenWa 2013-06-14 16:11:30 -04:00