diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-07-10 13:03:33 +1000 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-07-10 13:03:33 +1000 |
| commit | 938b2f1f7120cdc23de1d6326a7bb867a7980df3 (patch) | |
| tree | ccbbd85f15ac7ffab97a874d0da48ee5176951f6 /modules | |
| parent | internal: add utilities panel base (diff) | |
| download | caelestia-shell-938b2f1f7120cdc23de1d6326a7bb867a7980df3.tar.gz caelestia-shell-938b2f1f7120cdc23de1d6326a7bb867a7980df3.tar.bz2 caelestia-shell-938b2f1f7120cdc23de1d6326a7bb867a7980df3.zip | |
feat: drag launcher to open/close
Also fix dragging for session
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/drawers/Interactions.qml | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/modules/drawers/Interactions.qml b/modules/drawers/Interactions.qml index b3e717a..0a00219 100644 --- a/modules/drawers/Interactions.qml +++ b/modules/drawers/Interactions.qml @@ -81,7 +81,7 @@ MouseArea { } // Show/hide session on drag - if (pressed && withinPanelHeight(panels.session, x, y)) { + if (pressed && inRightPanel(panels.session, dragStart.x, dragStart.y) && withinPanelHeight(panels.session, x, y)) { const dragX = x - dragStart.x; if (dragX < -Config.session.dragThreshold) visibilities.session = true; @@ -89,6 +89,15 @@ MouseArea { visibilities.session = false; } + // Show/hide launcher on drag + if (pressed && inBottomPanel(panels.launcher, dragStart.x, dragStart.y) && withinPanelWidth(panels.launcher, x, y)) { + const dragY = y - dragStart.y; + if (dragY < -Config.launcher.dragThreshold) + visibilities.launcher = true; + else if (dragY > Config.launcher.dragThreshold) + visibilities.launcher = false; + } + // Show dashboard on hover const showDashboard = inTopPanel(panels.dashboard, x, y); |