38 lines
1.5 KiB
Diff
38 lines
1.5 KiB
Diff
|
From 197e5915585e8978e8b98a861f71f2d22b0d930e Mon Sep 17 00:00:00 2001
|
||
|
From: Harald Sitter <sitter@kde.org>
|
||
|
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 <liang.qi@qt.io>
|
||
|
(cherry picked from commit 918fed39156c90540a12557c7a6630ae3d7d841e)
|
||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||
|
---
|
||
|
|
||
|
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);
|
||
|
});
|
||
|
}
|