more quickshell.execdetached instead of hyprland dispatch trick

This commit is contained in:
end-4
2025-07-17 20:23:03 +07:00
parent 6f5781564c
commit 6d9e4ad2fa
2 changed files with 6 additions and 6 deletions
@@ -24,7 +24,7 @@ Item {
visible: Config.options.bar.utilButtons.showScreenSnip visible: Config.options.bar.utilButtons.showScreenSnip
sourceComponent: CircleUtilButton { sourceComponent: CircleUtilButton {
Layout.alignment: Qt.AlignVCenter Layout.alignment: Qt.AlignVCenter
onClicked: Hyprland.dispatch("exec hyprshot --freeze --clipboard-only --mode region --silent") onClicked: Quickshell.execDetached(["qs", "-p", Quickshell.configPath("screenshot.qml")])
MaterialSymbol { MaterialSymbol {
horizontalAlignment: Qt.AlignHCenter horizontalAlignment: Qt.AlignHCenter
fill: 1 fill: 1
@@ -40,7 +40,7 @@ Item {
visible: Config.options.bar.utilButtons.showColorPicker visible: Config.options.bar.utilButtons.showColorPicker
sourceComponent: CircleUtilButton { sourceComponent: CircleUtilButton {
Layout.alignment: Qt.AlignVCenter Layout.alignment: Qt.AlignVCenter
onClicked: Hyprland.dispatch("exec hyprpicker -a") onClicked: Quickshell.execDetached(["hyprpicker", "-a"])
MaterialSymbol { MaterialSymbol {
horizontalAlignment: Qt.AlignHCenter horizontalAlignment: Qt.AlignHCenter
fill: 1 fill: 1
@@ -72,7 +72,7 @@ Item {
visible: Config.options.bar.utilButtons.showMicToggle visible: Config.options.bar.utilButtons.showMicToggle
sourceComponent: CircleUtilButton { sourceComponent: CircleUtilButton {
Layout.alignment: Qt.AlignVCenter Layout.alignment: Qt.AlignVCenter
onClicked: Hyprland.dispatch("exec wpctl set-mute @DEFAULT_SOURCE@ toggle") onClicked: Quickshell.execDetached(["wpctl", "set-mute", "@DEFAULT_SOURCE@", "toggle"])
MaterialSymbol { MaterialSymbol {
horizontalAlignment: Qt.AlignHCenter horizontalAlignment: Qt.AlignHCenter
fill: 0 fill: 0
@@ -93,7 +93,7 @@ Scope {
focus: sessionRoot.visible focus: sessionRoot.visible
buttonIcon: "lock" buttonIcon: "lock"
buttonText: Translation.tr("Lock") buttonText: Translation.tr("Lock")
onClicked: { Hyprland.dispatch("exec loginctl lock-session"); sessionRoot.hide() } onClicked: { Quickshell.execDetached(["loginctl", "lock-session"]); sessionRoot.hide() }
onFocusChanged: { if (focus) sessionRoot.subtitle = buttonText } onFocusChanged: { if (focus) sessionRoot.subtitle = buttonText }
KeyNavigation.right: sessionSleep KeyNavigation.right: sessionSleep
KeyNavigation.down: sessionHibernate KeyNavigation.down: sessionHibernate
@@ -102,7 +102,7 @@ Scope {
id: sessionSleep id: sessionSleep
buttonIcon: "dark_mode" buttonIcon: "dark_mode"
buttonText: Translation.tr("Sleep") buttonText: Translation.tr("Sleep")
onClicked: { Hyprland.dispatch("exec systemctl suspend || loginctl suspend"); sessionRoot.hide() } onClicked: { Quickshell.execDetached(["bash", "-c", "systemctl suspend || loginctl suspend"]); sessionRoot.hide() }
onFocusChanged: { if (focus) sessionRoot.subtitle = buttonText } onFocusChanged: { if (focus) sessionRoot.subtitle = buttonText }
KeyNavigation.left: sessionLock KeyNavigation.left: sessionLock
KeyNavigation.right: sessionLogout KeyNavigation.right: sessionLogout
@@ -112,7 +112,7 @@ Scope {
id: sessionLogout id: sessionLogout
buttonIcon: "logout" buttonIcon: "logout"
buttonText: Translation.tr("Logout") buttonText: Translation.tr("Logout")
onClicked: { Hyprland.dispatch("exec pkill Hyprland"); sessionRoot.hide() } onClicked: { Quickshell.execDetached(["pkill", "Hyprland"]); sessionRoot.hide() }
onFocusChanged: { if (focus) sessionRoot.subtitle = buttonText } onFocusChanged: { if (focus) sessionRoot.subtitle = buttonText }
KeyNavigation.left: sessionSleep KeyNavigation.left: sessionSleep
KeyNavigation.right: sessionTaskManager KeyNavigation.right: sessionTaskManager