diff options
author | Dyami Caliri <dyami@dragonframe.com> | 2014-08-27 09:27:50 -0700 |
---|---|---|
committer | Dyami Caliri <dyami@dragonframe.com> | 2014-08-28 23:48:56 +0200 |
commit | 9c3a58a913a7e59359146264ee59d40d703d4db2 (patch) | |
tree | 622106939650b8302023d422f4a02aac283f7282 /src/gui/kernel/qwindow_p.h | |
parent | 3da75b05841e503c146a326c15b9065eebfe35b7 (diff) |
Recreate child windows when changing screens
When setting a new screen, the code calls QWindow::destroy(), which
recursively destroys all child windows. It then calls create() on the
top-level window, leaving child windows destroyed. This causes crashes
if you have embedded native widgets.
Task-number: QTBUG-40817
Change-Id: Iaace2589f48bbfd5faaf5ff95357ff43b310504a
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Diffstat (limited to 'src/gui/kernel/qwindow_p.h')
-rw-r--r-- | src/gui/kernel/qwindow_p.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gui/kernel/qwindow_p.h b/src/gui/kernel/qwindow_p.h index 4305edea51..51d78bb9cd 100644 --- a/src/gui/kernel/qwindow_p.h +++ b/src/gui/kernel/qwindow_p.h @@ -132,6 +132,7 @@ public: void _q_clearAlert(); void setScreen(QScreen *newScreen, bool recreate); + void create(bool recursive); virtual void clearFocusObject(); |