New issue
Advanced search Search tips

Issue 876754 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug
Team-Accessibility

Blocked on:
issue 658901



Sign in to add a comment

Talkback's "Read from top" gets stuck on the WebView.

Reported by poulsens...@gmail.com, Aug 22

Issue description

Chrome Version       : All
URLs (if applicable) :
Other browsers tested:
  Add OK or FAIL, along with the version, after other browsers where you
have tested this issue:
     Not Applicable, its an Android WebView Issue

What steps will reproduce the problem?

1. Build attached Android Project
2. Open app with TalkBack on 
3. Use linear navigation until you hit the "Refocus on WebView" target at the bottom. When you do, the focus will reset to the WebView.
4. Immediately start "Read from top" in Talkback.

What is the expected result?

Talkback will read the entire screen worth of content.


What happens instead?

Talkback's "Read from top" gets stuck on the WebView.


Please provide any additional information below. Attach a screenshot if
possible.

I think that the root cause is inconsistent AccessibilityNodeInfo generated by the Webview. In the case where it is working properly, the Node Info that TalkBack is receiving for the WebView looks something like: 

android.view.accessibility.AccessibilityNodeInfo@34599; boundsInParent: Rect(0, 0 - 412, 732); boundsInScreen: Rect(0, 0 - 1081, 1920);
packageName: com.example.app; className: android.webkit.WebView; text: null; error: null; maxTextLength: -1; contentDescription: ; viewIdResName: null; checkable: false; checked: false; focusable: true; focused: true; selected: false;
clickable: false; longClickable: false; contextClickable: false; enabled: true; password: false; scrollable: true; importantForAccessibility: false; actions: [AccessibilityAction: ACTION_NEXT_HTML_ELEMENT - null,
AccessibilityAction: ACTION_PREVIOUS_HTML_ELEMENT - null, AccessibilityAction: ACTION_NEXT_AT_MOVEMENT_GRANULARITY - null, AccessibilityAction: ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY - null, AccessibilityAction: ACTION_SHOW_ON_SCREEN - null,
AccessibilityAction: ACTION_CONTEXT_CLICK - null, AccessibilityAction: ACTION_CLEAR_FOCUS - null, AccessibilityAction: ACTION_CLEAR_ACCESSIBILITY_FOCUS - null]

But in the cases where TalkBack gets stuck, it looks something like

android.view.accessibility.AccessibilityNodeInfo@3453c; boundsInParent: Rect(0, 0 - 1080, 1920); boundsInScreen: Rect(0, 0 - 1080, 1920);
packageName: com.example.app; className: android.webkit.WebView; text: null; error: null; maxTextLength: -1; contentDescription: null; viewIdResName: null; checkable: false; checked: false; focusable: false; focused: false; selected: false;
clickable: false; longClickable: false; contextClickable: false; enabled: true; password: false; scrollable: false; importantForAccessibility: false; actions: []

(note the empty list of actions for the second one).


Extra Note: I know that the way that Accessibility focus is used in the sample app is generally not a good idea, but It happens to be important for our use case.
 
webview-bug.zip
100 KB Download
Labels: Needs-Milestone
Components: UI>Accessibility>Compatibility
Owner: leberly@chromium.org
Status: Assigned (was: Unconfirmed)
Cc: dmazzoni@google.com
Labels: a11y-devs OS-Android
Owner: ----
Status: Available (was: Assigned)
Thanks for submitting this bug, I'm putting it into our developer's queue for review. 
I have found another bug that is related enough that it can be reproduced using the same minimal example: 

1. open app
2. change granularity to "line"
3. Use linear navigation until you hit the "Refocus on WebView" target at the bottom. When you do, the focus will reset to the WebView.
4. Swipe forward and backward

You will notice that at this point, the accessibility focus is stuck, and you can't navigate anywhere, forward or backward. To get out of this stuck state, you can simply change granularity back to paragraphs and swipe forward.
Labels: -a11y-devs Needs-Investigation
Cc: -dmazzoni@google.com
Labels: -Pri-3 -Needs-Milestone -Needs-Investigation a11y-required Pri-2
Blockedon: 658901
Possible duplicate of 658901?

Sign in to add a comment