Custom shell surface protocol for Plasma surfaces

Vlad Zahorodnii vlad.zahorodnii at kde.org
Thu Mar 5 14:34:24 GMT 2020


Hi,

We have a proprietary protocol that extends existing shell surface 
protocols with features necessary for plasmashell to work properly.

 From implementation point-of-view, the main problem with our protocol 
is that it bloats XdgShellClient with desktop shell-specific things, 
e.g. positioning, taking focus, panel behavior, etc. Ideally, 
XdgShellClient should be concerned only about things that matter to 
xdg-shell clients.

plasmashell has special needs and I think it deserves its own protocol.

I propose to revisit the plasma_shell protocol and maybe create v2 of 
it, which doesn't piggyback on existing protocols. This would simplify 
XdgShellClient and lead to cleaner code overall.

I had a quick look at QtWayland's source code and so far it looks like 
we (KDE) can implement a custom shell surface extension on our side and 
instruct QtWayland to use it rather than xdg-shell(take my words with a 
grain of salt, though).

Cheers,
Vlad


More information about the kwin mailing list