diff options
Diffstat (limited to 'desktop/companion')
| -rw-r--r-- | desktop/companion/Figure.qml | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/desktop/companion/Figure.qml b/desktop/companion/Figure.qml index 3401168..df21bf5 100644 --- a/desktop/companion/Figure.qml +++ b/desktop/companion/Figure.qml @@ -59,8 +59,14 @@ Item { target: s; property: "drop"; duration: 320 onFinished: s.settled(s.out) } + // Out from creation (a shell started with her hidden) never ran the drop, + // since a starting value fires no onOutChanged, and she was drawn in place + // with her clock stopped, frozen on whatever frame came next. The body + // below hides her until she is shown, and the first entrance starts from + // below like any other. onOutChanged: { dropAnim.stop(); + if (!s.out && s.drop === 0) s.drop = s.height + 24; dropAnim.to = s.out ? s.height + 24 : 0; dropAnim.easing.type = s.out ? Easing.InCubic : Easing.OutBack; dropAnim.start(); @@ -86,6 +92,7 @@ Item { Item { anchors.fill: parent + visible: !s.out || dropAnim.running opacity: 1 - s.drop / (s.height + 24) transform: Translate { x: s.shake; y: s.drop - s.bob } |
