From 1aa0e3fb47b8d4cdb0bdc7cbc585bc2c813a7235 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20Pi=C5=82syk?= Date: Mon, 29 Sep 2025 23:27:28 +0200 Subject: [PATCH] fix(brightness): prevent bus number collision for identical monitor models --- .config/quickshell/ii/services/Brightness.qml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.config/quickshell/ii/services/Brightness.qml b/.config/quickshell/ii/services/Brightness.qml index 42becc766..d38bfdcf4 100644 --- a/.config/quickshell/ii/services/Brightness.qml +++ b/.config/quickshell/ii/services/Brightness.qml @@ -74,8 +74,14 @@ Singleton { id: monitor required property ShellScreen screen - readonly property bool isDdc: root.ddcMonitors.some(m => m.model === screen.model) - readonly property string busNum: root.ddcMonitors.find(m => m.model === screen.model)?.busNum ?? "" + readonly property bool isDdc: { + const match = root.ddcMonitors.find(m => m.model === screen.model && !root.monitors.slice(0, root.monitors.indexOf(this)).some(mon => mon.busNum === m.busNum)); + return !!match; + } + readonly property string busNum: { + const match = root.ddcMonitors.find(m => m.model === screen.model && !root.monitors.slice(0, root.monitors.indexOf(this)).some(mon => mon.busNum === m.busNum)); + return match?.busNum ?? ""; + } property int rawMaxBrightness: 100 property real brightness property bool ready: false