mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-05-02 02:22:06 -04:00
feat(system-tray): add optional monochrome icons setting (#2241)
Adds a 'Monochrome Icons' toggle to the system tray widget context menu. When enabled, all system tray icons are desaturated using MultiEffect, giving a cleaner monochrome bar aesthetic that matches minimal themes. The setting is per-user (settings.json), defaults to false to preserve existing behavior.
This commit is contained in:
@@ -211,6 +211,7 @@ Singleton {
|
|||||||
property int selectedGpuIndex: 0
|
property int selectedGpuIndex: 0
|
||||||
property var enabledGpuPciIds: []
|
property var enabledGpuPciIds: []
|
||||||
property bool showSystemTray: true
|
property bool showSystemTray: true
|
||||||
|
property bool systemTrayMonochromeIcons: false
|
||||||
property bool showClock: true
|
property bool showClock: true
|
||||||
property bool showNotificationButton: true
|
property bool showNotificationButton: true
|
||||||
property bool showBattery: true
|
property bool showBattery: true
|
||||||
|
|||||||
@@ -79,6 +79,7 @@ var SPEC = {
|
|||||||
selectedGpuIndex: { def: 0 },
|
selectedGpuIndex: { def: 0 },
|
||||||
enabledGpuPciIds: { def: [] },
|
enabledGpuPciIds: { def: [] },
|
||||||
showSystemTray: { def: true },
|
showSystemTray: { def: true },
|
||||||
|
systemTrayMonochromeIcons: { def: false },
|
||||||
showClock: { def: true },
|
showClock: { def: true },
|
||||||
showNotificationButton: { def: true },
|
showNotificationButton: { def: true },
|
||||||
showBattery: { def: true },
|
showBattery: { def: true },
|
||||||
|
|||||||
@@ -366,6 +366,10 @@ BasePill {
|
|||||||
smooth: true
|
smooth: true
|
||||||
mipmap: true
|
mipmap: true
|
||||||
visible: status === Image.Ready
|
visible: status === Image.Ready
|
||||||
|
layer.enabled: SettingsData.systemTrayMonochromeIcons
|
||||||
|
layer.effect: MultiEffect {
|
||||||
|
saturation: -1
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
@@ -581,6 +585,10 @@ BasePill {
|
|||||||
smooth: true
|
smooth: true
|
||||||
mipmap: true
|
mipmap: true
|
||||||
visible: status === Image.Ready
|
visible: status === Image.Ready
|
||||||
|
layer.enabled: SettingsData.systemTrayMonochromeIcons
|
||||||
|
layer.effect: MultiEffect {
|
||||||
|
saturation: -1
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
@@ -709,6 +717,10 @@ BasePill {
|
|||||||
smooth: true
|
smooth: true
|
||||||
mipmap: true
|
mipmap: true
|
||||||
visible: status === Image.Ready
|
visible: status === Image.Ready
|
||||||
|
layer.enabled: SettingsData.systemTrayMonochromeIcons
|
||||||
|
layer.effect: MultiEffect {
|
||||||
|
saturation: -1
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
@@ -1210,6 +1222,10 @@ BasePill {
|
|||||||
smooth: true
|
smooth: true
|
||||||
mipmap: true
|
mipmap: true
|
||||||
visible: status === Image.Ready
|
visible: status === Image.Ready
|
||||||
|
layer.enabled: SettingsData.systemTrayMonochromeIcons
|
||||||
|
layer.effect: MultiEffect {
|
||||||
|
saturation: -1
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
|
|||||||
@@ -714,6 +714,15 @@ Item {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SettingsToggleCard {
|
||||||
|
iconName: "filter_b_and_w"
|
||||||
|
title: I18n.tr("Monochrome System Tray Icons")
|
||||||
|
description: I18n.tr("Desaturate all system tray icons for a uniform monochrome look")
|
||||||
|
visible: selectedBarConfig?.enabled
|
||||||
|
checked: SettingsData.systemTrayMonochromeIcons
|
||||||
|
onToggled: checked => SettingsData.set("systemTrayMonochromeIcons", checked)
|
||||||
|
}
|
||||||
|
|
||||||
SettingsToggleCard {
|
SettingsToggleCard {
|
||||||
iconName: "mouse"
|
iconName: "mouse"
|
||||||
title: I18n.tr("Scroll Wheel")
|
title: I18n.tr("Scroll Wheel")
|
||||||
|
|||||||
Reference in New Issue
Block a user