Revert "Reset QWidget's winId when backing window surface is destroyed"
This commit is contained in:
parent
72b5ae0fbb
commit
abb914b769
@ -53,7 +53,7 @@ BuildRequires: pkgconfig(libsystemd)
|
||||
Name: qt5-qtbase
|
||||
Summary: Qt5 - QtBase components
|
||||
Version: 5.12.4
|
||||
Release: 3%{?dist}
|
||||
Release: 4%{?dist}
|
||||
|
||||
# See LGPL_EXCEPTIONS.txt, for exception details
|
||||
License: LGPLv2 with exceptions or GPLv3 with exceptions
|
||||
@ -138,6 +138,7 @@ Patch156: 0056-QHighDpi-Replace-fromNative-toNative-with-scale.patch
|
||||
Patch166: 0066-High-DPI-Fix-crash-in-QWindow-mapFromGlobal.patch
|
||||
## omit for now, appears to introduce symbol incompatibilities
|
||||
#Patch200: 0100-QHighDpi-fromNativePixels-use-correct-screen.patch
|
||||
Patch250: qtbase-revert-reset-qwidget-winid-when-backing-window-surface-destroyed.patch
|
||||
|
||||
# Do not check any files in %%{_qt5_plugindir}/platformthemes/ for requires.
|
||||
# Those themes are there for platform integration. If the required libraries are
|
||||
@ -412,6 +413,7 @@ Qt5 libraries used for drawing widgets and OpenGL items.
|
||||
%patch156 -p1
|
||||
%patch166 -p1
|
||||
#patch200 -p1
|
||||
%patch250 -p1
|
||||
|
||||
# move some bundled libs to ensure they're not accidentally used
|
||||
pushd src/3rdparty
|
||||
@ -1031,6 +1033,9 @@ fi
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Jul 15 2019 Jan Grulich <jgrulich@redhat.com> - 5.12.4-4
|
||||
- Revert "Reset QWidget's winId when backing window surface is destroyed"
|
||||
|
||||
* Fri Jun 28 2019 Rex Dieter <rdieter@fedoraproject.org> - 5.12.4-3
|
||||
- omit QTBUG-73231 patch fix, appears to introduce incompatible symbols
|
||||
|
||||
|
@ -0,0 +1,36 @@
|
||||
From deac052a40c93633041da058d5c73c9e91aa76c7 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= <tor.arne.vestbo@qt.io>
|
||||
Date: Fri, 12 Jul 2019 12:28:29 +0200
|
||||
Subject: Revert "Reset QWidget's winId when backing window surface is
|
||||
destroyed"
|
||||
|
||||
This reverts commit a9246c7132a2c8864d3ae6cebd260bb9ee711fcb.
|
||||
|
||||
The QWidget machinery is way to fragile to reset the winId under the
|
||||
feet of QWidget like that. We would potentially need to include all
|
||||
the logic in QWidget::destroy. This also ties into the flow between
|
||||
QtGui and QtWidgets during window closing, which is still unresolved.
|
||||
|
||||
Change-Id: I168048a63c89796398eb5331a80ce3e5c8d9a208
|
||||
Fixes: QTBUG-76588
|
||||
Task-number: QTBUG-69289
|
||||
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
||||
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
||||
|
||||
diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp
|
||||
index fdb3872903..6f0f39a344 100644
|
||||
--- a/src/widgets/kernel/qwidget.cpp
|
||||
+++ b/src/widgets/kernel/qwidget.cpp
|
||||
@@ -9382,12 +9382,6 @@ bool QWidget::event(QEvent *event)
|
||||
d->renderToTextureReallyDirty = 1;
|
||||
#endif
|
||||
break;
|
||||
- case QEvent::PlatformSurface: {
|
||||
- auto surfaceEvent = static_cast<QPlatformSurfaceEvent*>(event);
|
||||
- if (surfaceEvent->surfaceEventType() == QPlatformSurfaceEvent::SurfaceAboutToBeDestroyed)
|
||||
- d->setWinId(0);
|
||||
- break;
|
||||
- }
|
||||
#ifndef QT_NO_PROPERTIES
|
||||
case QEvent::DynamicPropertyChange: {
|
||||
const QByteArray &propName = static_cast<QDynamicPropertyChangeEvent *>(event)->propertyName();
|
Loading…
Reference in New Issue
Block a user