mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-03-02 14:30:43 +00:00
Bug 1336899 - Should not fire the transitioncancel after ending CSS Transition. r=birtles
MozReview-Commit-ID: IrqNNjVg0xg --HG-- extra : rebase_source : 769e4646375d41b5621ee71c8f0ce5eb44bae8d1
This commit is contained in:
parent
114603b64b
commit
1ba8149d5d
@ -464,7 +464,9 @@ promise_test(function(t) {
|
||||
return watcher.wait_for('transitionend');
|
||||
}).then(function(evt) {
|
||||
transition.cancel();
|
||||
return watcher.wait_for('transitioncancel');
|
||||
|
||||
// Then wait a couple of frames and check that no event was dispatched
|
||||
return waitForAnimationFrames(2);
|
||||
});
|
||||
}, 'Cancel the transition after clearing the target effect');
|
||||
|
||||
|
@ -202,8 +202,6 @@ CSSTransition::QueueEvents(StickyTimeDuration aActiveTime)
|
||||
|
||||
if (!mEffect) {
|
||||
currentPhase = GetTransitionPhaseWithoutEffect();
|
||||
intervalStartTime = zeroDuration;
|
||||
intervalEndTime = zeroDuration;
|
||||
} else {
|
||||
ComputedTiming computedTiming = mEffect->GetComputedTiming();
|
||||
|
||||
@ -221,9 +219,9 @@ CSSTransition::QueueEvents(StickyTimeDuration aActiveTime)
|
||||
// perhaps even with different timelines.
|
||||
// The zero timestamp is for transitionrun events where we ignore the delay
|
||||
// for the purpose of ordering events.
|
||||
TimeStamp zeroTimeStamp = AnimationTimeToTimeStamp(zeroDuration);
|
||||
TimeStamp startTimeStamp = ElapsedTimeToTimeStamp(intervalStartTime);
|
||||
TimeStamp endTimeStamp = ElapsedTimeToTimeStamp(intervalEndTime);
|
||||
TimeStamp zeroTimeStamp = AnimationTimeToTimeStamp(zeroDuration);
|
||||
TimeStamp startTimeStamp = ElapsedTimeToTimeStamp(intervalStartTime);
|
||||
TimeStamp endTimeStamp = ElapsedTimeToTimeStamp(intervalEndTime);
|
||||
|
||||
if (mPendingState != PendingState::NotPending &&
|
||||
(mPreviousTransitionPhase == TransitionPhase::Idle ||
|
||||
@ -234,8 +232,9 @@ CSSTransition::QueueEvents(StickyTimeDuration aActiveTime)
|
||||
|
||||
AutoTArray<TransitionEventParams, 3> events;
|
||||
|
||||
// Handle cancel events firts
|
||||
if (mPreviousTransitionPhase != TransitionPhase::Idle &&
|
||||
// Handle cancel events first
|
||||
if ((mPreviousTransitionPhase != TransitionPhase::Idle &&
|
||||
mPreviousTransitionPhase != TransitionPhase::After) &&
|
||||
currentPhase == TransitionPhase::Idle) {
|
||||
TimeStamp activeTimeStamp = ElapsedTimeToTimeStamp(aActiveTime);
|
||||
events.AppendElement(TransitionEventParams{ eTransitionCancel,
|
||||
|
Loading…
x
Reference in New Issue
Block a user