diff options
author | Mitch Curtis <mitch.curtis@qt.io> | 2021-01-11 17:03:21 +0100 |
---|---|---|
committer | Mitch Curtis <mitch.curtis@qt.io> | 2021-02-02 10:03:47 +0100 |
commit | 7e819a5777a0632175347688312da9cee0702177 (patch) | |
tree | 4e5be41000d252152253fda0495b03e96e22887d /src/imports/controls/ToolSeparator.qml | |
parent | 180dbd050173d20c99f730eeacf2b0376fcb895e (diff) |
Fix popups with exit transitions blocking mouse events when destroyed
If a popup had an exit transition set and was destroyed upon e.g.
being rejected, it would not destroy its modal dimmer, and so events
would not go through to popups that were beneath it even after it
was destroyed.
QQuickPopup's destructor does indirectly attempt to call
finalizeExitTransition() through a setParentItem(nullptr) call,
but prepareExitTransition() returns false if it sees that the
exit transition is already running, and so transitionExit()
never calls finished().
This patch fixes the problem by explicitly calling
finalizeExitTransition() in QQuickPopup's destructor if the exit
transition is running.
Fixes: QTBUG-89673
Change-Id: I468fae52f6a83ac314877c67d062028634bb7e17
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit 51d416cdfd909aacd5047632a7cc1661a158731a)
Diffstat (limited to 'src/imports/controls/ToolSeparator.qml')
0 files changed, 0 insertions, 0 deletions