diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-05-04 22:34:49 +1000 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-05-04 22:34:49 +1000 |
| commit | d95c1347171965891fcb24023afbc8c462e1a920 (patch) | |
| tree | 5b7375af541573fb140e81f78ad98f3089033069 /modules | |
| parent | feat: brightness osd (diff) | |
| download | caelestia-shell-d95c1347171965891fcb24023afbc8c462e1a920.tar.gz caelestia-shell-d95c1347171965891fcb24023afbc8c462e1a920.tar.bz2 caelestia-shell-d95c1347171965891fcb24023afbc8c462e1a920.zip | |
osd: pause hide on hover
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/osd/Osd.qml | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/modules/osd/Osd.qml b/modules/osd/Osd.qml index 4d6ab7e..33a12ab 100644 --- a/modules/osd/Osd.qml +++ b/modules/osd/Osd.qml @@ -13,6 +13,7 @@ Variants { required property ShellScreen modelData readonly property Brightness.Monitor monitor: Brightness.getMonitorForScreen(modelData) property bool osdVisible + property bool hovered function show(): void { root.osdVisible = true; @@ -43,7 +44,10 @@ Variants { id: timer interval: OsdConfig.hideDelay - onTriggered: root.osdVisible = false + onTriggered: { + if (!root.hovered) + root.osdVisible = false; + } } LazyLoader { @@ -91,6 +95,19 @@ Variants { monitor: root.monitor } } + + HoverHandler { + id: hoverHandler + + parent: win + onHoveredChanged: { + root.hovered = hovered; + if (hovered) + timer.stop(); + else + root.osdVisible = false; + } + } } } } |