From 32539b1076b11c6baa226010cdc582ff0bdccc5f Mon Sep 17 00:00:00 2001 From: Kainoa Kanter Date: Thu, 11 Dec 2025 14:34:09 -0800 Subject: [PATCH 1/5] feat(catwalk): open system monitor on right click --- catwalk/BarWidget.qml | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/catwalk/BarWidget.qml b/catwalk/BarWidget.qml index 07b101c..1ffd149 100644 --- a/catwalk/BarWidget.qml +++ b/catwalk/BarWidget.qml @@ -164,20 +164,21 @@ Rectangle { Logger.i("Catwalk", "Clicked! API:", !!pluginApi, "Screen:", root.screen ? root.screen.name : "null"); - // Open Panel on click - if (pluginApi) { - var result = pluginApi.openPanel(root.screen); - Logger.i("Catwalk", "OpenPanel result:", result); - } else { - Logger.e("Catwalk", "PluginAPI is null"); - } if (!root.enabled && !root.allowClickWhenDisabled) { return; } if (mouse.button === Qt.LeftButton) { + // Open Panel on click + if (pluginApi) { + var result = pluginApi.openPanel(root.screen); + Logger.i("Catwalk", "OpenPanel result:", result); + } else { + Logger.e("Catwalk", "PluginAPI is null"); + } root.clicked(); } else if (mouse.button === Qt.RightButton) { + Quickshell.execDetached(["sh", "-c", "missioncenter || resources || flatpak run io.missioncenter.MissionCenter || flatpak run net.nokyan.Resources || gnome-system-monitor || plasma-systemmonitor"]); root.rightClicked(); } else if (mouse.button === Qt.MiddleButton) { root.middleClicked(); From 945c4e7477ab840c7eb2277ba1d31128a171b3e3 Mon Sep 17 00:00:00 2001 From: Kainoa Kanter Date: Tue, 30 Dec 2025 10:37:24 -0800 Subject: [PATCH 2/5] open noctalia settings's external monitor --- catwalk/BarWidget.qml | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/catwalk/BarWidget.qml b/catwalk/BarWidget.qml index aa68d93..183dd37 100644 --- a/catwalk/BarWidget.qml +++ b/catwalk/BarWidget.qml @@ -1,6 +1,7 @@ import QtQuick import QtQuick.Effects import Quickshell +import Quickshell.Io import qs.Commons import qs.Modules.Bar.Extras import qs.Services.UI @@ -69,6 +70,10 @@ Rectangle { readonly property var idleIcons: root.pluginApi?.mainInstance?.idleIcons || [] readonly property real cpuUsage: root.pluginApi?.mainInstance?.cpuUsage ?? 0 + + function openExternalMonitor() { + Quickshell.execDetached(["sh", "-c", Settings.data.systemMonitor.externalMonitor]); + } Timer { interval: Math.max(30, 200 - root.cpuUsage * 1.7) @@ -170,11 +175,14 @@ Rectangle { Logger.e("Catwalk", "PluginAPI is null"); } root.clicked(); - } else if (mouse.button === Qt.RightButton) { - Quickshell.execDetached(["sh", "-c", "missioncenter || resources || flatpak run io.missioncenter.MissionCenter || flatpak run net.nokyan.Resources || gnome-system-monitor || plasma-systemmonitor"]); - root.rightClicked(); - } else if (mouse.button === Qt.MiddleButton) { - root.middleClicked(); + } else { + TooltipService.hide(); + root.openExternalMonitor(); + if (mouse.button === Qt.RightButton) { + root.rightClicked(); + } else if (mouse.button === Qt.MiddleButton) { + root.middleClicked(); + } } } onWheel: wheel => root.wheel(wheel.angleDelta.y) From 2c369348bbc34ab04dfb35796b32a710c75f14d7 Mon Sep 17 00:00:00 2001 From: Kainoa Kanter Date: Tue, 30 Dec 2025 10:42:11 -0800 Subject: [PATCH 3/5] open panel on left/right click, open monitor on middle click --- catwalk/BarWidget.qml | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/catwalk/BarWidget.qml b/catwalk/BarWidget.qml index 183dd37..27d4803 100644 --- a/catwalk/BarWidget.qml +++ b/catwalk/BarWidget.qml @@ -71,6 +71,16 @@ Rectangle { readonly property real cpuUsage: root.pluginApi?.mainInstance?.cpuUsage ?? 0 + function openPanel() { + Tooltip + if (pluginApi) { + var result = pluginApi.openPanel(root.screen); + Logger.i("Catwalk", "OpenPanel result:", result); + } else { + Logger.e("Catwalk", "PluginAPI is null"); + } + } + function openExternalMonitor() { Quickshell.execDetached(["sh", "-c", Settings.data.systemMonitor.externalMonitor]); } @@ -166,23 +176,17 @@ Rectangle { if (!root.enabled && !root.allowClickWhenDisabled) { return; } + // Open Panel on left/right click + // Open external monitor on middle click if (mouse.button === Qt.LeftButton) { - // Open Panel on click - if (pluginApi) { - var result = pluginApi.openPanel(root.screen); - Logger.i("Catwalk", "OpenPanel result:", result); - } else { - Logger.e("Catwalk", "PluginAPI is null"); - } + root.openPanel(); root.clicked(); - } else { - TooltipService.hide(); + } else if (mouse.button === Qt.RightButton) { + root.openPanel(); + root.rightClicked(); + } else if (mouse.button === Qt.MiddleButton) { root.openExternalMonitor(); - if (mouse.button === Qt.RightButton) { - root.rightClicked(); - } else if (mouse.button === Qt.MiddleButton) { - root.middleClicked(); - } + root.middleClicked(); } } onWheel: wheel => root.wheel(wheel.angleDelta.y) From 33eb95195d53a6104f2ce2769642c27b1c795f57 Mon Sep 17 00:00:00 2001 From: Kainoa Kanter Date: Tue, 30 Dec 2025 10:44:05 -0800 Subject: [PATCH 4/5] skull emoji --- catwalk/BarWidget.qml | 1 - 1 file changed, 1 deletion(-) diff --git a/catwalk/BarWidget.qml b/catwalk/BarWidget.qml index 27d4803..7b2e532 100644 --- a/catwalk/BarWidget.qml +++ b/catwalk/BarWidget.qml @@ -72,7 +72,6 @@ Rectangle { readonly property real cpuUsage: root.pluginApi?.mainInstance?.cpuUsage ?? 0 function openPanel() { - Tooltip if (pluginApi) { var result = pluginApi.openPanel(root.screen); Logger.i("Catwalk", "OpenPanel result:", result); From 1fb9a9797707157ca9634a2a9adf0f64ab2b869c Mon Sep 17 00:00:00 2001 From: Kainoa Kanter Date: Tue, 30 Dec 2025 10:46:21 -0800 Subject: [PATCH 5/5] bump version --- catwalk/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/catwalk/manifest.json b/catwalk/manifest.json index 77f4b20..8cc2e41 100644 --- a/catwalk/manifest.json +++ b/catwalk/manifest.json @@ -1,7 +1,7 @@ { "id": "catwalk", "name": "Catwalk", - "version": "1.1.0", + "version": "1.1.1", "minNoctaliaVersion": "3.6.0", "author": "MannuVilasara", "license": "MIT",