diff --git a/modules/ags/config/ts/bar/hovers/audio.ts b/modules/ags/config/ts/bar/hovers/audio.ts index cffa56a..9e01193 100644 --- a/modules/ags/config/ts/bar/hovers/audio.ts +++ b/modules/ags/config/ts/bar/hovers/audio.ts @@ -13,9 +13,9 @@ export default () => HoverRevealer({ }), label: Label().hook(Audio, (self) => { - if (Audio.speaker?.volume) { + if (Audio.speaker.volume) { self.label = - `${Math.round(Audio.speaker?.volume * 100)}%`; + `${Math.round(Audio.speaker.volume * 100)}%`; } }, 'speaker-changed'), }); diff --git a/modules/ags/config/ts/bar/hovers/hover-revealer.ts b/modules/ags/config/ts/bar/hovers/hover-revealer.ts index b01102e..33a9fc1 100644 --- a/modules/ags/config/ts/bar/hovers/hover-revealer.ts +++ b/modules/ags/config/ts/bar/hovers/hover-revealer.ts @@ -1,5 +1,7 @@ const { Box, Revealer } = Widget; +import Gtk from 'gi://Gtk?version=3.0'; + import Separator from '../../misc/separator.ts'; import CursorBox from '../../misc/cursorbox.ts'; @@ -12,6 +14,9 @@ export default ({ }) => { const hoverRevLabel = Revealer({ transition: 'slide_right', + attribute: { + var: Variable(Box()), + }, child: Box({ @@ -26,6 +31,7 @@ export default ({ const widget = CursorBox({ on_hover: () => { hoverRevLabel.reveal_child = true; + hoverRevLabel.attribute.var.value.set_state_flags(Gtk.StateFlags.PRELIGHT, false); }, child: Box({ diff --git a/modules/ags/config/ts/bar/items/quick-settings.ts b/modules/ags/config/ts/bar/items/quick-settings.ts index 7c8d012..2f36d47 100644 --- a/modules/ags/config/ts/bar/items/quick-settings.ts +++ b/modules/ags/config/ts/bar/items/quick-settings.ts @@ -28,7 +28,7 @@ export default () => { Network(), ]; - return CursorBox({ + const widget = CursorBox({ class_name: 'toggle-off', on_primary_click_release: (self) => { @@ -76,4 +76,10 @@ export default () => { ], }), }); + + widget.attribute.hoverRevealers.forEach((hv) => { + hv.attribute.var.setValue(widget); + }); + + return widget; }; diff --git a/modules/ags/config/ts/quick-settings/slider-box.ts b/modules/ags/config/ts/quick-settings/slider-box.ts index 1bf9058..22f5588 100644 --- a/modules/ags/config/ts/quick-settings/slider-box.ts +++ b/modules/ags/config/ts/quick-settings/slider-box.ts @@ -41,7 +41,7 @@ export default () => Box({ setup: (self) => { self .hook(Audio, () => { - self.value = Audio.speaker?.volume || 0; + self.value = Audio.speaker.volume || 0; }, 'speaker-changed') // OnClick