On Hyprland, an island holding keyboard focus runs a focus grab that
only whitelisted the bar window. The full-screen dismiss layer wasn't
on the list, so the first click outside only ended the grab and the
card needed a second click to close. That hit every card that takes
keyboard focus (weather right away, media after a click inside).
Add the dismiss layer to the grab, the way DPopout whitelists its
background window.
* feat(island): add system tray slot and overflow menu to compact home
- Add system tray slot and overflow expander menu in Dynamic Island
- Share tray icon path resolution and DBus context menu fallback in TrayMenuManager
- Support edge-anchored context menu positioning across top, bottom, left, and right
- Lock bottom and edge anchoring in DContextMenu to prevent animation jitter
* fix(island): only instantiate tray menus when tray slot is enabled
* feat(island): expand tray item and caret click area to slot height
* fix(island): use Theme.surfaceTextHover and restore DContextMenu height behavior
* refactor(tray): extract shared TrayMenuContent and TrayOverflowGrid, support tray order and IPC in island
* Revert "refactor(tray): extract shared TrayMenuContent and TrayOverflowGrid, support tray order and IPC in island"
This reverts commit 29888f89cd.
* refactor(tray): use shared TrayMenuManager helpers and TrayItemIcon, support tray order and IPC in island
* refactor(tray): extract shared TrayMenuContent and TrayOverflowGrid
* feat(island): support tray item drag and drop reordering
* fix(island): prevent re-entrant tray drag reordering on model destruction
* fix(tray): remove native submenu anchor hydration to prevent popup stutter
* fix(tray): decouple submenu hydrator from anchor window to avoid stutter
* fix(tray): restore anchor window on submenu hydrator and disable on island
* tray: fix bar overflow surface & reuse max visible items on the island
* feat(bar): support auto-hide for island in overlay mode
* fix(settings): restore selectedIslandDocked scope for overlay islands
* fix(bar): keep edge hover strip while island auto-hide is revealed
* island: open media and the power menu in one step, fix dash edits
- Clicking media on the home face opens the player. Closing a sheet
goes back to the face the user picked, and an opt-in setting
switches to media when playback starts.
- The power menu can open in the island (Super+X, the dock button),
with its own route row in the island settings.
- An island collapses when another popout opens on its screen.
- The widgets page hides the center section the island replaces.
- Dragging or resizing a dashboard card no longer blanks the overview:
Qt hands the committed list over as a non-array, which read as empty.
- The island blur region stays inside the rounded fill.
* fix(island): address review feedback on switching faces by mouse
Opening the player with one click removed the only mouse path from
the home face to the media face. A right-click on the collapsed island
now swaps between the two while media is available.
The swap resizes the island under the pointer, so hover-open stays off
until the pointer leaves. Without a face to swap to, the press is not
accepted and reaches the bar's own right-click action as before.
* notifications: allow extra conditions per rule
Co-Authored-By: Claude Opus 5.5 <[email protected]>
* notifications: add translator context to the rule condition strings
Co-Authored-By: Claude Opus 5.5 <[email protected]>
* don't use deprecated widgets
---------
Co-authored-by: Claude Opus 5.5 <[email protected]>
Co-authored-by: bbedward <[email protected]>
Pam.qml holds the prompt text PAM asked for and separates "a response is
in flight" from "the conversation is open", so the UI stops treating an
open conversation as busy. The lock screen shows the prompt instead of a
hardcoded "Password", and clears the field when a new prompt arrives.
* settings: explain why the autostart settings page is empty
Fixed an issue where the autostart apps page was blank if
"xdg-desktop-autostart" was inactive.
The page was still reachable through the search function but not present
in the "Applicatiosn" settings sidebar tab.
* settings: point unavailable autostart applications to new docs section
* plugins: forward directory metadata (version, icon, permissions, dates) to the shell
* plugins: ranking module for recommendations, trending and picks
* plugins: mark new and recently updated plugins on the browser cards, keep badges clear of the vote count
* i18n: allow the lowercase plugin recency badge next to the New action