diff --git a/0001-a11y-fix-race-condition-on-atspi-startup-on-Wayland.patch b/0001-a11y-fix-race-condition-on-atspi-startup-on-Wayland.patch new file mode 100644 index 0000000..2fd8b0f --- /dev/null +++ b/0001-a11y-fix-race-condition-on-atspi-startup-on-Wayland.patch @@ -0,0 +1,41 @@ +From f6d97b7a9578074de6a5eee0e801eaafda1d9fdd Mon Sep 17 00:00:00 2001 +From: Harald Sitter +Date: Tue, 1 Aug 2023 13:56:24 +0200 +Subject: [PATCH] a11y: fix race condition on atspi startup on Wayland + +This amends db346e711c9af50566c234cfc21199680e6cb499 . + +Previously we could race between dbus connecting and our "manual" +enabled call since we didn't take into account whether dbus is +connected or not. + +This lead to scenarios where opening an application (in particular under +Wayland) would result in the application not being able to register on +the a11y bus because registration was attempted too early. +By simply taking connectedness into account we'll make sure to not +run registration too early anymore. + +Pick-to: 6.5 +Change-Id: I46a3c0b57f8a0c83d3e5fae9e355c2061954031f +Reviewed-by: Liang Qi +(cherry picked from commit 918fed39156c90540a12557c7a6630ae3d7d841e) +--- + src/gui/accessible/linux/qspiaccessiblebridge.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/gui/accessible/linux/qspiaccessiblebridge.cpp b/src/gui/accessible/linux/qspiaccessiblebridge.cpp +index f59d8be..8a3f82e 100644 +--- a/src/gui/accessible/linux/qspiaccessiblebridge.cpp ++++ b/src/gui/accessible/linux/qspiaccessiblebridge.cpp +@@ -38,7 +38,7 @@ QSpiAccessibleBridge::QSpiAccessibleBridge() + // But do that only on next loop, once dbus is really settled. + QTimer::singleShot( + 0, this, [this]{ +- if (dbusConnection->isEnabled()) ++ if (dbusConnection->isEnabled() && dbusConnection->connection().isConnected()) + enabledChanged(true); + }); + } +-- +2.42.0 + diff --git a/0001-xcb-replace-a-warning-with-debug-info-in-qxcbconnect.patch b/0001-xcb-replace-a-warning-with-debug-info-in-qxcbconnect.patch new file mode 100644 index 0000000..b53b2ea --- /dev/null +++ b/0001-xcb-replace-a-warning-with-debug-info-in-qxcbconnect.patch @@ -0,0 +1,32 @@ +From c9cb83d2127485be6a9ae62b9daf934eb5306928 Mon Sep 17 00:00:00 2001 +From: Liang Qi +Date: Fri, 6 Oct 2023 09:48:33 +0200 +Subject: [PATCH] xcb: replace a warning with debug info in + qxcbconnection_xi2.cpp + +Fixes: QTBUG-117820 +Pick-to: 6.5 +Change-Id: I3b89305e1a8d92a02166efee7067108572f7a97a +Reviewed-by: Shawn Rutledge +(cherry picked from commit 42d9c1913a504423783397adf6e6a77545f857ac) +Reviewed-by: Qt Cherry-pick Bot +--- + src/plugins/platforms/xcb/qxcbconnection_xi2.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp b/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp +index 897a429970..c94b3edb69 100644 +--- a/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp ++++ b/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp +@@ -766,7 +766,7 @@ void QXcbConnection::xi2HandleEvent(xcb_ge_event_t *event) + if (auto device = QPointingDevicePrivate::pointingDeviceById(sourceDeviceId)) + xi2HandleScrollEvent(event, device); + else +- qCWarning(lcQpaXInputEvents) << "scroll event from unregistered device" << sourceDeviceId; ++ qCDebug(lcQpaXInputEvents) << "scroll event from unregistered device" << sourceDeviceId; + + if (xiDeviceEvent) { + switch (xiDeviceEvent->event_type) { +-- +2.42.0 + diff --git a/qt6-base.changes b/qt6-base.changes index 16c61f8..a7eea73 100644 --- a/qt6-base.changes +++ b/qt6-base.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Fri Nov 3 11:34:03 UTC 2023 - Christophe Marin + +- Add upstream changes: + * 0001-xcb-replace-a-warning-with-debug-info-in-qxcbconnect.patch (QTBUG-117820) + * 0001-a11y-fix-race-condition-on-atspi-startup-on-Wayland.patch +- Turn FEATURE_forkfd_pidfd off until QTBUG-117954 gets fixed + ------------------------------------------------------------------- Wed Oct 25 14:16:30 UTC 2023 - Christophe Marin diff --git a/qt6-base.spec b/qt6-base.spec index 8e9095d..e00809a 100644 --- a/qt6-base.spec +++ b/qt6-base.spec @@ -40,6 +40,8 @@ Source: https://download.qt.io/official_releases/qt/%{short_version}/%{r Source99: qt6-base-rpmlintrc # Patches 0-100 are upstream patches # Patch0: 0001-xkb-fix-build-with-libxkbcommon-1.6.0-and-later.patch +Patch1: 0001-xcb-replace-a-warning-with-debug-info-in-qxcbconnect.patch +Patch2: 0001-a11y-fix-race-condition-on-atspi-startup-on-Wayland.patch # Patches 100-200 are openSUSE and/or non-upstream(able) patches # Patch100: 0001-Tell-the-truth-about-private-API.patch # No need to pollute the library dir with object files, install them in the qt6 subfolder @@ -782,6 +784,7 @@ sed -i '/zstd CONFIG/d' cmake/FindWrapZSTD.cmake -DFEATURE_system_xcb_xinput:BOOL=ON \ -DFEATURE_xcb_native_painting:BOOL=ON \ -DINPUT_openssl:STRING=linked \ + -DFEATURE_forkfd_pidfd:BOOL=OFF \ %if 0%{?with_gles} -DINPUT_opengl:STRING=es2 \ -DFEATURE_opengles3:BOOL=ON