diff --git a/settings/hyprland.nix b/settings/hyprland.nix index 0a529ad..f7eb026 100644 --- a/settings/hyprland.nix +++ b/settings/hyprland.nix @@ -838,6 +838,7 @@ in property real dropdownX: 0 property real fullWidth: 200 property real fullHeight: 200 + property int autoCloseMs: 3000 default property alias content: dropdownContent.data anchor.window: bar @@ -854,11 +855,30 @@ in onVisibleChanged: { if (visible) { open = true; + _autoClose.restart(); } else { open = false; + _autoClose.stop(); } } + Timer { + id: _autoClose + interval: dropdown.autoCloseMs + onTriggered: bar.closeAllDropdowns() + } + + MouseArea { + anchors.fill: parent + hoverEnabled: true + propagateComposedEvents: true + onEntered: _autoClose.stop() + onExited: _autoClose.restart() + onClicked: (mouse) => mouse.accepted = false + onPressed: (mouse) => mouse.accepted = false + onReleased: (mouse) => mouse.accepted = false + } + Item { anchors.right: _dropdownRect.left anchors.top: parent.top