diff --git a/config/ags/js/date.js b/config/ags/js/date.js index 1b623e9..263b9b9 100644 --- a/config/ags/js/date.js +++ b/config/ags/js/date.js @@ -71,6 +71,7 @@ const CalendarWidget = () => Box({ export const Calendar = Window({ name: 'calendar', layer: 'overlay', + popup: true, anchor: 'top right', margin: [ 8, 182, 0, 0], child: PopUp({ diff --git a/config/ags/js/misc/popup.js b/config/ags/js/misc/popup.js index aeca01f..60a19d3 100644 --- a/config/ags/js/misc/popup.js +++ b/config/ags/js/misc/popup.js @@ -1,31 +1,20 @@ -const { Revealer } = ags.Widget; -const { closeWindow, openWindow } = ags.App; +const { Revealer, Box } = ags.Widget; +const { openWindow } = ags.App; -export const PopUp = ({name, child, transition = 'slide_down', ...params}) => Revealer({ - ...params, - // FIXME: popups don't work with revealers - setup: () => { - setTimeout(() => { - closeWindow(name); - }, 100); +export const PopUp = ({name, child, transition = 'slide_down', ...params}) => Box({ + style: 'min-height:1px; min-width:1px', + child: Revealer({ + ...params, + transition, + transitionDuration: 500, + connections: [[ags.App, (revealer, currentName, visible) => { + if (currentName === name) { + revealer.reveal_child = visible; - // my eyes hurt - if (name == 'overview') { - setTimeout(() => { - openWindow(name); - closeWindow(name); - }, 700); - } - }, - transition, - transitionDuration: 500, - connections: [[ags.App, (revealer, currentName, visible) => { - if (currentName === name) { - revealer.reveal_child = visible; - - if (visible && name !== 'overview') - openWindow('closer'); - } - }]], - child: child, + if (visible && name !== 'overview') + openWindow('closer'); + } + }]], + child: child, + }), }); diff --git a/config/ags/js/notifications/center.js b/config/ags/js/notifications/center.js index 9e09d80..3ee0708 100644 --- a/config/ags/js/notifications/center.js +++ b/config/ags/js/notifications/center.js @@ -136,6 +136,7 @@ export const NotificationCenter = Window({ name: 'notification-center', layer: 'overlay', anchor: 'top right', + popup: true, margin: [ 8, 60, 0, 0 ], child: PopUp({ name: 'notification-center', diff --git a/config/ags/js/overview/main.js b/config/ags/js/overview/main.js index 882f822..b998afe 100644 --- a/config/ags/js/overview/main.js +++ b/config/ags/js/overview/main.js @@ -8,6 +8,7 @@ import { updateClients } from './clients.js'; export default Window({ name: 'overview', layer: 'overlay', + popup: true, child: PopUp({ name: 'overview', diff --git a/config/ags/js/powermenu.js b/config/ags/js/powermenu.js index 5a2b041..381a927 100644 --- a/config/ags/js/powermenu.js +++ b/config/ags/js/powermenu.js @@ -37,6 +37,7 @@ const PowermenuWidget = CenterBox({ export const Powermenu = Window({ name: 'powermenu', + popup: true, layer: 'overlay', child: PopUp({ name: 'powermenu', diff --git a/config/ags/js/quick-settings/main.js b/config/ags/js/quick-settings/main.js index 1b7c506..40dc13b 100644 --- a/config/ags/js/quick-settings/main.js +++ b/config/ags/js/quick-settings/main.js @@ -71,6 +71,7 @@ export const QuickSettings = Window({ name: 'quick-settings', layer: 'overlay', anchor: 'top right', + popup: true, margin: [ 8, 5, 0, ], child: PopUp({ name: 'quick-settings',