aboutsummaryrefslogtreecommitdiff
path: root/.config/ags/widget/quicksettings/widgets/PowerProfile.ts
diff options
context:
space:
mode:
authorsrdusr <trevorgray@srdusr.com>2025-08-30 19:22:59 +0200
committersrdusr <trevorgray@srdusr.com>2025-08-30 19:22:59 +0200
commit19120d4f9761c67d99ed1ce3da6084b83f5a49c9 (patch)
treef234cad1bdad88114a63c9702144da487024967a /.config/ags/widget/quicksettings/widgets/PowerProfile.ts
parent5928998af5404ae2be84c6cecc10ebf84bd3f3ed (diff)
downloaddotfiles-19120d4f9761c67d99ed1ce3da6084b83f5a49c9.tar.gz
dotfiles-19120d4f9761c67d99ed1ce3da6084b83f5a49c9.zip
Linux-specific dotfiles
Diffstat (limited to '.config/ags/widget/quicksettings/widgets/PowerProfile.ts')
-rw-r--r--.config/ags/widget/quicksettings/widgets/PowerProfile.ts99
1 files changed, 0 insertions, 99 deletions
diff --git a/.config/ags/widget/quicksettings/widgets/PowerProfile.ts b/.config/ags/widget/quicksettings/widgets/PowerProfile.ts
deleted file mode 100644
index f566aaf..0000000
--- a/.config/ags/widget/quicksettings/widgets/PowerProfile.ts
+++ /dev/null
@@ -1,99 +0,0 @@
-import { ArrowToggleButton, Menu } from "../ToggleButton"
-import icons from "lib/icons"
-
-import asusctl from "service/asusctl"
-const asusprof = asusctl.bind("profile")
-
-const AsusProfileToggle = () => ArrowToggleButton({
- name: "asusctl-profile",
- icon: asusprof.as(p => icons.asusctl.profile[p]),
- label: asusprof,
- connection: [asusctl, () => asusctl.profile !== "Balanced"],
- activate: () => asusctl.setProfile("Quiet"),
- deactivate: () => asusctl.setProfile("Balanced"),
- activateOnArrow: false,
-})
-
-const AsusProfileSelector = () => Menu({
- name: "asusctl-profile",
- icon: asusprof.as(p => icons.asusctl.profile[p]),
- title: "Profile Selector",
- content: [
- Widget.Box({
- vertical: true,
- hexpand: true,
- children: [
- Widget.Box({
- vertical: true,
- children: asusctl.profiles.map(prof => Widget.Button({
- on_clicked: () => asusctl.setProfile(prof),
- child: Widget.Box({
- children: [
- Widget.Icon(icons.asusctl.profile[prof]),
- Widget.Label(prof),
- ],
- }),
- })),
- }),
- ],
- }),
- Widget.Separator(),
- Widget.Button({
- on_clicked: () => Utils.execAsync("rog-control-center"),
- child: Widget.Box({
- children: [
- Widget.Icon(icons.ui.settings),
- Widget.Label("Rog Control Center"),
- ],
- }),
- }),
- ],
-})
-
-
-const pp = await Service.import("powerprofiles")
-const profile = pp.bind("active_profile")
-const profiles = pp.profiles.map(p => p.Profile)
-
-const pretty = (str: string) => str
- .split("-")
- .map(str => `${str.at(0)?.toUpperCase()}${str.slice(1)}`)
- .join(" ")
-
-const PowerProfileToggle = () => ArrowToggleButton({
- name: "asusctl-profile",
- icon: profile.as(p => icons.powerprofile[p]),
- label: profile.as(pretty),
- connection: [pp, () => pp.active_profile !== profiles[1]],
- activate: () => pp.active_profile = profiles[0],
- deactivate: () => pp.active_profile = profiles[1],
- activateOnArrow: false,
-})
-
-const PowerProfileSelector = () => Menu({
- name: "asusctl-profile",
- icon: profile.as(p => icons.powerprofile[p]),
- title: "Profile Selector",
- content: [Widget.Box({
- vertical: true,
- hexpand: true,
- child: Widget.Box({
- vertical: true,
- children: profiles.map(prof => Widget.Button({
- on_clicked: () => pp.active_profile = prof,
- child: Widget.Box({
- children: [
- Widget.Icon(icons.powerprofile[prof]),
- Widget.Label(pretty(prof)),
- ],
- }),
- })),
- }),
- })],
-})
-
-export const ProfileToggle = asusctl.available
- ? AsusProfileToggle : PowerProfileToggle
-
-export const ProfileSelector = asusctl.available
- ? AsusProfileSelector : PowerProfileSelector