From 850a7f1238e84b6960a84e12687e40cf939a44d9 Mon Sep 17 00:00:00 2001 From: Ivan Solovev Date: Fri, 21 Jan 2022 16:49:05 +0100 Subject: [PATCH] Android A11Y: fix content update notification when object is hidden When the object is hidden, we should not use its viewId to notify content changed. Instead, we need to use its parent id. Task-number: QTBUG-95764 Pick-to: 6.3 6.2 5.15 Change-Id: I608658e21c401d76459a09e4b274c60b849ace86 Reviewed-by: Jarkko Koivikko Reviewed-by: Assam Boudjelthia --- .../qt/android/accessibility/QtAccessibilityDelegate.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/android/jar/src/org/qtproject/qt/android/accessibility/QtAccessibilityDelegate.java b/src/android/jar/src/org/qtproject/qt/android/accessibility/QtAccessibilityDelegate.java index d6b234226e2..e75682c6540 100644 --- a/src/android/jar/src/org/qtproject/qt/android/accessibility/QtAccessibilityDelegate.java +++ b/src/android/jar/src/org/qtproject/qt/android/accessibility/QtAccessibilityDelegate.java @@ -208,7 +208,10 @@ public class QtAccessibilityDelegate extends View.AccessibilityDelegate sendEventForVirtualViewId(viewId, AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED); } - invalidateVirtualViewId(viewId); + // When the object is hidden, we need to notify its parent about + // content change, not the hidden object itself + final int parentId = QtNativeAccessibility.parentId(viewId); + invalidateVirtualViewId(parentId); } public void notifyObjectFocus(int viewId)