summaryrefslogtreecommitdiff
path: root/src/modules/session.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/session.tsx')
-rw-r--r--src/modules/session.tsx44
1 files changed, 0 insertions, 44 deletions
diff --git a/src/modules/session.tsx b/src/modules/session.tsx
deleted file mode 100644
index 40d3b31..0000000
--- a/src/modules/session.tsx
+++ /dev/null
@@ -1,44 +0,0 @@
-import PopupWindow from "@/widgets/popupwindow";
-import { execAsync } from "astal";
-import { App, Astal, Gtk } from "astal/gtk3";
-
-const Item = ({ icon, label, cmd, isDefault }: { icon: string; label: string; cmd: string; isDefault?: boolean }) => (
- <box vertical className="item">
- <button
- cursor="pointer"
- onClicked={() => execAsync(cmd).catch(console.error)}
- setup={self =>
- isDefault &&
- self.hook(App, "window-toggled", (_, window) => {
- if (window.name === "session" && window.visible) self.grab_focus();
- })
- }
- >
- <label className="icon" label={icon} />
- </button>
- <label className="label" label={label} />
- </box>
-);
-
-export default () => (
- <PopupWindow
- className="session"
- name="session"
- anchor={Astal.WindowAnchor.TOP | Astal.WindowAnchor.LEFT | Astal.WindowAnchor.BOTTOM | Astal.WindowAnchor.RIGHT}
- exclusivity={Astal.Exclusivity.IGNORE}
- keymode={Astal.Keymode.EXCLUSIVE}
- layer={Astal.Layer.OVERLAY}
- borderWidth={0} // Don't need border width cause takes up entire screen
- >
- <box vertical halign={Gtk.Align.CENTER} valign={Gtk.Align.CENTER} className="inner">
- <box>
- <Item icon="logout" label="Logout" cmd="uwsm stop" isDefault />
- <Item icon="cached" label="Reboot" cmd="systemctl reboot" />
- </box>
- <box>
- <Item icon="downloading" label="Hibernate" cmd="systemctl hibernate" />
- <Item icon="power_settings_new" label="Shutdown" cmd="systemctl poweroff" />
- </box>
- </box>
- </PopupWindow>
-);