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

Vlad Zahorodnii <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/plas
                   |                            |ma/kwin/-/commit/c995591e30
                   |                            |393a289b2275adc173b9c820789
                   |                            |874
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #3 from Vlad Zahorodnii <[email protected]> ---
Git commit c995591e30393a289b2275adc173b9c820789874 by Vlad Zahorodnii, on
behalf of 力文 胡.
Committed on 17/09/2026 at 14:51.
Pushed by vladz into branch 'master'.

core: Ignore non-focusable desktop windows in findDesktop()

A layer-shell surface with the "desktop" scope can refuse keyboard focus
by setting its keyboard_interactivity to none. Such a window can still
be stacked above the desktop window of plasmashell, and in that case
findDesktop() returned it.

Its result is passed to requestFocus(), which refuses to focus windows
that do not want input. activateNextWindow() therefore fell through to
resetFocus() and left the session without any active window.
plasmashell hides the panel toolbar when the focus window is null, which
is why the toolbar disappeared as soon as a widget was dragged in panel
edit mode.

Skip desktop windows that do not want input while looking for the next
window to activate. All callers of findDesktop() pass the result to
requestFocus(), so returning a window that cannot take focus is of no
use to any of them. Filtering in activateNextWindow() alone would leave
the same dead end in switchToOutput(), activateWindowOnDesktop() and
setShowingDesktop().

M  +1    -1    src/layers.cpp

https://invent.kde.org/plasma/kwin/-/commit/c995591e30393a289b2275adc173b9c820789874

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

Reply via email to