Files
TheaninovOS/home/desktops/hyprland/ags/js/powermenu/PowerMenu.js
2023-12-30 20:38:47 +01:00

32 lines
831 B
JavaScript

import Widget from "resource:///com/github/Aylur/ags/widget.js";
import icons from "../icons.js";
import PowerMenu from "../services/powermenu.js";
import ShadedPopup from "./ShadedPopup.js";
/**
* @param {'sleep' | 'reboot' | 'logout' | 'shutdown'} action
* @param {string} label
*/
const SysButton = (action, label) =>
Widget.Button({
on_clicked: () => PowerMenu.action(action),
child: Widget.Box({
vertical: true,
children: [Widget.Icon(icons.powermenu[action]), Widget.Label(label)],
}),
});
export default () =>
ShadedPopup({
name: "powermenu",
expand: true,
child: Widget.Box({
children: [
SysButton("sleep", "Sleep"),
SysButton("reboot", "Reboot"),
SysButton("logout", "Log Out"),
SysButton("shutdown", "Shutdown"),
],
}),
});