Skip to content

feat: add sidebar showOnHover support and drawers isOpen IPC#1505

Open
silentone12725 wants to merge 4 commits into
caelestia-dots:mainfrom
silentone12725:feat/sidebar-show-on-hover
Open

feat: add sidebar showOnHover support and drawers isOpen IPC#1505
silentone12725 wants to merge 4 commits into
caelestia-dots:mainfrom
silentone12725:feat/sidebar-show-on-hover

Conversation

@silentone12725

Copy link
Copy Markdown

Summary

Adds hover-to-open support for the sidebar, consistent with how `launcher` and `dashboard` already work. Also adds an `isOpen` function to the `drawers` IPC target for external state queries.

Changes

  • `plugin/src/Caelestia/Config/sidebarconfig.hpp` — adds `showOnHover` property to `SidebarConfig` (defaults to `false`, opt-in)
  • `modules/drawers/Interactions.qml` — opens sidebar when cursor enters the top-right corner (bounded by notification panel height to avoid OSD overlap); closes when cursor leaves the sidebar/session area or exits the screen; adds `sidebarShortcutActive` flag so shortcut-triggered state is preserved correctly
  • `modules/Shortcuts.qml` — adds `isOpen(drawer)` to the `drawers` IPC target, returning `"1"` or `"0"`
  • `README.md` — adds `showOnHover` to the sidebar config reference

Behaviour

When `sidebar.showOnHover` is enabled in `shell.json`, moving the cursor to the top-right corner opens the sidebar instantly. The sidebar stays open while the cursor is within the sidebar or session panel area, and closes automatically when the cursor leaves. Drag gestures and keyboard shortcuts continue to work as before.

Related

Closes #226

@silentone12725

Copy link
Copy Markdown
Author

Note: the `check-qml` CI failure is a pre-existing issue on `main` (see runs 26436750421 and 26350256810) unrelated to this PR. The `check-cpp` and `lint` checks both pass.

- Add showOnHover property to SidebarConfig (defaults to false)
- Show sidebar on hover when cursor enters top-right corner
- Hide sidebar when cursor leaves sidebar area or exits screen
- Add sidebarShortcutActive flag to preserve shortcut-triggered state
- Add isOpen(drawer) to drawers IPC target for external state queries

Closes caelestia-dots#226
@silentone12725 silentone12725 force-pushed the feat/sidebar-show-on-hover branch from fb76932 to 8ec2b3d Compare June 5, 2026 13:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant