diff options
| -rw-r--r-- | scss/widgets.scss | 9 | ||||
| -rw-r--r-- | utils/widgets.tsx | 13 |
2 files changed, 3 insertions, 19 deletions
diff --git a/scss/widgets.scss b/scss/widgets.scss index 24fe4af..39ab490 100644 --- a/scss/widgets.scss +++ b/scss/widgets.scss @@ -17,15 +17,6 @@ label.icon { @include font.icon; } -.popup-window { - transition: opacity 300ms linear; - opacity: 0; - - &.visible { - opacity: 1; - } -} - separator, .separator { @include lib.rounded(2); diff --git a/utils/widgets.tsx b/utils/widgets.tsx index 7fddd04..51986ec 100644 --- a/utils/widgets.tsx +++ b/utils/widgets.tsx @@ -47,7 +47,7 @@ export const setupCustomTooltip = (self: any, text: string | Binding<string>) => export const setupChildClickthrough = (self: any) => self.connect("size-allocate", () => self.get_window()?.set_child_input_shapes()); -const overrideProp = <T,>( +const extendProp = <T,>( prop: T | Binding<T | undefined> | undefined, override: (prop: T | undefined) => T | undefined ) => prop && (prop instanceof Binding ? prop.as(override) : override(prop)); @@ -58,21 +58,14 @@ export const convertPopupWindowProps = (props: Widget.WindowProps): Widget.Windo ...props, visible: false, application: App, - name: props.monitor - ? overrideProp(props.name, n => (n && props.monitor ? n + props.monitor : undefined)) - : props.name, - namespace: overrideProp(props.name, n => `caelestia-${n}`), - className: overrideProp(props.className, c => `popup-window ${c}`), + name: props.monitor ? extendProp(props.name, n => (n ? n + props.monitor : undefined)) : props.name, + namespace: extendProp(props.name, n => `caelestia-${n}`), onKeyPressEvent: (self, event) => { // Close window on escape if (event.get_keyval()[1] === Gdk.KEY_Escape) self.hide(); return props.onKeyPressEvent?.(self, event); }, - setup: self => { - self.connect("notify::visible", () => self.toggleClassName("visible", self.visible)); - props.setup?.(self); - }, borderWidth: 20, // To allow shadow, cause if not it gets cut off }); |