fix(animations): ensure starting styles are applied when a delay is present
Closes #9326 Closes #9328
This commit is contained in:
parent
ca42b49fa2
commit
ba46ca683b
|
@ -39,9 +39,13 @@ export class WebAnimationsDriver implements AnimationDriver {
|
||||||
formattedSteps = [start, start];
|
formattedSteps = [start, start];
|
||||||
}
|
}
|
||||||
|
|
||||||
var player = this._triggerWebAnimation(
|
var playerOptions = {
|
||||||
anyElm, formattedSteps,
|
'duration': duration,
|
||||||
{'duration': duration, 'delay': delay, 'easing': easing, 'fill': 'forwards'});
|
'delay': delay,
|
||||||
|
'fill': 'both' // we use `both` because it allows for styling at 0% to work with `delay`
|
||||||
|
};
|
||||||
|
|
||||||
|
var player = this._triggerWebAnimation(anyElm, formattedSteps, playerOptions);
|
||||||
|
|
||||||
return new WebAnimationsPlayer(player, duration);
|
return new WebAnimationsPlayer(player, duration);
|
||||||
}
|
}
|
||||||
|
|
|
@ -74,5 +74,15 @@ export function main() {
|
||||||
|
|
||||||
expect(lastKeyframe['height']).toEqual('555em');
|
expect(lastKeyframe['height']).toEqual('555em');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should use a fill mode of `both`', () => {
|
||||||
|
var startingStyles = _makeStyles({});
|
||||||
|
var styles = [_makeKeyframe(0, {'color': 'green'}), _makeKeyframe(1, {'color': 'red'})];
|
||||||
|
|
||||||
|
driver.animate(elm, startingStyles, styles, 1000, 1000, 'linear');
|
||||||
|
var details = driver.log.pop();
|
||||||
|
var options = details['options'];
|
||||||
|
expect(options['fill']).toEqual('both');
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue