diff --git a/modules/ags/config/ts/bar/binto.ts b/modules/ags/config/ts/bar/binto.ts index 970e8a3..b5b29f4 100644 --- a/modules/ags/config/ts/bar/binto.ts +++ b/modules/ags/config/ts/bar/binto.ts @@ -15,6 +15,7 @@ export default () => BarRevealer({ monitor: 1, exclusivity: 'exclusive', anchor: ['bottom', 'left', 'right'], + transition: 'slide_up', bar: Box({ vertical: true, children: [ diff --git a/modules/ags/config/ts/bar/fullscreen.ts b/modules/ags/config/ts/bar/fullscreen.ts index 8e24386..bf72ec9 100644 --- a/modules/ags/config/ts/bar/fullscreen.ts +++ b/modules/ags/config/ts/bar/fullscreen.ts @@ -35,7 +35,7 @@ Hyprland.connect('event', (hyprObj) => { } }); -export default ({ bar, monitor = 0, ...rest }) => { +export default ({ bar, transition, monitor = 0, ...rest }) => { const BarVisible = Variable(true); FullscreenState.connect('changed', (v) => { @@ -76,6 +76,17 @@ export default ({ bar, monitor = 0, ...rest }) => { }), }); + const buffer = Box({ + css: 'min-height: 10px', + visible: BarVisible.bind().as((v) => !v), + }); + + const rev = Revealer({ + transition, + reveal_child: BarVisible.bind(), + child: bar, + }); + return Window({ name: `bar-${monitor}`, layer: 'overlay', @@ -92,20 +103,13 @@ export default ({ bar, monitor = 0, ...rest }) => { css: 'min-height: 1px; padding: 1px;', hexpand: true, hpack: 'fill', - vertical: true, + vertical: transition === 'slide_up' || + transition === 'slide_down', - children: [ - Box({ - css: 'min-height: 10px', - visible: BarVisible.bind().as((v) => !v), - }), - - Revealer({ - transition: 'slide_up', - reveal_child: BarVisible.bind(), - child: bar, - }), - ], + children: transition === 'slide_up' || + transition === 'slide_left' ? + [buffer, rev] : + [rev, buffer], }), }).on('enter-notify-event', () => { if (!BarVisible.value) { diff --git a/modules/ags/config/ts/bar/wim.ts b/modules/ags/config/ts/bar/wim.ts index 7c188a0..3c392ac 100644 --- a/modules/ags/config/ts/bar/wim.ts +++ b/modules/ags/config/ts/bar/wim.ts @@ -21,6 +21,7 @@ const SPACING = 12; export default () => BarRevealer({ anchor: ['top', 'left', 'right'], exclusivity: 'exclusive', + transition: 'slide_down', bar: CenterBox({ css: 'margin: 5px 5px 5px 5px', class_name: 'bar',