diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-07-09 00:24:01 +1000 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-07-09 00:24:01 +1000 |
| commit | 1ac4ac388c651cae7b90a00260a7751a499b8fd9 (patch) | |
| tree | 4de6f54263c35c1a48b148a93439e359689360cd | |
| parent | internal: better ripple anim (diff) | |
| download | caelestia-shell-1ac4ac388c651cae7b90a00260a7751a499b8fd9.tar.gz caelestia-shell-1ac4ac388c651cae7b90a00260a7751a499b8fd9.tar.bz2 caelestia-shell-1ac4ac388c651cae7b90a00260a7751a499b8fd9.zip | |
hyprland: fix refreshing on events
| -rw-r--r-- | services/Hyprland.qml | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/services/Hyprland.qml b/services/Hyprland.qml index bef1c34..1385723 100644 --- a/services/Hyprland.qml +++ b/services/Hyprland.qml @@ -23,15 +23,23 @@ Singleton { target: Hyprland function onRawEvent(event: HyprlandEvent): void { - if (event.name.endsWith("v2")) + const n = event.name; + if (n.endsWith("v2")) return; - if (event.name.includes("mon")) + if (["workspace", "moveworkspace", "activespecial", "focusedmon"].includes(n)) { + Hyprland.refreshWorkspaces(); + Hyprland.refreshMonitors(); + } else if (["openwindow", "closewindow", "movewindow"].includes(n)) { + Hyprland.refreshToplevels(); + Hyprland.refreshWorkspaces(); + } else if (n.includes("mon")) { Hyprland.refreshMonitors(); - else if (event.name.includes("workspace")) + } else if (n.includes("workspace")) { Hyprland.refreshWorkspaces(); - else + } else if (n.includes("window") || n.includes("group") || ["pin", "fullscreen", "changefloatingmode", "minimize"].includes(n)) { Hyprland.refreshToplevels(); + } } } } |