mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-10-18 17:24:01 -04:00
- The island is now a bar widget so any bar can host one alongside the island layout and dot - Routing got simpler: pick which shortcuts open here, the rest follow the shared rules - IPC close/hide take down every surface showing the activity - Qt 6.11 pointer prune workaround so the expanded island stays clickable
59 lines
2.8 KiB
QML
59 lines
2.8 KiB
QML
import QtQuick
|
|
import qs.Common
|
|
|
|
SettingsCard {
|
|
id: root
|
|
|
|
required property var store
|
|
property string keyPrefix: "island"
|
|
// A dot has no home layout editor, so its badge row must not follow the notifications group.
|
|
property bool badgeGated: true
|
|
|
|
iconName: "notifications"
|
|
title: I18n.tr("Notifications", "island settings: notifications card title")
|
|
settingKey: root.keyPrefix + "Notifications"
|
|
tags: ["island", "notifications", "popup", "badge", "expand", "osd"]
|
|
|
|
SettingsToggleRow {
|
|
settingKey: root.keyPrefix + "NotificationPopups"
|
|
tags: ["island", "notifications", "popup", "standard", "bar", "stack", "arrival"]
|
|
resetStore: root.store
|
|
resetKeys: ["islandNotificationPopups"]
|
|
text: I18n.tr("Use standard popups", "island settings: show arriving notifications as stacked popups instead of in the island")
|
|
description: I18n.tr("New notifications show as regular popups", "island standard popups toggle description")
|
|
checked: root.store.setting("islandNotificationPopups")
|
|
onToggled: checked => root.store.apply("islandNotificationPopups", checked)
|
|
}
|
|
|
|
SettingsToggleRow {
|
|
settingKey: root.keyPrefix + "SystemOsd"
|
|
tags: ["island", "volume", "brightness", "osd", "level", "standard"]
|
|
resetStore: root.store
|
|
resetKeys: ["islandSystemOsd"]
|
|
text: I18n.tr("Use standard OSDs", "island settings: show volume and brightness changes as the regular on-screen displays instead of in the island")
|
|
checked: !root.store.setting("islandSystemOsd")
|
|
onToggled: checked => root.store.apply("islandSystemOsd", !checked)
|
|
}
|
|
|
|
SettingsToggleRow {
|
|
settingKey: root.keyPrefix + "NotificationExpand"
|
|
tags: ["island", "notifications", "expand", "arrival", "size"]
|
|
resetStore: root.store
|
|
resetKeys: ["islandNotificationExpand"]
|
|
text: I18n.tr("Expand by default", "island settings: expanded notification toggle")
|
|
checked: root.store.setting("islandNotificationExpand")
|
|
onToggled: checked => root.store.apply("islandNotificationExpand", checked)
|
|
}
|
|
|
|
SettingsToggleRow {
|
|
settingKey: root.keyPrefix + "NotificationBadgeClearOnOpen"
|
|
tags: ["island", "home", "notifications", "badge", "unread", "clear", "dismiss", "open"]
|
|
resetStore: root.store
|
|
resetKeys: ["islandNotificationBadgeClearOnOpen"]
|
|
text: I18n.tr("Clear badge on open", "island settings: clear the notification badge when the center opens")
|
|
checked: root.store.setting("islandNotificationBadgeClearOnOpen")
|
|
enabled: !root.badgeGated || SettingsData.islandHomeGroupEnabled(root.store.config, "notifications")
|
|
onToggled: checked => root.store.apply("islandNotificationBadgeClearOnOpen", checked)
|
|
}
|
|
}
|