[gnome-shell/wip/fmuellner/ease-actors: 1043/1052] ripple: Split animation
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/wip/fmuellner/ease-actors: 1043/1052] ripple: Split animation
- Date: Tue, 6 Aug 2019 02:17:39 +0000 (UTC)
commit e7c0c6b017b77cdbe034f09c2bbfb07e83c15847
Author: Florian Müllner <fmuellner gnome org>
Date: Sat Jun 10 05:55:10 2017 +0200
ripple: Split animation
Similar to the previous patch, splitting the existing tween into two
will allow us to use implicit animations.
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/22
js/ui/ripples.js | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
---
diff --git a/js/ui/ripples.js b/js/ui/ripples.js
index 1ff424cba..cbdfaaf7f 100644
--- a/js/ui/ripples.js
+++ b/js/ui/ripples.js
@@ -39,25 +39,26 @@ var Ripples = class Ripples {
// We draw a ripple by using a source image and animating it scaling
// outwards and fading away. We want the ripples to move linearly
// or it looks unrealistic, but if the opacity of the ripple goes
- // linearly to zero it fades away too quickly, so we use Tweener's
- // 'onUpdate' to give a non-linear curve to the fade-away and make
+ // linearly to zero it fades away too quickly, so we use a separate
+ // tween to give a non-linear curve to the fade-away and make
// it more visible in the middle section.
ripple.x = this._x;
ripple.y = this._y;
- ripple._opacity = startOpacity;
ripple.visible = true;
ripple.opacity = 255 * Math.sqrt(startOpacity);
ripple.scale_x = ripple.scale_y = startScale;
ripple.set_translation( - this._px * ripple.width, - this._py * ripple.height, 0.0);
- Tweener.addTween(ripple, { _opacity: 0,
- scale_x: finalScale,
+ Tweener.addTween(ripple, { opacity: 0,
+ delay: delay,
+ time: time,
+ transition: 'easeInQuad' });
+ Tweener.addTween(ripple, { scale_x: finalScale,
scale_y: finalScale,
delay: delay,
time: time,
transition: 'linear',
- onUpdate: () => ripple.opacity = 255 * Math.sqrt(ripple._opacity),
onComplete: () => ripple.visible = false });
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]