1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-01-28 15:32:50 -05:00

also update per-monitor wallpaper to accout for display setting

This commit is contained in:
bbedward
2025-11-16 16:01:11 -05:00
parent f2deaeccdb
commit d69017a706

View File

@@ -1007,18 +1007,32 @@ Item {
text: I18n.tr("Wallpaper Monitor") text: I18n.tr("Wallpaper Monitor")
description: I18n.tr("Select monitor to configure wallpaper") description: I18n.tr("Select monitor to configure wallpaper")
currentValue: selectedMonitorName || "No monitors" currentValue: {
var screens = Quickshell.screens
for (var i = 0; i < screens.length; i++) {
if (screens[i].name === selectedMonitorName) {
return SettingsData.getScreenDisplayName(screens[i])
}
}
return "No monitors"
}
options: { options: {
var screenNames = [] var screenNames = []
var screens = Quickshell.screens var screens = Quickshell.screens
for (var i = 0; i < screens.length; i++) { for (var i = 0; i < screens.length; i++) {
screenNames.push(screens[i].name) screenNames.push(SettingsData.getScreenDisplayName(screens[i]))
} }
return screenNames return screenNames
} }
onValueChanged: value => { onValueChanged: value => {
selectedMonitorName = value var screens = Quickshell.screens
} for (var i = 0; i < screens.length; i++) {
if (SettingsData.getScreenDisplayName(screens[i]) === value) {
selectedMonitorName = screens[i].name
return
}
}
}
} }
DankDropdown { DankDropdown {
@@ -1027,9 +1041,14 @@ Item {
text: I18n.tr("Matugen Target Monitor") text: I18n.tr("Matugen Target Monitor")
description: I18n.tr("Monitor whose wallpaper drives dynamic theming colors") description: I18n.tr("Monitor whose wallpaper drives dynamic theming colors")
currentValue: { currentValue: {
var screens = Quickshell.screens
if (!SettingsData.matugenTargetMonitor || SettingsData.matugenTargetMonitor === "") { if (!SettingsData.matugenTargetMonitor || SettingsData.matugenTargetMonitor === "") {
var screens = Quickshell.screens return screens.length > 0 ? SettingsData.getScreenDisplayName(screens[0]) + " (Default)" : "No monitors"
return screens.length > 0 ? screens[0].name + " (Default)" : "No monitors" }
for (var i = 0; i < screens.length; i++) {
if (screens[i].name === SettingsData.matugenTargetMonitor) {
return SettingsData.getScreenDisplayName(screens[i])
}
} }
return SettingsData.matugenTargetMonitor return SettingsData.matugenTargetMonitor
} }
@@ -1037,7 +1056,7 @@ Item {
var screenNames = [] var screenNames = []
var screens = Quickshell.screens var screens = Quickshell.screens
for (var i = 0; i < screens.length; i++) { for (var i = 0; i < screens.length; i++) {
var label = screens[i].name var label = SettingsData.getScreenDisplayName(screens[i])
if (i === 0 && (!SettingsData.matugenTargetMonitor || SettingsData.matugenTargetMonitor === "")) { if (i === 0 && (!SettingsData.matugenTargetMonitor || SettingsData.matugenTargetMonitor === "")) {
label += " (Default)" label += " (Default)"
} }
@@ -1046,9 +1065,15 @@ Item {
return screenNames return screenNames
} }
onValueChanged: value => { onValueChanged: value => {
var cleanValue = value.replace(" (Default)", "") var cleanValue = value.replace(" (Default)", "")
SettingsData.setMatugenTargetMonitor(cleanValue) var screens = Quickshell.screens
} for (var i = 0; i < screens.length; i++) {
if (SettingsData.getScreenDisplayName(screens[i]) === cleanValue) {
SettingsData.setMatugenTargetMonitor(screens[i].name)
return
}
}
}
} }
} }
} }