Tier 0: render what the services already decided, honestly

Claude-Session: https://claude.ai/code/session_01Ms2FbjQy31TVf3CEvQhGM8
This commit is contained in:
Gabriel Brown
2026-08-25 00:24:30 -04:00
parent be0e55214b
commit 8b1205e4b8
38 changed files with 1474 additions and 260 deletions
+17
View File
@@ -33,8 +33,25 @@ Singleton {
property var popups: []
// Suppresses toasts entirely. Notifications still reach history.
//
// Turning it ON also sweeps the banners already up -- Do Not Disturb that
// leaves the current interruptions running until they time out is a
// switch that takes effect later, which nobody means by it. Swept
// transients get the same scheduled release the DND arrival path gives
// them, so nothing stays tracked forever; everything else is already in
// history.
property bool doNotDisturb: false
onDoNotDisturbChanged: {
if (!root.doNotDisturb || root.popups.length === 0)
return;
for (const notification of root.popups) {
if (notification.transient)
root.scheduleTransientExpiry(notification);
}
root.popups = [];
}
// Cleared when the notification center is opened. The bar binds to this.
property int unreadCount: 0