Commit Graph

377 Commits

Author SHA1 Message Date
Timothy Nikkel
d6b8f8b755 Bug 1164340. Convert the scrollbar thumb ratio to a unitless ratio properly for non-zoomable scrollframes. r=botond 2015-05-13 19:15:38 -05:00
Timothy Nikkel
db9bd74f96 Bug 1163259. Make sure we don't look at the parent ref layer when looking for a layer with the frame metrics for a scrollbar. r=kats
The ref layer comes from the parent process, and hence a different scrollid space. If the scrollid on it's metrics happen to match a scrollbar from the child process we have a problem.
2015-05-12 00:13:04 -05:00
Kartikaya Gupta
cb5c22758d Bug 1160566 - Make FrameMetrics.mCompositionBounds private and add a getter/setter for it. r=botond 2015-05-07 14:44:03 -04:00
Thibaud Backenstrass
253b857733 Bug 1158122 - Remove all occurences of nsIntRect in gfx/layers/composite. r=nical 2015-05-07 11:07:42 +02:00
Danilo Cesar Lemes de Paula
2f7f4ebf4f Bug 1156401 - Fix painting when building fennec with apzc. r=kats, r=botond
Since SetFirstPaintViewport wasn't being called on
Fennec with APZ, none of the painted content was being displayed.
2015-04-30 06:08:00 -04:00
Brian Birtles
67c6bec9aa Bug 1159082 - Rename *Readonly animation interfaces to *ReadOnly. r=smaug 2015-04-30 09:06:43 -04:00
Carsten "Tomcat" Book
49dcd0d63c Backed out changeset 1b5fc672f0d4 (bug 1159082) for B2G ICS Emulator opt R6 test failures on a CLOSED TREE 2015-04-30 13:15:04 +02:00
Brian Birtles
e3179b0530 Bug 1159082 - Rename *Readonly animation interfaces to *ReadOnly; r=smaug 2015-04-28 10:16:45 +09:00
Kartikaya Gupta
f4dd5374f4 Bug 1158933 - Replace the compositedHeight/scrollableHeight (and width) term with the adjusted scrollThumbRatio. r=botond 2015-04-29 07:22:27 -04:00
Kartikaya Gupta
6661eab85d Bug 1158933 - Prevent scrollbars from jumping while zoomed in the B2G browser. r=botond 2015-04-29 07:22:27 -04:00
Timothy Nikkel
3a8b15b000 Bug 1157066. When reading back the OMTA transfrom of a layer don't include transforms from async panning or zooming. r=kats,birtles
Containerless scrolling means that the pan zoom controller applies it's transforms (to compensate for differences between the state of layout the last time we painted and the current state as composited to the screen) to the layers that are scrolled instead of the container layer that contains the layers that scroll.

When running test_animations_omta.html there is a zoom of 1.306122 applied, and the page is scrolled down to 67 screen pixels (before the test starts, not sure why exactly). Gecko scrolls as close to 67 screen pixels as it can: 67/1.306122 = 51.29689 css pixels, which is 3077.813 appunits. Gecko scrolls to 3078 app units. When AsyncCompositionManager::TransformScrollableLayer runs we calculate the scroll position of gecko and the current scroll position that the pan zoom controller is using. Since there are no async pan or zoom operations taking place these should match. However when the gecko scroll position is calculated we get 3078/60*1.306122 = 67.0040586. So it applies a transform of 0.0040586 to the container layer for the transform that test_animations_omta.html is animating off main thread. When test_animations_omta.html reads the transform of this layer it fails because it's expecting 0 and 0.0040586 is outside of it's epsilon for considering it to be close enough.
2015-04-24 19:05:52 -05:00
Wes Kocher
d068b7e113 Backed out changeset 517b9b831685 (bug 1157066) for build bustage 2015-04-24 14:56:55 -07:00
Timothy Nikkel
29c16525f7 Bug 1157066. When reading back the OMTA transfrom of a layer don't include transforms from async panning or zooming. r=kats,birtles
Containerless scrolling means that the pan zoom controller applies it's transforms (to compensate for differences between the state of layout the last time we painted and the current state as composited to the screen) to the layers that are scrolled instead of the container layer that contains the layers that scroll.

When running test_animations_omta.html there is a zoom of 1.306122 applied, and the page is scrolled down to 67 screen pixels (before the test starts, not sure why exactly). Gecko scrolls as close to 67 screen pixels as it can: 67/1.306122 = 51.29689 css pixels, which is 3077.813 appunits. Gecko scrolls to 3078 app units. When AsyncCompositionManager::TransformScrollableLayer runs we calculate the scroll position of gecko and the current scroll position that the pan zoom controller is using. Since there are no async pan or zoom operations taking place these should match. However when the gecko scroll position is calculated we get 3078/60*1.306122 = 67.0040586. So it applies a transform of 0.0040586 to the container layer for the transform that test_animations_omta.html is animating off main thread. When test_animations_omta.html reads the transform of this layer it fails because it's expecting 0 and 0.0040586 is outside of it's epsilon for considering it to be close enough.
2015-04-24 16:41:56 -05:00
L. David Baron
99cf80cc3c Bug 1156456 patch 3 - Send transform origin and perspective origin to layer in device pixels rather than CSS pixels. r=birtles 2015-04-22 19:37:04 -07:00
L. David Baron
5527a278a1 Bug 1156456 patch 2 - Transform the z component just like the x and y. r=birtles
I confirmed locally that this patch fixes the reftest (per reftest.list
change).
2015-04-22 19:37:04 -07:00
Brian Birtles
245d56b34b Bug 1154615 part 1 - Rename AnimationPlayer to Animation in WebIDL; r=smaug
This patch is a fairly minimal rename of the AnimationPlayer interface. It
leaves a bunch of local variables and helper classes still using the word
"player". These will be addressed in subsequent patches that don't require DOM
peer review.
2015-04-21 10:22:09 +09:00
Brian Birtles
b23bc79d92 Bug 1153734 part 2 - Rename Animation to KeyframeEffectReadonly; r=smaug
We define KeyframeEffectReadonly in KeyframeEffect.cpp since Web Animations also
defines KeyframeEffect and when we come to implement that I expect we'll define
it in the same class, maybe even using the same object.

This patch also adds a few missing includes in places where
KeyframeEffectReadonly is used so that we're not just cargo-culting it in.
2015-04-15 08:48:21 +09:00
Ying-Ruei Liang (KK)
2c219b4aaf Bug 1143522 - Convert Layer::mClipRect to ParentLayerIntRect. r=botond
Change interface of getter/setter for mClipRect,
also necessary modification for codes that use these resources.

* * *
Bundle mUseClipRect and mClipRect as Maybe<ParentLayerIntRect> mClipRect
2015-04-11 22:03:00 -04:00
David Anderson
5ae9e8b290 Scrollbar thumbs can overlap scrollbar arrows during APZ scrolling. (bug 1152469, r=botond,mstange) 2015-04-12 23:03:02 -04:00
David Anderson
e778138567 Fix async transforms on scrollbars not including any existing shadow transform. (bug 1128740 part 2, r=botond) 2015-04-07 00:50:15 -07:00
David Anderson
c1b70931b4 Fix the order async transforms are applied to scrollbars. (bug 1128740 part 1, r=botond) 2015-04-07 00:50:13 -07:00
David Anderson
8a21b4d440 Fix AsyncCompositionManager not comparing layer tree IDs when finding scrollbar targets. (bug 1151169, r=kats) 2015-04-06 11:27:07 -07:00
Botond Ballo
e7e070f1e8 Bug 1145730 - Restrict the async transforms applied to mask layers to those caused by fixed-position adjustment. r=kats 2015-04-01 16:47:05 -04:00
L. David Baron
9de967c23a Bug 847287 patch 13 - Apply animations/transitions on the layer in the order that reflects how they override, rather than the opposite. r=birtles
This independently would have fixed some of the problems fixed in this
bug.  It would not have fixed them fully, though, since it would not
have prevented us from sending animations being covered up by !important
rules to the compositor.
2015-03-31 15:05:55 -07:00
Botond Ballo
5272cb578e Bug 1036967 - Use ScaleFactors2D instead of ScaleFactor where appropriate in APZ and surrounding code. r=kats 2015-03-06 13:54:10 -05:00
Botond Ballo
1eee6d6fb2 Bug 1141488 - On non-APZ platforms, combine any async transform with the OMTA transform rather than clobbering it the OMTA transform. r=kats 2015-03-11 13:18:52 -04:00
Kartikaya Gupta
c5517ecec8 Bug 1130982 - Ensure the clip rect is appropriately adjusted for multi-framemetrics layers. r=botond 2015-02-20 16:01:41 -05:00
Nicholas Nethercote
0247de46d8 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo. 2015-02-09 14:34:50 -08:00
Andrew McCreight
e048a7df33 Back out Bug 1127201 (part 2) for various problems. 2015-02-06 15:04:32 -08:00
Nicholas Nethercote
40ab0270d5 Bug 1127201 (part 2) - Convert all NS_ABORT_IF_FALSE calls to MOZ_ASSERT. r=Waldo. 2015-02-04 20:05:36 -08:00
Surabhi Anand
b5b1e8520c Bug 1120203 - Transitioning mPresShellResolution field of FrameMetrics to use getters/setters. r=kats 2015-01-16 16:15:52 -05:00
Botond Ballo
f174d5a8ff Bug 1120400 - Adjust the code for aligning fixed and sticky layers to account for the transform changes in bug 1076241. r=kats 2015-01-12 16:51:04 -05:00
Botond Ballo
713fb87f7c Bug 1088984 - Account for the async scale correctly when transforming the scroll thumb in the compositor. r=kats 2014-10-24 20:14:56 -04:00
Botond Ballo
6c9439a5e0 Bug 1076241 - Get rid of the nontransient async transform. r=kats 2014-12-19 18:53:05 -05:00
Cameron McCormack
40dc114ddc Bug 1116427 - Remove unneeded nsCSSPropList.h include from AsyncCompositionManager.h. r=nrc 2015-01-05 22:03:28 +11:00
Kushan Joshi
b4d526cbbf Bug 1116008 - Make FrameMetrics::mCriticalDisplayPort private. r=kats 2014-12-30 14:07:57 -05:00
Leonid V. Fedorenchik
0f3923a572 Bug 1115327 - Changed FrameMetrics.mScrollableRect to be accessible by getter/setter methods. r=kats 2014-12-27 12:48:27 -05:00
Yan Gouts
f75d626d81 Bug 1113774 - Transitioned FrameMetric mDisplayPort accesses to Get/Set method calls. r=kats 2014-12-23 10:35:58 -05:00
Brian Birtles
23dfa5deff Bug 927349 part 13 - Update start times on animations in layers when the animation ready time is resolved; r=nical 2014-12-22 09:35:41 +09:00
Prabhjyot Singh Sodhi
cd58e9ca1d Bug 1112830 - Changed mCumulativeResolution of FrameMetrics.h to private and all correspondings files using this variable using getters and setters;r=kats 2014-12-18 19:33:18 -05:00
Prabhjyot Singh Sodhi
560e8eee1c Bug 1101620 - Changed mDevPixelsPerCSSPixel of FrameMetrics.h to private and all corresponding files using this variables using getters and setters;r=kats 2014-12-17 17:14:05 -05:00
Kartikaya Gupta
0998727bdc Bug 1100140 - When a scrollable layer is marked as fixed-position, don't treat it as fixed relative to itself. r=botond 2014-11-19 13:41:48 -05:00
Botond Ballo
8e10bf2d87 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats 2014-11-10 14:35:11 -05:00
Botond Ballo
5ff0017ed7 Bug 1076163 - Clean up the resolution-related fields and methods in FrameMetrics. r=kats 2014-10-20 17:12:35 -04:00
Carsten "Tomcat" Book
4a50bc99ae Backed out changeset 71fe4233208a (bug 1076163) 2014-11-13 11:47:35 +01:00
Carsten "Tomcat" Book
52d5b03991 Backed out changeset a96930f1e26b (bug 1055741) 2014-11-13 11:47:31 +01:00
Botond Ballo
031c8b1c39 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats 2014-11-10 14:35:11 -05:00
Botond Ballo
4bdb5115eb Bug 1076163 - Clean up the resolution-related fields and methods in FrameMetrics. r=kats 2014-10-20 17:12:35 -04:00
Kartikaya Gupta
273c06a82d Bug 1091296 - When applying the APZ transform on a layer, make sure not to clobber any existing OMTA transform. r=mattwoodrow 2014-11-11 10:54:02 -05:00
Kartikaya Gupta
f73c12544e Bug 1091296 - Remove the redundant code for clearing async transforms per frame of composition. r=mattwoodrow
We already reset the shadow transform to the layer transform in
SetShadowProperties() before compositing every frame, so this is redundant.
2014-11-11 10:53:57 -05:00