Skip to content

feat: kde globalmenu protocol#46

Draft
CertainLach wants to merge 4 commits into
Naxdy:mainfrom
CertainLach:feat/global-menus
Draft

feat: kde globalmenu protocol#46
CertainLach wants to merge 4 commits into
Naxdy:mainfrom
CertainLach:feat/global-menus

Conversation

@CertainLach
Copy link
Copy Markdown
Contributor

@CertainLach CertainLach commented Jan 17, 2026

The changes themselves work, but I can't provide a quick thing to test them, because my desktop for this feature consists of multiple ugly hacks, I have only tested it in quickshell+noctalia, plasmashell doesn't start in kiri for me, not sure if it knows about the window ids.

image

For some programs, e.g dolphin, the warning

        warn!(
           "tried to set appmenu on un-mapped or unsupported sorface: {}",
           surface.id()
       )

Is displayed, because this call is being performed right after the surface creation (before the window is even stored in unmapped), and I have no idea how to properly handle things like that in smithay.

I also feel like it should be not stored in Unmapped/Mapped, but associated directly with surface id, but again, I'm not that familiar with smithay

The globalmenu should also be disableable, both on wayland and on dbus level, because presence of wayland interface disables default menus in kde apps, and on dbus level in xwayland apps...

For xwayland I have no idea for now about where the data should be stored, and how can we map from window id provided by xwayland apps to the window id that is being provided to e.g quickshell

@CertainLach
Copy link
Copy Markdown
Contributor Author

Have missed that, but seems like upstream also had PR for this, but it is much more incomplete:
niri-wm/niri#2794

@CertainLach
Copy link
Copy Markdown
Contributor Author

CertainLach commented Jan 17, 2026

Just to link all the changes I did for myself, on my desktop it works as a noctalia shell plugin, and this plugin needs this quickshell change: quickshell-mirror/quickshell#484

Noctalia-shell plugin: https://github.com/CertainLach/noctalia-global-menu

@CertainLach CertainLach marked this pull request as draft February 7, 2026 21:45
@CertainLach
Copy link
Copy Markdown
Contributor Author

Converting to draft, as it is breaking menus unconditionally, until user has something that can make use of appmenu registrar to display the menus

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