diff options
Diffstat (limited to 'accounts/gkleen@sif/shell/quickshell/UnixIPC.qml')
-rw-r--r-- | accounts/gkleen@sif/shell/quickshell/UnixIPC.qml | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/accounts/gkleen@sif/shell/quickshell/UnixIPC.qml b/accounts/gkleen@sif/shell/quickshell/UnixIPC.qml index 742ef4f5..e7b7b673 100644 --- a/accounts/gkleen@sif/shell/quickshell/UnixIPC.qml +++ b/accounts/gkleen@sif/shell/quickshell/UnixIPC.qml | |||
@@ -1,7 +1,9 @@ | |||
1 | import Quickshell | 1 | import Quickshell |
2 | import Quickshell.Io | 2 | import Quickshell.Io |
3 | import Quickshell.Services.Pipewire | 3 | import Quickshell.Services.Pipewire |
4 | import Quickshell.Services.Mpris | ||
4 | import qs.Services | 5 | import qs.Services |
6 | import Custom as Custom | ||
5 | 7 | ||
6 | Scope { | 8 | Scope { |
7 | id: root | 9 | id: root |
@@ -19,6 +21,14 @@ Scope { | |||
19 | root.onCommandVolume(command.Volume); | 21 | root.onCommandVolume(command.Volume); |
20 | else if (command.Brightness) | 22 | else if (command.Brightness) |
21 | root.onCommandBrightness(command.Brightness); | 23 | root.onCommandBrightness(command.Brightness); |
24 | else if (command.LockSession) | ||
25 | Custom.Systemd.lockSession(); | ||
26 | else if (command.Suspend) | ||
27 | Custom.Systemd.suspend(); | ||
28 | else if (command.Hibernate) | ||
29 | Custom.Systemd.hibernate(); | ||
30 | else if (command.Mpris) | ||
31 | root.onCommandMpris(command.Mpris); | ||
22 | else | 32 | else |
23 | console.warn("UnixIPC: Command not handled:", JSON.stringify(command)); | 33 | console.warn("UnixIPC: Command not handled:", JSON.stringify(command)); |
24 | } catch (e) { | 34 | } catch (e) { |
@@ -56,4 +66,12 @@ Scope { | |||
56 | if (command === "down") | 66 | if (command === "down") |
57 | Brightness.currBrightness -= 0.02 | 67 | Brightness.currBrightness -= 0.02 |
58 | } | 68 | } |
69 | |||
70 | function onCommandMpris(command) { | ||
71 | if (command.PauseAll) | ||
72 | Array.from(MprisProxy.players).forEach(player => { | ||
73 | if (player.canPause && player.isPlaying) | ||
74 | player.pause(); | ||
75 | }); | ||
76 | } | ||
59 | } | 77 | } |