fix(eww): port hyprctl dispatch calls to Lua API

Replace hyprctl dispatch with hyprctl eval using hl.dsp.* in all
three eww variants. Workspace switching uses hl.dsp.focus with r+/r-
relative prefixes; killactive becomes hl.dsp.window.close(); exec
uses hl.dsp.exec_cmd.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
main
The_miro 2026-05-19 16:57:10 +02:00
parent ef4a0a483d
commit 7fe95c8b72
3 changed files with 12 additions and 12 deletions

View File

@ -31,7 +31,7 @@
(metric :label "󰓃"
:value volume
:onchange "pactl set-sink-volume @DEFAULT_SINK@ {}%"
:onclick "killall pavucontrol || hyprctl dispatch exec \[tag +mixer\] pavucontrol")
:onclick "killall pavucontrol || hyprctl eval 'hl.dsp.exec_cmd(\"[tag +mixer] pavucontrol\")'")
(box
:tooltip {disks}
(metric :label ""
@ -65,14 +65,14 @@
(deflisten workspaces "hyprland-workspaces _")
(defwidget workspaceWidget [monitor]
(eventbox :onscroll "hyprctl dispatch workspace `echo {} | sed 's/up/+/\' | sed 's/down/-/'`1"
(eventbox :onscroll "hyprctl eval \"hl.dsp.focus({workspace='$(echo {} | sed 's/up/r+/;s/down/r-/')1'})\""
(box :class "workspaces"
:space-evenly false
:width 20
(for i in {workspaces[monitor].workspaces}
(button
:width 20
:onclick "hyprctl dispatch workspace ${i.id}"
:onclick "hyprctl eval 'hl.dsp.focus({workspace=${i.id}})'"
:class "${i.class}"
{i.name == "special:magic" ? "󱂬" : "󱂬${i.name}"})))))

View File

@ -30,7 +30,7 @@
(metric :label "󰓃 "
:value volume
:onchange "pactl set-sink-volume @DEFAULT_SINK@ {}%"
:onclick "killall pavucontrol || hyprctl dispatch exec \[tag +mixer\] pavucontrol")
:onclick "killall pavucontrol || hyprctl eval 'hl.dsp.exec_cmd(\"[tag +mixer] pavucontrol\")'")
)
)
@ -48,7 +48,7 @@
:orientation "h"
:space-evenly false
:halign "center"
:onclick "hyprctl dispatch workspace -1"
:onclick "hyprctl eval 'hl.dsp.focus({workspace=\"r-1\"})'"
{""}
)
@ -63,7 +63,7 @@
:orientation "h"
:space-evenly false
:halign "center"
:onclick "hyprctl dispatch killactive"
:onclick "hyprctl eval 'hl.dsp.window.close()'"
{""}
)
(button :class "music"
@ -78,7 +78,7 @@
:orientation "h"
:space-evenly false
:halign "center"
:onclick "hyprctl dispatch workspace +1"
:onclick "hyprctl eval 'hl.dsp.focus({workspace=\"r+1\"})'"
{""}
)
@ -116,14 +116,14 @@
(deflisten workspaces "hyprland-workspaces _")
(defwidget workspaceWidget [monitor]
(eventbox :onscroll "hyprctl dispatch workspace `echo {} | sed 's/up/+/\' | sed 's/down/-/'`1"
(eventbox :onscroll "hyprctl eval \"hl.dsp.focus({workspace='$(echo {} | sed 's/up/r+/;s/down/r-/')1'})\""
(box :class "workspaces"
:space-evenly false
:width 20
(for i in {workspaces[monitor].workspaces}
(button
:width 20
:onclick "hyprctl dispatch workspace ${i.id}"
:onclick "hyprctl eval 'hl.dsp.focus({workspace=${i.id}})'"
:class "${i.class}"
{i.name == "special:magic" ? "󱂬" : "󱂬${i.name}"})))))

View File

@ -36,7 +36,7 @@
(metric :label "󰓃"
:value volume
:onchange "pactl set-sink-volume @DEFAULT_SINK@ {}%"
:onclick "killall pavucontrol || hyprctl dispatch exec \[tag +mixer\] pavucontrol")
:onclick "killall pavucontrol || hyprctl eval 'hl.dsp.exec_cmd(\"[tag +mixer] pavucontrol\")'")
(box
:tooltip {disks}
(metric :label ""
@ -71,14 +71,14 @@
(deflisten workspaces "hyprland-workspaces _")
(defwidget workspaceWidget [monitor]
(eventbox :onscroll "hyprctl dispatch workspace `echo {} | sed 's/up/+/\' | sed 's/down/-/'`1"
(eventbox :onscroll "hyprctl eval \"hl.dsp.focus({workspace='$(echo {} | sed 's/up/r+/;s/down/r-/')1'})\""
(box :class "workspaces"
:space-evenly false
:width 20
(for i in {workspaces[monitor].workspaces}
(button
:width 20
:onclick "hyprctl dispatch workspace ${i.id}"
:onclick "hyprctl eval 'hl.dsp.focus({workspace=${i.id}})'"
:class "${i.class}"
{i.name == "special:magic" ? "󱂬" : "󱂬${i.name}"})))))