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

Vlad Zahorodnii <vlad.zahorod...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/plas
                   |                            |ma/libplasma/-/commit/11201
                   |                            |30cfedaa3770b5009a4bbf13d94
                   |                            |c84d12b2
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED

--- Comment #13 from Vlad Zahorodnii <vlad.zahorod...@kde.org> ---
Git commit 1120130cfedaa3770b5009a4bbf13d94c84d12b2 by Vlad Zahorodnii.
Committed on 25/06/2024 at 14:16.
Pushed by vladz into branch 'master'.

Specify transient parent both for drop menu and drop job

Currently, the transient parent for the drop job popup is unset, so
QtWayland QPA needs to guess the transient parent, otherwise the
client would be killed due to violating the xdg-shell protocol.

The popup parent heuristics in QtWayland are based on input events,
specifically they check what window the user interacted with last
time, i.e. where the last pointer button click has occurred, etc.

When dragging something, the last interacted window will correspond
to the drag source, so if a popup needs to be shown, it will likely
have the drag source window as the transient parent. This can be a
problem. For example, when dragging an item from Kickoff to the
desktop, Kickoff window will close when a drop occurs on the desktop.

QtWayland can't work around that. It simply needs to be told proper
metadata about the connection of the popup to the parent window. The
purpose of the setTransientParent() function is to achieve exactly
that.

M  +11   -3    src/plasmaquick/plasmoid/dropmenu.cpp

https://invent.kde.org/plasma/libplasma/-/commit/1120130cfedaa3770b5009a4bbf13d94c84d12b2

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

Reply via email to