diff options
author | Ilya Fedin <fedin-ilja2010@ya.ru> | 2022-08-24 16:49:04 +0400 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-08-24 19:12:09 +0000 |
commit | 982ad6c06a7df315d3d3693587cbb12aeec03c9b (patch) | |
tree | ad35ddda9d76481fac0eb83f9a3ece7fd0a66f1d /src/widgets/kernel/qwidget.cpp | |
parent | e3702e19d961f2192c7687a19c3338717bc4bb4f (diff) |
Re-create TLW's window only when its surface type is really changed
Fixes: QTBUG-105017
Change-Id: If5826172efb53b6df15dd3b7ba91b09d733cc77f
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
(cherry picked from commit a4a51f6a641f4bf0a863251d6d3e026d81de6280)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/widgets/kernel/qwidget.cpp')
-rw-r--r-- | src/widgets/kernel/qwidget.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index b28dcfc6f2..2cd30794cd 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -10691,7 +10691,7 @@ void QWidget::setParent(QWidget *parent, Qt::WindowFlags f) QWidget *newtlw = window(); if (oldtlw != newtlw) { QSurface::SurfaceType surfaceType = QSurface::RasterSurface; - if (q_evaluateRhiConfig(this, nullptr, &surfaceType)) { + if (q_evaluateRhiConfig(newtlw, nullptr, &surfaceType)) { newtlw->d_func()->usesRhiFlush = true; if (QWindow *w = newtlw->windowHandle()) { if (w->surfaceType() != surfaceType) { |