hypr-dotfiles/wlogout/layout
Jeena 496fd6fc67 hypr: migrate runtime IPC calls to the Hyprland 0.56 Lua syntax
Hyprland 0.56 removed the string form of `hyprctl dispatch` and
`hyprctl keyword` entirely: the argument is now evaluated as Lua
(hl.dispatch expects a dispatcher object from hl.dsp.*), and `setprop`
lost the `noborder` property in favour of border_size 0. Everything
that shelled out to these silently broke — wlogout's logout button
did nothing, idle screen-off and lid-close DPMS died, borders stopped
tracking single-window workspaces, and display mirroring was gone.

All callers now use the documented forms: `hyprctl dispatch
"hl.dsp.*"` for dispatchers and `hyprctl eval "hl.monitor(...)"` for
monitor rules. dynamic-borders.sh gets a set_border() helper around
the new window.set_prop dispatcher.

wlogout layouts additionally cannot contain escaped quotes at all:
it parses them with jsmn, which never unescapes strings, so \" used
to reach the shell verbatim and break the command with a syntax
error. Actions now use single quotes only.
2026-09-20 14:03:30 +09:00

36 lines
672 B
Text

{
"label" : "lock",
"action" : "hyprlock &",
"text" : "Lock",
"keybind" : "l"
}
{
"label" : "hibernate",
"action" : "systemctl hibernate",
"text" : "Hibernate (SSD)",
"keybind" : "h"
}
{
"label" : "logout",
"action" : "hyprctl dispatch 'hl.dsp.exit()'",
"text" : "Logout",
"keybind" : "e"
}
{
"label" : "shutdown",
"action" : "systemctl poweroff",
"text" : "Shutdown",
"keybind" : "s"
}
{
"label" : "suspend",
"action" : "systemctl suspend",
"text" : "Suspend (RAM)",
"keybind" : "u"
}
{
"label" : "reboot",
"action" : "systemctl reboot",
"text" : "Reboot",
"keybind" : "r"
}