aboutsummaryrefslogtreecommitdiffstats
path: root/config/quickshell/modules/overview/OverviewWidget.qml
diff options
context:
space:
mode:
authorDonald Williams <129223418+dwilliam62@users.noreply.github.com>2025-10-13 20:31:53 -0400
committerGitHub <noreply@github.com>2025-10-13 20:31:53 -0400
commite4be12e23fa8d6f8a73dde974ea6adf242885bc1 (patch)
treeb879abcf54989120a0931443bfb8203c885c2b20 /config/quickshell/modules/overview/OverviewWidget.qml
parent0e52d19b894e3cfd2c87cfbcc35ae087d48f5485 (diff)
parent9d26c191c1071a542e816d1bc2b0b3f96ebfa74d (diff)
Merge pull request #841 from JaKooLit/ddubs-hyprsunset
Merge ddubs-hyprsunset into main fixes for wallust, sddm and weather
Diffstat (limited to 'config/quickshell/modules/overview/OverviewWidget.qml')
-rw-r--r--config/quickshell/modules/overview/OverviewWidget.qml40
1 files changed, 37 insertions, 3 deletions
diff --git a/config/quickshell/modules/overview/OverviewWidget.qml b/config/quickshell/modules/overview/OverviewWidget.qml
index 93e90967..05a15e10 100644
--- a/config/quickshell/modules/overview/OverviewWidget.qml
+++ b/config/quickshell/modules/overview/OverviewWidget.qml
@@ -46,6 +46,33 @@ Item {
property int draggingFromWorkspace: -1
property int draggingTargetWorkspace: -1
+ // Debug logging function
+ function debugMultiMonitorInfo() {
+ console.log("=== Multi-Monitor Debug Info ===")
+ console.log("Current monitor ID:", root.monitor.id)
+ console.log("Current monitor name:", root.monitor.name)
+ console.log("Current monitor scale:", root.monitor.scale)
+ console.log("Current monitor position:", root.monitor.x, root.monitor.y)
+ console.log("Total monitors:", HyprlandData.monitors.length)
+
+ HyprlandData.monitors.forEach((mon, idx) => {
+ console.log(`Monitor ${idx}: ID=${mon.id}, Name=${mon.name}, Scale=${mon.scale}, Pos=(${mon.x},${mon.y}), Size=${mon.width}x${mon.height}, Reserved=[${mon.reserved.join(",")}]`)
+ })
+
+ console.log("Total windows:", windowAddresses.length)
+ windowAddresses.forEach((address, idx) => {
+ const win = windowByAddress[address]
+ if (win) {
+ console.log(`Window ${idx}: ${win.class} on monitor ${win.monitor}, workspace ${win.workspace?.id}, pos=(${win.at[0]},${win.at[1]})`)
+ }
+ })
+ console.log("=== End Debug Info ===")
+ }
+
+ Component.onCompleted: {
+ debugMultiMonitorInfo()
+ }
+
implicitWidth: overviewBackground.implicitWidth + Appearance.sizes.elevationMargin * 2
implicitHeight: overviewBackground.implicitHeight + Appearance.sizes.elevationMargin * 2
@@ -233,14 +260,21 @@ Item {
model: ScriptModel {
values: windowAddresses.filter((address) => {
var win = windowByAddress[address]
- return (root.workspaceGroup * root.workspacesShown < win?.workspace?.id && win?.workspace?.id <= (root.workspaceGroup + 1) * root.workspacesShown)
+ if (!win) return false
+
+ // Filter by workspace group AND monitor if configured
+ const inWorkspaceGroup = (root.workspaceGroup * root.workspacesShown < win?.workspace?.id &&
+ win?.workspace?.id <= (root.workspaceGroup + 1) * root.workspacesShown)
+ const inMonitor = ConfigOptions.overview.showAllMonitors || win.monitor === root.monitor.id
+
+ return inWorkspaceGroup && inMonitor
})
}
delegate: OverviewWindow {
id: window
windowData: windowByAddress[modelData]
- monitorData: HyprlandData.monitors.find(m => m.id === windowData?.monitor) // use monitorData of the monitor the window is on
- scale: root.scale * (monitorData?.scale / root.monitor?.scale) // adjust window scale to the monitor where the overview is displayed
+ monitorData: root.monitorData
+ scale: root.scale
availableWorkspaceWidth: root.workspaceImplicitWidth
availableWorkspaceHeight: root.workspaceImplicitHeight
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage