https://bugs.kde.org/show_bug.cgi?id=402634

thubble+kdeb...@thubble.ca changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |thubble+kdeb...@thubble.ca

--- Comment #2 from thubble+kdeb...@thubble.ca ---
I started working on a fix for this. The initial problem was that Yakuake was
using a legacy check for determining whether it is the active window, but that
check doesn't work on wayland and always returns false. So if the setting was
enabled to re-focus Yakuake instead of showing or hiding it, Yakuake would
always believe it wasn't focused, and would try to refocus itself instead of
showing/hiding itself.

The fix for the initial issue was trivial, but it turns out that there is
currently no way for a Wayland application to request activation or focus for
itself. There's "xdg-activation" which was added to kwin in 5.23, but if I
understand correctly, that's just for the currently-active application to
activate another one of its windows or controls - it doesn't seem to support an
application requesting focus for itself while another application is active.
I'm not sure if this is a fundamental design decision of xdg-activation or a
design choice in the kwin implementation - the xdg-activation documentation
seems to leave some things to the compositor's discretion. I believe the issue
is this line in kwin:
https://invent.kde.org/plasma/kwin/-/blob/master/src/xdgactivationv1.cpp#L44 -
it denies permission for any client other than the active one (or the window
manager) to create the activation token necessary to active a window.

Am I correct in these assumptions? If so, this functionality can't work in
Wayland, at least not without kwin changes.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to