From 5fc36cdc018cd62efeb6f37f77472cb028ec1298 Mon Sep 17 00:00:00 2001 From: end-4 <97237370+end-4@users.noreply.github.com> Date: Thu, 14 Mar 2024 20:00:22 +0700 Subject: [PATCH] fix tray (#329) --- .config/ags/modules/bar/normal/spaceright.js | 65 ++++++++++---------- .config/ags/modules/bar/normal/tray.js | 4 +- 2 files changed, 36 insertions(+), 33 deletions(-) diff --git a/.config/ags/modules/bar/normal/spaceright.js b/.config/ags/modules/bar/normal/spaceright.js index 8bca0103..ecc92857 100644 --- a/.config/ags/modules/bar/normal/spaceright.js +++ b/.config/ags/modules/bar/normal/spaceright.js @@ -48,41 +48,44 @@ export default () => { children: [ Widget.Box({ hexpand: true, }), barTray, - separatorDot, - barStatusIcons, + Widget.EventBox({ + onScrollUp: () => { + if (!Audio.speaker) return; + if (Audio.speaker.volume <= 0.09) Audio.speaker.volume += 0.01; + else Audio.speaker.volume += 0.03; + Indicator.popup(1); + }, + onScrollDown: () => { + if (!Audio.speaker) return; + if (Audio.speaker.volume <= 0.09) Audio.speaker.volume -= 0.01; + else Audio.speaker.volume -= 0.03; + Indicator.popup(1); + }, + onHover: () => { barStatusIcons.toggleClassName('bar-statusicons-hover', true) }, + onHoverLost: () => { barStatusIcons.toggleClassName('bar-statusicons-hover', false) }, + onPrimaryClick: () => App.toggleWindow('sideright'), + onSecondaryClick: () => execAsync(['bash', '-c', 'playerctl next || playerctl position `bc <<< "100 * $(playerctl metadata mpris:length) / 1000000 / 100"` &']).catch(print), + onMiddleClick: () => execAsync('playerctl play-pause').catch(print), + setup: (self) => self.on('button-press-event', (self, event) => { + if (event.get_button()[1] === 8) + execAsync('playerctl previous').catch(print) + }), + child: Widget.Box({ + children: [ + separatorDot, + barStatusIcons, + ], + }), + }), ], }), ] }); - return Widget.EventBox({ - onScrollUp: () => { - if (!Audio.speaker) return; - if (Audio.speaker.volume <= 0.09) Audio.speaker.volume += 0.01; - else Audio.speaker.volume += 0.03; - Indicator.popup(1); - }, - onScrollDown: () => { - if (!Audio.speaker) return; - if (Audio.speaker.volume <= 0.09) Audio.speaker.volume -= 0.01; - else Audio.speaker.volume -= 0.03; - Indicator.popup(1); - }, - onHover: () => { barStatusIcons.toggleClassName('bar-statusicons-hover', true) }, - onHoverLost: () => { barStatusIcons.toggleClassName('bar-statusicons-hover', false) }, - onPrimaryClick: () => App.toggleWindow('sideright'), - onSecondaryClick: () => execAsync(['bash', '-c', 'playerctl next || playerctl position `bc <<< "100 * $(playerctl metadata mpris:length) / 1000000 / 100"` &']).catch(print), - onMiddleClick: () => execAsync('playerctl play-pause').catch(print), - setup: (self) => self.on('button-press-event', (self, event) => { - if (event.get_button()[1] === 8) - execAsync('playerctl previous').catch(print) - }), - child: Widget.Box({ - homogeneous: false, - children: [ - actualContent, - Widget.Box({ className: 'bar-corner-spacing' }), - ] - }) + return Widget.Box({ + children: [ + actualContent, + Widget.Box({ className: 'bar-corner-spacing' }), + ] }); } \ No newline at end of file diff --git a/.config/ags/modules/bar/normal/tray.js b/.config/ags/modules/bar/normal/tray.js index 5ebbbd27..6d55549d 100644 --- a/.config/ags/modules/bar/normal/tray.js +++ b/.config/ags/modules/bar/normal/tray.js @@ -13,8 +13,8 @@ const SysTrayItem = (item) => Button({ setup: (self) => self .hook(item, (self) => self.tooltipMarkup = item['tooltip-markup']) , - onClicked: btn => item.menu.popup_at_widget(btn, Gravity.SOUTH, Gravity.NORTH, null), - onSecondaryClick: btn => item.menu.popup_at_widget(btn, Gravity.SOUTH, Gravity.NORTH, null), + onPrimaryClick: (_, event) => item.activate(event), + onSecondaryClick: (btn, event) => item.menu.popup_at_widget(btn, Gravity.SOUTH, Gravity.NORTH, null), }); export const Tray = (props = {}) => {