diff options
Diffstat (limited to 'notifications/NotificationBalloon.qml')
| -rw-r--r-- | notifications/NotificationBalloon.qml | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/notifications/NotificationBalloon.qml b/notifications/NotificationBalloon.qml index b5af3ab..a82f5f6 100644 --- a/notifications/NotificationBalloon.qml +++ b/notifications/NotificationBalloon.qml @@ -27,6 +27,21 @@ Rectangle { property var borderColors: [] property real borderAngle: 0 + // Slides in from the screen edge it sits against. The layer surface maps + // once for the whole stack, so a Hyprland layer animation would only + // play for the first balloon. The window clips it, so it appears from + // the stack's edge rather than from beyond the screen's. + transform: Translate { id: slide } + NumberAnimation { + id: enter + target: slide; property: "x"; duration: 260; easing.type: Easing.OutCubic + to: 0 + } + Component.onCompleted: { + enter.from = Notify.config.balloons.corner.endsWith("left") ? -b.width - 12 : b.width + 12; + enter.start(); + } + // Driven by the shell's tick. The balloon drops itself once its expiry // passes, or while a suppression says so: the drawer and snooze withhold // everything; a muted app and DND are config.json's call (DND passes |
