diff options
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/sidebar/NotifDockList.qml | 1 | ||||
| -rw-r--r-- | modules/sidebar/NotifGroupList.qml | 31 |
2 files changed, 28 insertions, 4 deletions
diff --git a/modules/sidebar/NotifDockList.qml b/modules/sidebar/NotifDockList.qml index dbb5092..829365c 100644 --- a/modules/sidebar/NotifDockList.qml +++ b/modules/sidebar/NotifDockList.qml @@ -79,6 +79,7 @@ Item { cursorShape: pressed ? Qt.ClosedHandCursor : undefined acceptedButtons: Qt.LeftButton | Qt.RightButton | Qt.MiddleButton preventStealing: true + enabled: !closed drag.target: this drag.axis: Drag.XAxis diff --git a/modules/sidebar/NotifGroupList.qml b/modules/sidebar/NotifGroupList.qml index 6a1a4b8..93aca8c 100644 --- a/modules/sidebar/NotifGroupList.qml +++ b/modules/sidebar/NotifGroupList.qml @@ -19,7 +19,7 @@ Item { let h = -root.spacing; for (let i = 0; i < repeater.count; i++) { const item = repeater.itemAt(i); - if (!item.modelData.closed) + if (!item.modelData.closed && !item.previewHidden) h += item.nonAnimHeight + root.spacing; } return h; @@ -37,7 +37,7 @@ Item { id: repeater model: ScriptModel { - values: root.expanded ? root.notifs : root.notifs.slice(0, Config.notifs.groupPreviewNum) + values: root.expanded ? root.notifs : root.notifs.slice(0, Config.notifs.groupPreviewNum + 1) onValuesChanged: root.flagChanged() } @@ -48,6 +48,17 @@ Item { required property Notifs.Notif modelData readonly property alias nonAnimHeight: notifInner.nonAnimHeight + readonly property bool previewHidden: { + if (root.expanded) + return false; + + let extraHidden = 0; + for (let i = 0; i < index; i++) + if (root.notifs[i].closed) + extraHidden++; + + return index >= Config.notifs.groupPreviewNum + extraHidden; + } property int startY y: { @@ -55,7 +66,7 @@ Item { let y = 0; for (let i = 0; i < index; i++) { const item = repeater.itemAt(i); - if (!item.modelData.closed) + if (!item.modelData.closed && !item.previewHidden) y += item.nonAnimHeight + root.spacing; } return y; @@ -69,6 +80,9 @@ Item { } } + opacity: previewHidden ? 0 : 1 + scale: previewHidden ? 0.7 : 1 + implicitWidth: root.width implicitHeight: notifInner.implicitHeight @@ -76,6 +90,7 @@ Item { cursorShape: pressed ? Qt.ClosedHandCursor : undefined acceptedButtons: Qt.LeftButton | Qt.RightButton | Qt.MiddleButton preventStealing: !root.expanded + enabled: !modelData.closed drag.target: this drag.axis: Drag.XAxis @@ -105,7 +120,7 @@ Item { Component.onDestruction: modelData.unlock(this) ParallelAnimation { - running: true + running: !notif.previewHidden Anim { target: notif @@ -146,6 +161,14 @@ Item { expanded: root.expanded } + Behavior on opacity { + Anim {} + } + + Behavior on scale { + Anim {} + } + Behavior on x { Anim { duration: Appearance.anim.durations.expressiveDefaultSpatial |