From 9eb40e032da30735292d577c5dfe72639967800d Mon Sep 17 00:00:00 2001 From: retrozinndev Date: Sat, 2 Aug 2025 18:13:55 -0300 Subject: [PATCH] :lipstick: chore(pages): add `.selected` css class for highlighting page-buttons, improvements --- ags/style/_control-center.scss | 14 ++----- ags/style/_wal.scss | 40 +++++++++---------- ags/widget/control-center/pages/Bluetooth.tsx | 24 +++++++---- .../control-center/pages/Microphone.tsx | 2 +- ags/widget/control-center/pages/Sound.tsx | 2 +- 5 files changed, 42 insertions(+), 40 deletions(-) diff --git a/ags/style/_control-center.scss b/ags/style/_control-center.scss index fce22aa..feee1a0 100644 --- a/ags/style/_control-center.scss +++ b/ags/style/_control-center.scss @@ -89,10 +89,6 @@ & label.sub-header { margin-top: 6px; } - - & button.default { - background: colors.$bg-tertiary; - } } } @@ -128,6 +124,10 @@ padding: 6px; border-radius: 12px; + &.selected { + background: colors.$bg-tertiary; + } + &:hover { background: rgba(colors.$fg-primary, .1); } @@ -260,12 +260,6 @@ .tile-pages #page { margin-top: 10px; - - &.bluetooth { - button.connected { - background: colors.$bg-tertiary; - } - } } box.notif-history { diff --git a/ags/style/_wal.scss b/ags/style/_wal.scss index a31897a..869ba1a 100644 --- a/ags/style/_wal.scss +++ b/ags/style/_wal.scss @@ -1,26 +1,26 @@ // SCSS Variables // Generated by 'wal' -$wallpaper: "/home/joaov/wallpapers/Frieren Underwater.jpg"; +$wallpaper: "/home/joaov/wallpapers/Frieren Rain.jpg"; // Special -$background: #0a1d30; -$foreground: #c1c6cb; -$cursor: #c1c6cb; +$background: #25301c; +$foreground: #c8cbc6; +$cursor: #c8cbc6; // Colors -$color0: #0a1d30; -$color1: #0e7ea2; -$color2: #3a829e; -$color3: #1f96b0; -$color4: #717880; -$color5: #9c8a87; -$color6: #758899; -$color7: #93989d; -$color8: #606b76; -$color9: #13A9D8; -$color10: #4EAED3; -$color11: #2AC9EB; -$color12: #97A0AB; -$color13: #D1B8B5; -$color14: #9CB6CD; -$color15: #c1c6cb; +$color0: #25301c; +$color1: #6c8251; +$color2: #7c9357; +$color3: #78846e; +$color4: #948a88; +$color5: #899869; +$color6: #98a27b; +$color7: #9ba197; +$color8: #707c66; +$color9: #91AE6D; +$color10: #A6C574; +$color11: #A0B093; +$color12: #C6B9B6; +$color13: #B7CB8D; +$color14: #CBD9A4; +$color15: #c8cbc6; diff --git a/ags/widget/control-center/pages/Bluetooth.tsx b/ags/widget/control-center/pages/Bluetooth.tsx index 7bcf065..482d128 100644 --- a/ags/widget/control-center/pages/Bluetooth.tsx +++ b/ags/widget/control-center/pages/Bluetooth.tsx @@ -34,7 +34,7 @@ export const BluetoothPage = new Page({ AstalBluetooth.get_default().adapter.start_discovery(); } }], - actionClosed: () => AstalBluetooth.get_default().adapter.discovering && + actionClosed: () => AstalBluetooth.get_default().adapter?.discovering && AstalBluetooth.get_default().adapter.stop_discovery(), bottomButtons: [{ title: tr("control_center.pages.more_settings"), @@ -46,19 +46,27 @@ export const BluetoothPage = new Page({ content: () => [ adptrs.length > 1) - } spacing={2}> + } spacing={2} orientation={Gtk.Orientation.VERTICAL}> - + adpts.length > 1)}> {(hasMoreAdapters: boolean) => hasMoreAdapters && - {(adapter: AstalBluetooth.Adapter) => - - } + {(adapter: AstalBluetooth.Adapter) => { + const isSelected = createBinding(AstalBluetooth.get_default(), "adapter").as(a => + a.address === adapter.address); + + return is ? "selected" : "")} + title={adapter.alias ?? "Adapter"} icon={"bluetooth-active-symbolic"} + endWidget={ + + } + />; + }} } @@ -95,7 +103,7 @@ export const BluetoothPage = new Page({ function DeviceWidget({ device }: { device: AstalBluetooth.Device }): Gtk.Widget { return - conn ? "connected" : "")} title={ + conn ? "selected" : "")} title={ createBinding(device, "alias").as(alias => alias ?? "Unknown Device")} icon={createBinding(device, "icon").as(ico => ico ?? "bluetooth-active-symbolic")} description={ diff --git a/ags/widget/control-center/pages/Microphone.tsx b/ags/widget/control-center/pages/Microphone.tsx index bca1efb..28f6560 100644 --- a/ags/widget/control-center/pages/Microphone.tsx +++ b/ags/widget/control-center/pages/Microphone.tsx @@ -17,7 +17,7 @@ export const PageMicrophone = new Page({ {(source: AstalWp.Endpoint) => isDefault ? "default" : "") + createBinding(source, "isDefault").as(isDefault => isDefault ? "selected" : "") } icon={createBinding(source, "icon").as(ico => lookupIcon(ico) ? ico : "audio-input-microphone-symbolic")} title={ createBinding(source, "description").as(desc => desc ?? "Microphone") diff --git a/ags/widget/control-center/pages/Sound.tsx b/ags/widget/control-center/pages/Sound.tsx index f3b1065..49e9a0c 100644 --- a/ags/widget/control-center/pages/Sound.tsx +++ b/ags/widget/control-center/pages/Sound.tsx @@ -21,7 +21,7 @@ export const PageSound = new Page({ {(sink: AstalWp.Endpoint) => - isDefault ? "default" : "")} + isDefault ? "selected" : "")} icon={createBinding(sink, "icon").as(ico => lookupIcon(ico) ? ico : "audio-card-symbolic")} title={createBinding(sink, "description").as(desc =>