diff options
Diffstat (limited to 'modules/system/quickshell/GlobalState.qml')
| -rw-r--r-- | modules/system/quickshell/GlobalState.qml | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/modules/system/quickshell/GlobalState.qml b/modules/system/quickshell/GlobalState.qml index c212967..c657b31 100644 --- a/modules/system/quickshell/GlobalState.qml +++ b/modules/system/quickshell/GlobalState.qml @@ -1,23 +1,32 @@ -import QtQuick - pragma Singleton +import QtQuick -// Shared state to coordinate which popup is currently open. -// Ensures only one menu is visible at a time. QtObject { property string activePopup: "" + property var notificationHistory: [] function open(name) { - activePopup = "" - activePopup = name + activePopup = ""; + activePopup = name; } function close() { - activePopup = "" + activePopup = ""; } function toggle(name) { - if (activePopup === name) activePopup = "" - else activePopup = name + if (activePopup === name) + activePopup = ""; + else + activePopup = name; + } + + function addNotification(data) { + const entry = Object.assign({}, data); + notificationHistory = [entry].concat(notificationHistory).slice(0, 50); + } + + function clearNotificationHistory() { + notificationHistory = []; } } |
