diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-08-24 14:14:30 +1000 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-08-24 14:14:30 +1000 |
| commit | d1e5f484461e27133317c78b81347d05dc3a2760 (patch) | |
| tree | 7e84f152a66b69366d6abb67af63ec7306fca7bd /services/Hyprland.qml | |
| parent | [CI] chore: update flake (diff) | |
| download | caelestia-shell-d1e5f484461e27133317c78b81347d05dc3a2760.tar.gz caelestia-shell-d1e5f484461e27133317c78b81347d05dc3a2760.tar.bz2 caelestia-shell-d1e5f484461e27133317c78b81347d05dc3a2760.zip | |
internal: rename Hyprland -> Hypr
Prevent shadowing
Fixes window info not changing on switching to an empty workspace
Diffstat (limited to 'services/Hyprland.qml')
| -rw-r--r-- | services/Hyprland.qml | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/services/Hyprland.qml b/services/Hyprland.qml deleted file mode 100644 index 0f31453..0000000 --- a/services/Hyprland.qml +++ /dev/null @@ -1,69 +0,0 @@ -pragma Singleton - -import Quickshell -import Quickshell.Hyprland -import Quickshell.Io -import QtQuick - -Singleton { - id: root - - readonly property var toplevels: Hyprland.toplevels - readonly property var workspaces: Hyprland.workspaces - readonly property var monitors: Hyprland.monitors - - readonly property HyprlandToplevel activeToplevel: { - const t = Hyprland.activeToplevel; - if (t?.workspace?.focused || t?.workspace?.name.startsWith("special:")) - return t; - return null; - } - readonly property HyprlandWorkspace focusedWorkspace: Hyprland.focusedWorkspace - readonly property HyprlandMonitor focusedMonitor: Hyprland.focusedMonitor - - readonly property int activeWsId: focusedWorkspace?.id ?? 1 - readonly property string kbLayout: kbLayoutFull.slice(0, 2).toLowerCase() - property string kbLayoutFull: "?" - - function dispatch(request: string): void { - Hyprland.dispatch(request); - } - - function monitorFor(screen: ShellScreen): HyprlandMonitor { - return Hyprland.monitorFor(screen); - } - - Connections { - target: Hyprland - - function onRawEvent(event: HyprlandEvent): void { - const n = event.name; - if (n.endsWith("v2")) - return; - - if (n === "activelayout") { - root.kbLayoutFull = event.parse(2)[1]; - } else 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 (n.includes("workspace")) { - Hyprland.refreshWorkspaces(); - } else if (n.includes("window") || n.includes("group") || ["pin", "fullscreen", "changefloatingmode", "minimize"].includes(n)) { - Hyprland.refreshToplevels(); - } - } - } - - Process { - running: true - command: ["hyprctl", "-j", "devices"] - stdout: StdioCollector { - onStreamFinished: root.kbLayoutFull = JSON.parse(text).keyboards.find(k => k.main).active_keymap - } - } -} |