fix(gui): add application menu to Activities window - #10753
Draft
gardar wants to merge 2 commits into
Draft
Conversation
gardar
requested review from
camilasan,
claucambra,
i2h3,
mgallien and
nilsding
as code owners
September 7, 2026 01:46
clicking the account area now opens an application menu with account switching, Add account, pause and resume, Settings and Quit, as the pre-34 client did on native Wayland the tray popup cannot be presented, so activating the tray icon opens this window instead of the menu, and the account area in its header has never been interactive on any platform Fixes nextcloud#10609 Fixes nextcloud#10551 Signed-off-by: gardar <gardar@users.noreply.github.com>
the account column is sized to the labels' fractional implicit width and the layout rounds that down, so text that fits could still be elided, depending on the display scale; round the requested width up instead Signed-off-by: gardar <gardar@users.noreply.github.com>
gardar
force-pushed
the
fix/activities-window-menu
branch
from
September 7, 2026 01:53
9a55cbd to
1ece517
Compare
Collaborator
|
fyi: we are just discussing a better approach. |
Collaborator
Rello
marked this pull request as draft
September 8, 2026 05:35
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves
Fixes #10609
Fixes #10551
Summary
On native Wayland clicking the systray does not open a popup menu but instead falls back to opening the Activities window, and since the 34.x redesign that window has no way to reach Settings or switch accounts. In Sway for example the tray icon itself works fine, so this is not a missing-tray case.
The same menu is exported over DBusMenu and hosts such as waybar or Plasma show it on right click, but swaybar renders no DBusMenu: it calls the item's ContextMenu method instead, which a Wayland client cannot honour because it can only anchor popups to its own surface. On Sway neither middle nor right clicking the icon produces a menu. The account area in the window header also looks like the old account switcher but has never been interactive, on any platform (#10551).
Clicking the account area now opens an application menu with:
This reuses the existing Systray and UserModel paths, and restores the behaviour the pre-34 client had when clicking the username/icon area. Tray popup behaviour is unchanged, and the header stays inert in the Search and Assistant windows, which opt out.
Also fixed a pre-existing rounding bug in the same header which I found while working on this: the account column is sized from the labels' fractional implicit width, so text that fits could still be elided by a fraction of a pixel. That is the difference visible in the server line of the screenshots below.
Before: the account area is not interactive
After: clicking the account area opens the application menu
Testing
Tested on Arch Linux and Sway on native Wayland with no XWayland installed, against a throwaway server with two accounts: the menu opens under the account area and dismisses correctly and all the actions work.
New tests:
ActivitiesMenuQmlTest(menu contents, account switching, the current-account mark, that the account area is inert unless a window opts in, and that long or tight-fitting account text is not clipped) andSystraySyncControlTest.Checklist