1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-01-31 08:52:49 -05:00

desktop: fix widget display toggle

This commit is contained in:
bbedward
2025-12-17 14:24:13 -05:00
parent 7e141c6b36
commit 6abb2c73fd
2 changed files with 18 additions and 4 deletions

View File

@@ -13,9 +13,9 @@ Item {
signal preferencesChanged(var preferences) signal preferencesChanged(var preferences)
readonly property bool allDisplaysEnabled: { readonly property bool allDisplaysEnabled: {
if (!Array.isArray(displayPreferences)) if (!Array.isArray(displayPreferences) || displayPreferences.length === 0)
return true; return true;
return displayPreferences.includes("all") || displayPreferences.length === 0; return displayPreferences.includes("all");
} }
width: parent?.width ?? 0 width: parent?.width ?? 0
@@ -38,7 +38,21 @@ Item {
width: parent.width width: parent.width
text: I18n.tr("All displays") text: I18n.tr("All displays")
checked: root.allDisplaysEnabled checked: root.allDisplaysEnabled
onToggled: isChecked => root.preferencesChanged(isChecked ? ["all"] : []) onToggled: isChecked => {
if (isChecked) {
root.preferencesChanged(["all"]);
return;
}
var screens = [];
for (var i = 0; i < Quickshell.screens.length; i++) {
var s = Quickshell.screens[i];
screens.push({
name: s.name,
model: s.model || ""
});
}
root.preferencesChanged(screens);
}
} }
Column { Column {

View File

@@ -271,7 +271,7 @@ Rectangle {
Rectangle { Rectangle {
required property var modelData required property var modelData
width: parent.width - Theme.spacingM * 2 width: (parent?.width ?? 0) - Theme.spacingM * 2
x: Theme.spacingM x: Theme.spacingM
height: 40 height: 40
radius: Theme.cornerRadius radius: Theme.cornerRadius