diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index a8638d0..2b192c5 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.0 -Release: 3%{?dist} +Release: 4%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -97,6 +97,7 @@ Patch100: qtbase-use-qgnomeplatform-as-default-platform-theme-on-gnome.patch %endif ## upstream patches +Patch200: qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch # Do not check any files in %%{_qt6_plugindir}/platformthemes/ for requires. # Those themes are there for platform integration. If the required libraries are @@ -833,6 +834,10 @@ make check -k ||: %changelog +* Mon Nov 06 2023 Jan Grulich - 6.6.0-4 +- Upstream backports + - a11y - fix race condition on atspi startup on Wayland + * Mon Oct 23 2023 Jan Grulich - 6.6.0-3 - Do not use tslib on RHEL builds diff --git a/qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch b/qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch new file mode 100644 index 0000000..b948748 --- /dev/null +++ b/qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch @@ -0,0 +1,37 @@ +From 197e5915585e8978e8b98a861f71f2d22b0d930e Mon Sep 17 00:00:00 2001 +From: Harald Sitter +Date: Tue, 01 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) +Reviewed-by: Qt Cherry-pick Bot +--- + +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 @@ + // 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); + }); + }