From 92a0ff63f6318f815eb934eb81a6ba228fdba7181f34c071ce2f07754edf175c Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Mon, 20 Dec 2021 11:34:25 +0000 Subject: [PATCH] Accepting request 941516 from home:Vogtinator:qt5.15 - Update to version 5.15.2+kde37: * Fix backport, context destruction was omitted * Client: do not empty clipboard when a new popup/window is opened * Wayland client: use wl_keyboard to determine active state - Add patch to fix crashes triggered by unintentional actions when showing a window (kde#421700): * 0001-Client-Avoid-processing-of-events-when-showing-windo.patch OBS-URL: https://build.opensuse.org/request/show/941516 OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:5.15/libqt5-qtwayland?expand=0&rev=18 --- ...cessing-of-events-when-showing-windo.patch | 38 +++++++++++++++++++ _servicedata | 2 +- libqt5-qtwayland.changes | 11 ++++++ libqt5-qtwayland.spec | 8 ++-- qtwayland-everywhere-src-5.15.2+kde34.obscpio | 3 -- qtwayland-everywhere-src-5.15.2+kde37.obscpio | 3 ++ qtwayland-everywhere-src.obsinfo | 6 +-- 7 files changed, 61 insertions(+), 10 deletions(-) create mode 100644 0001-Client-Avoid-processing-of-events-when-showing-windo.patch delete mode 100644 qtwayland-everywhere-src-5.15.2+kde34.obscpio create mode 100644 qtwayland-everywhere-src-5.15.2+kde37.obscpio diff --git a/0001-Client-Avoid-processing-of-events-when-showing-windo.patch b/0001-Client-Avoid-processing-of-events-when-showing-windo.patch new file mode 100644 index 0000000..c2247c1 --- /dev/null +++ b/0001-Client-Avoid-processing-of-events-when-showing-windo.patch @@ -0,0 +1,38 @@ +From 68e9002161e2d0e3f33258887541de7abf4c507f Mon Sep 17 00:00:00 2001 +From: David Edmundson +Date: Sun, 14 Nov 2021 13:54:19 +0000 +Subject: [PATCH] Client: Avoid processing of events when showing windows + +The only time we want to dispatch events from the wayland socket is when +the application is waiting for external events. Doing so at any other +time will cause unpredictable behavior in client code. + +This caused a crash downstream where we had outputs get altered whilst +itterating through outputs, which shouldn't happen. + +There is no benefit to flushing here, it won't make anything appear +faster as we haven't attached the buffer yet. + +Change-Id: Ie13eae4012dab96a93d8810f468d1343402b8c28 +Reviewed-by: Qt CI Bot +Reviewed-by: Aleix Pol Gonzalez +(cherry picked from commit 46ed85a80b28d519cf5887bbdce55d1bf57886c3) +--- + src/client/qwaylandwindow.cpp | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp +index ba881cb3..1597f67e 100644 +--- a/src/client/qwaylandwindow.cpp ++++ b/src/client/qwaylandwindow.cpp +@@ -436,7 +436,6 @@ void QWaylandWindow::setVisible(bool visible) + if (window()->type() == Qt::Popup || window()->type() == Qt::ToolTip) + activePopups << this; + initWindow(); +- mDisplay->flushRequests(); + + setGeometry(windowGeometry()); + // Don't flush the events here, or else the newly visible window may start drawing, but since +-- +2.33.1 + diff --git a/_servicedata b/_servicedata index 8f485c5..be34204 100644 --- a/_servicedata +++ b/_servicedata @@ -1,4 +1,4 @@ https://invent.kde.org/qt/qt/qtwayland.git - 02f9585ca19c17ae0978b864195533dc527d825e \ No newline at end of file + eb422ab5e07498a7a8d086f6a942ee35ab3c9776 \ No newline at end of file diff --git a/libqt5-qtwayland.changes b/libqt5-qtwayland.changes index 3abba06..9f624f6 100644 --- a/libqt5-qtwayland.changes +++ b/libqt5-qtwayland.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Sun Dec 19 14:47:20 UTC 2021 - Fabian Vogt + +- Update to version 5.15.2+kde37: + * Fix backport, context destruction was omitted + * Client: do not empty clipboard when a new popup/window is opened + * Wayland client: use wl_keyboard to determine active state +- Add patch to fix crashes triggered by unintentional actions when + showing a window (kde#421700): + * 0001-Client-Avoid-processing-of-events-when-showing-windo.patch + ------------------------------------------------------------------- Thu Oct 28 07:16:50 UTC 2021 - Fabian Vogt diff --git a/libqt5-qtwayland.spec b/libqt5-qtwayland.spec index 1cf8715..8d45b7a 100644 --- a/libqt5-qtwayland.spec +++ b/libqt5-qtwayland.spec @@ -26,7 +26,7 @@ %define so_version 5.15.2 %define tar_version qtwayland-everywhere-src-%{version} Name: libqt5-qtwayland -Version: 5.15.2+kde34 +Version: 5.15.2+kde37 Release: 0 Summary: Qt 5 Wayland Addon # The wayland compositor files are GPL-3.0-or-later @@ -37,9 +37,11 @@ Source: %{tar_version}.tar.xz Source1: baselibs.conf # PATCH-FIX-OPENSUSE Patch1: 0001-Revert-Bump-version.patch +# PATCH-FIX-UPSTREAM +Patch2: 0001-Client-Avoid-processing-of-events-when-showing-windo.patch BuildRequires: fdupes -BuildRequires: libqt5-qtbase-private-headers-devel >= %{version} -BuildRequires: libqt5-qtdeclarative-private-headers-devel >= %{version} +BuildRequires: libqt5-qtbase-private-headers-devel >= %{real_version} +BuildRequires: libqt5-qtdeclarative-private-headers-devel >= %{real_version} BuildRequires: pkgconfig BuildRequires: xz BuildRequires: pkgconfig(egl) diff --git a/qtwayland-everywhere-src-5.15.2+kde34.obscpio b/qtwayland-everywhere-src-5.15.2+kde34.obscpio deleted file mode 100644 index 8cb54fb..0000000 --- a/qtwayland-everywhere-src-5.15.2+kde34.obscpio +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:79115123937c15d06d408bf0804e0fabf364dfced4abd614de917d0e0cdda5d4 -size 4683276 diff --git a/qtwayland-everywhere-src-5.15.2+kde37.obscpio b/qtwayland-everywhere-src-5.15.2+kde37.obscpio new file mode 100644 index 0000000..5881e77 --- /dev/null +++ b/qtwayland-everywhere-src-5.15.2+kde37.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:371c656e8b4d93883883744a67139ba839692fc5a8355719b7a766bd25adce8e +size 4682252 diff --git a/qtwayland-everywhere-src.obsinfo b/qtwayland-everywhere-src.obsinfo index 4fbf832..89b6af7 100644 --- a/qtwayland-everywhere-src.obsinfo +++ b/qtwayland-everywhere-src.obsinfo @@ -1,5 +1,5 @@ name: qtwayland-everywhere-src -version: 5.15.2+kde34 -mtime: 1634316933 -commit: 02f9585ca19c17ae0978b864195533dc527d825e +version: 5.15.2+kde37 +mtime: 1639067923 +commit: eb422ab5e07498a7a8d086f6a942ee35ab3c9776