From 966ec5023a61bfdc1135fa3bf71b87e63c9ff383 Mon Sep 17 00:00:00 2001
From: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>
Date: Thu, 30 Jan 2025 21:46:40 +1100
Subject: allow toggling sideleft and right from cli

---
 app.tsx | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

(limited to 'app.tsx')

diff --git a/app.tsx b/app.tsx
index 32a74ec..f6ed759 100644
--- a/app.tsx
+++ b/app.tsx
@@ -6,6 +6,7 @@ import Popdowns from "@/modules/popdowns";
 import Session from "@/modules/session";
 import Monitors from "@/services/monitors";
 import Players from "@/services/players";
+import type PopupWindow from "@/widgets/popupwindow";
 import { execAsync, GLib, monitorFile, readFileAsync, writeFileAsync } from "astal";
 import { App } from "astal/gtk3";
 
@@ -40,7 +41,19 @@ App.start({
         if (request === "quit") App.quit();
         else if (request === "reload-css") loadStyleAsync().catch(console.error);
         else if (request.startsWith("show")) App.get_window(request.split(" ")[1])?.show();
-        else if (request === "media play-pause") Players.get_default().lastPlayer?.play_pause();
+        else if (request === "toggle sideleft") {
+            const window = App.get_window("sideleft") as PopupWindow | null;
+            if (window) {
+                if (window.visible) window.hide();
+                else window.popup_at_corner("top left");
+            }
+        } else if (request === "toggle sideright") {
+            const window = App.get_window("sideright") as PopupWindow | null;
+            if (window) {
+                if (window.visible) window.hide();
+                else window.popup_at_corner("top right");
+            }
+        } else if (request === "media play-pause") Players.get_default().lastPlayer?.play_pause();
         else if (request === "media next") Players.get_default().lastPlayer?.next();
         else if (request === "media previous") Players.get_default().lastPlayer?.previous();
         else if (request === "media stop") Players.get_default().lastPlayer?.stop();
-- 
cgit v1.2.3-freya

