Commit Graph

337 Commits

Author SHA1 Message Date
Nicholas Nethercote
177f76c5cc Bug 1298722 - Use MOZ_MUST_USE in StyleAnimationValue. r=birtles. 2016-08-30 16:10:59 +10:00
Boris Chiou
d47a637f93 Bug 1049975 - Part 5: Move timing related code into AnimationEffectReadOnly. r=birtles
Move the mTiming, mAnimation, and the implementaion of timing into
AnimationEffectReadOnly.

MozReview-Commit-ID: EZhlbphVvCo
2016-07-25 18:27:33 +08:00
Hiroyuki Ikezoe
065f63bf9a Bug 1279071 - Change GetOpacity to GetAnimationOpacity to return opacity value applied by animation. r=birtles,mstange
MozReview-Commit-ID: 6rMUlnppOeK
2016-08-25 09:07:56 +09:00
Brian Birtles
b95d814ea1 Bug 1286476 part 2 - Respect the playback rate when calculating phase boundaries; r=hiro
This implements the spec change in 21de090dac

The spec change refers to a binary 'animation direction' flag. Instead of that,
however, we just pass the playback rate along and use it inside
GetComputedTimingAt since this seems simpler.

Also, this patch moves the implementation of
KeyframeEffectReadOnly::GetComputedTiming from the header file into the .cpp
file. This is because with this change, GetComputedTiming needs to call
mAnimation->PlaybackRate() and so mozilla::dom::Animation needs to be a complete
type. However, simply including Animation.h doesn't work because of a cyclic
dependency between KeyframeEffect.h and Animation.h. We might be able to fix
this later but since yet-to-land bug 1049975 moves this code around a lot, I'd
rather not touch it too much just now.

MozReview-Commit-ID: 1h6XRh4xmfI
2016-08-17 08:28:41 +09:00
Wes Kocher
c7a7ed3ee4 Backed out 3 changesets (bug 1286476) for frequent windows wpt failures in phases-and-states.html CLOSED TREE
Backed out changeset 53bbfa02d45d (bug 1286476)
Backed out changeset 3947ab570883 (bug 1286476)
Backed out changeset ffd8c37eb695 (bug 1286476)
2016-08-17 10:41:46 -07:00
Brian Birtles
af36ab2fce Bug 1286476 part 2 - Respect the playback rate when calculating phase boundaries; r=hiro
This implements the spec change in 21de090dac

The spec change refers to a binary 'animation direction' flag. Instead of that,
however, we just pass the playback rate along and use it inside
GetComputedTimingAt since this seems simpler.

Also, this patch moves the implementation of
KeyframeEffectReadOnly::GetComputedTiming from the header file into the .cpp
file. This is because with this change, GetComputedTiming needs to call
mAnimation->PlaybackRate() and so mozilla::dom::Animation needs to be a complete
type. However, simply including Animation.h doesn't work because of a cyclic
dependency between KeyframeEffect.h and Animation.h. We might be able to fix
this later but since yet-to-land bug 1049975 moves this code around a lot, I'd
rather not touch it too much just now.

MozReview-Commit-ID: 1h6XRh4xmfI
2016-08-17 08:28:41 +09:00
Randall Barker
bac11cde77 Bug 1291373 - [geckoview] part 3, Remove MOZ_ANDROID_APZ r=botond,snorp 2016-08-16 14:33:43 -07:00
David Anderson
67d2c40688 Send vsync rates to the compositor to avoid querying gfxPlatform. (bug 1288822, r=mchang) 2016-07-26 01:57:11 -07:00
Botond Ballo
589d851fe8 Bug 1214151 - If a sticky element does not consume all of the un-adjustment for an async transform, allow a descendant fixed or sticky element to consume it. r=mstange
MozReview-Commit-ID: HHGjs4GZGNX
2016-06-29 18:25:31 -04:00
Nicholas Nethercote
851753a95d Bug 1286709 - Assert the non-nullness of an GetApzc() call's return value. r=kats. 2016-07-15 09:19:57 +10:00
Bob Owen
e10d32b78f Bug 1285991: Improve ForEachNode use in Resolve/DetachRefLayers. r=mattwoodrow 2016-07-13 07:28:02 +01:00
Carsten "Tomcat" Book
c2d94ceb76 Backed out changeset 6044eec77a2c (bug 1285991) for bustage on a CLOSED TREE 2016-07-12 11:45:54 +02:00
Bob Owen
149feada29 Bug 1285991: Improve ForEachNode use in Resolve/DetachRefLayers. r=mattwoodrow 2016-07-12 10:18:23 +01:00
Hiroyuki Ikezoe
ba2595fb00 Bug 1208411 - Delay vsync timestamps on the compositor to make async animations more sync. r=mchang,mstange
MozReview-Commit-ID: Aes0jyOnojn
2016-06-23 06:24:39 +09:00
David Anderson
280ba1bbfc Move CompositorBridgeParent::IsInCompositorThread to CompositorThreadHolder. (bug 1273017 part 3, r=mattwoodrow) 2016-05-15 23:40:13 -07:00
Botond Ballo
cc530c3c37 Bug 1267438 - Minor cleanup to AsyncCompositionManager. r=kats
MozReview-Commit-ID: 8DlQzhsjUOO
2016-05-11 19:39:37 -04:00
Kevin Wern
4d07bc92ea Bug 1227231: Use generic tree traversal algorithms for loops over Layer trees. r=botond
Create an Iterator type with classes ForwardIterator and ReverseIterator,
having GetFirstChild/GetNextSibling and GetLastChild/GetPrevSibling
methods, respectively. Specify the iterator type for each call to
ForEachNode. With this, we can support trees with forward and reverse
sibling structures.

Additionally, apply these algorithms to all Layer recursive traversals,
where applicable. Update tests to ensure both directions yield expected
results.

MozReview-Commit-ID: iYpX22XHTa
2016-03-10 01:20:40 -08:00
Botond Ballo
cb8a8e5b3d Bug 1267438 - Remove the redundant aTransformAffectsLayerClip argument to AlignFixedAndStickyLayers. r=mstange
MozReview-Commit-ID: AjHA70EdCeX
2016-05-04 20:20:57 -04:00
Botond Ballo
a8eb3b8312 Bug 1267438 - Remove the (no longer used) isClipFixed=false annotation. r=mstange
MozReview-Commit-ID: LicG7zFHnX3
2016-05-04 20:07:42 -04:00
Botond Ballo
2e3613f202 Bug 1267438 - Use the scrolled clip in AsyncCompositionManager. r=mstange
MozReview-Commit-ID: LjV8bEhCexE
2016-05-10 01:10:29 -04:00
Botond Ballo
c830b3a985 Bug 1267438 - During AlignFixedAndStickyLayers, only un-adjust the fixed portion of a layer's clip rect. r=mstange
MozReview-Commit-ID: 62JVHL5AVhP
2016-05-11 15:16:57 -04:00
Botond Ballo
4ee568181f Bug 1267438 - Factor out a helper function to check if a layer is fixed or sticky. r=mstange
MozReview-Commit-ID: A1qrxW3KVVE
2016-05-04 17:32:12 -04:00
Botond Ballo
38fa31a24e Bug 1267438 - Group ScrollMetadata's optional clip rect and mask layer index into a LayerClip structure. r=mstange
MozReview-Commit-ID: 6W0GZYkioov
2016-04-29 16:14:21 -04:00
Botond Ballo
69d04c0329 Bug 1267470 - Move more fields from FrameMetrics to ScrollMetadata. r=kats
MozReview-Commit-ID: zxtt1NNcDe
2016-04-27 16:06:34 -04:00
Botond Ballo
0257b4cdc4 Bug 1257288 - Move IntersectMaybeRects() to gfx/2d/Rect.h. r=kats
MozReview-Commit-ID: C99GwsLN7Zg
2016-04-20 17:16:09 -04:00
Markus Stange
6f18899649 Bug 1260335 - On perspective ContainerLayers, the clip deferred from their child layer needs to be affected by the perspective layer's async transforms. r=botond
MozReview-Commit-ID: EEgsdFXGI1E
2016-04-04 23:21:31 -04:00
Markus Stange
175f7d8f7f Bug 1260335 - Add a comment that explains why the perspective child can't have more than one frame metrics. r=mattwoodrow
MozReview-Commit-ID: BsB8XRtUd4b
2016-03-30 15:34:03 -04:00
Kartikaya Gupta
ecdfedf982 Bug 1246290 - Add the ability for APZCs to not expose async transforms. r=botond
The call site is responsible for indicating whether or not the APZC should respect
the force-disable flag in the APZCs. This is because we only want to respect that
flag when doing visual transforms (similar to how scrollinfo layers work) and not
when doing transforms on input events.

MozReview-Commit-ID: Dqgz6fqJGXG
2016-04-03 13:13:58 -04:00
Kartikaya Gupta
999590f917 Bug 1246290 - Refactoring to get rid of SampleContentTransformForFrame from AsyncPanZoomController. r=botond
MozReview-Commit-ID: Kh6ptJ7tQms
2016-04-03 13:13:58 -04:00
Botond Ballo
aa2fd58a6a Bug 1219296 - Split fields not needed for repaints out from FrameMetrics. r=kats
MozReview-Commit-ID: DymHOSI6yYK
2016-03-28 19:14:52 -04:00
Daisuke Akatsuka
08e53c4d53 Bug 1248532 - Part 1: steps-start does not produce correct value at the beginning of the interval. r=birtles
MozReview-Commit-ID: F9b1HCfEqU6
2016-04-01 14:00:57 +09:00
David Anderson
7b7cd394cc Rename PCompositor to PCompositorBridge. (bug 1258479 part 2, r=mattwoodrow) 2016-03-22 14:08:38 -04:00
Daisuke Akatsuka
6e47cd9f0c Bug 1237173 - Part2: Change type of duration to Maybe<StickyTimeDuration>. r=birtles 2016-03-09 14:14:20 +09:00
Daisuke Akatsuka
8c6c245e91 Bug 1248338 - Implement iterationStart; r=birtles 2016-03-02 16:23:34 +09:00
Andrew Moser
7ebd5a44a6 Bug 1249937 - Rename LayerComposite::SetShadowTransform to SetShadowBaseTransform. r=botond 2016-02-26 21:36:52 -05:00
Matthew S
278c60d3fc Bug 1247450 - Rename LayerComposite::GetShadowTransform to GetShadowBaseTransform. r=botond
MozReview-Commit-ID: 4HkKFCDQW4l
2016-02-20 19:05:59 -05:00
Hiroyuki Ikezoe
5673727fa5 Bug 1216842 - Part 10: Remove the limit of the computed timing progress. r=birtles
Now we produce computed timing progress outside [0,1] range.
We use the last segment to calculate animation values if the value is greater than 1.
We use the first segment to calculate animation values if the value is lesser than 0.
2016-02-18 14:20:00 +01:00
Botond Ballo
cf3eefd9e4 Bug 1247452 - Use the effective visible region rather than the visible region where appropriate in the compositor. r=mattwoodrow
MozReview-Commit-ID: 6wbe0kUWh9h
2016-02-12 20:24:38 -05:00
Birunthan Mohanathas
bfee0fb40c Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Hiroyuki Ikezoe
b2a7c628a6 Bug 1216842 - Part 7: Add easing function to laryer::Animation. r=cam 2016-01-26 21:19:00 +01:00
Hiroyuki Ikezoe
1bbc6e0c4e Bug 1216842 - Part 2: Add LayerAnimationUtils. r=cam
This is also for compositor side.
we need a new class to share the function which converts TimingFunction
to ComputedTimingFunction for either keyframe's timing function or keyframe
effect's timing function.
2016-01-29 14:44:00 +01:00
Phil Ringnalda
d871b9515f Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas
245cd6a02f Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Boris Chiou
427e00a9b4 Bug 1214536 - Part 7: Rename AnimationTiming as TimingParams. r=birtles, r=smaug
1. struct AnimationTiming -> struct TimingParams
2. AnimationEffectReadOnly::TimingAsObject() -> AnimationEffectReadOnly::Timing()
3. KeyframeEffectReadOnly::Timing() -> KeyframeEffectReadOnly::SpecifiedTiming()
2016-01-13 18:41:00 +01:00
Boris Chiou
8d3197c34c Bug 1214536 - Part 4: Use OwingUnrestrictedDoubleOrString for duration. r=birtles
We store the original value of duration in AnimationTiming, and add
computed duration in ComputedTiming, so both the Timing model and
AnimationEffectTimingReadOnly can get what they want.

By the way, replace mIterationDuration with mDuration.
2016-01-13 18:36:00 +01:00
Boris Chiou
0f434dc51e Bug 1214536 - Part 3: Store the original value of fill. r=birtles
FillMode could be 'auto', and we should treat it as 'none' in the timing model.
However, AnimationEffectTimingReadOnly should get its original value.

By the way, replace mFillMode with mFill.
2016-01-13 18:36:00 +01:00
Boris Chiou
e35945298c Bug 1214536 - Part 2: Replace mIterationCount in layers::Animation. r=birtles
Replace mIterationCount with mIterations.
2015-12-27 18:51:00 +01:00
Boris Chiou
388b167a82 Bug 1214536 - Part 1: Use unrestricted double for iterations. r=birtles
We want to store the original value from KeyframeEffectOptions whose
iterations is unrestricted double. Therefore, we can get the original value
of iterations by AnimationEffectTimingReadOnly.

By the way, replace mIterationCount with mIterations.
2016-01-10 18:41:00 +01:00
Botond Ballo
3aeef5636b Bug 1236750 - Use strongly-typed matrices to represent layer transforms in APZ code. r=kats 2016-01-04 20:07:54 -05:00
Botond Ballo
1c4faed6a9 Bug 1236750 - Rename ViewTransform to AsyncTransform. r=kats
It's only used to represent async transforms, and making this clear
allows us to replace (in a subsequent change) its conversion operator
to Matrix4x4 with a conversion operator to a specific typed matrix.
2015-12-30 18:24:26 -05:00