New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 645167 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug
Team-Accessibility



Sign in to add a comment

Too many accessible nodes marked as clickable on Android

Project Member Reported by dmazz...@chromium.org, Sep 8 2016

Issue description

Previous versions of TalkBack explored the accessibility tree and skipped over some important nodes, so we marked anything we thought was interesting as clickable.

Now TalkBack calls ACTION_NEXT_HTML_ELEMENT to linearly navigate the tree, so we can do things:

1. Relax "clickable" and only expose that on nodes that really are clickable
2. Update ACTION_NEXT_HTML_ELEMENT so that it doesn't miss any interesting nodes


 
Project Member

Comment 1 by bugdroid1@chromium.org, Oct 17 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/33d97d8148948cade0efe3e97c50f8473a225ee9

commit 33d97d8148948cade0efe3e97c50f8473a225ee9
Author: dmazzoni <dmazzoni@chromium.org>
Date: Mon Oct 17 07:10:28 2016

Too many accessible nodes were marked as clickable on Android

Now only nodes that are actually focusable or clickable are marked as
clickable. To make sure TalkBack reaches all interesting nodes, fix the
code that handles ACTION_NEXT_HTML_ELEMENT so that it returns all focusable
nodes in addition to leaf nodes with text.

BUG= 645167 

Review-Url: https://codereview.chromium.org/2323043002
Cr-Commit-Position: refs/heads/master@{#425626}

[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/browser/accessibility/browser_accessibility_android.cc
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/browser/accessibility/browser_accessibility_manager_android.cc
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-alert-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-article-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-autocomplete-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-banner-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-columnheader-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-complementary-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-contentinfo-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-describedby-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-dialog-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-document-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-dropeffect-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-grabbed-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-grid-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-gridcell-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-heading-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-hidden-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-invalid-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-list-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-listitem-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-math-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-multiline-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-none-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-option-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-posinset-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-presentation-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-region-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-required-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-row-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-rowheader-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-search-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-separator-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-sort-aria-grid-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-sort-html-table-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-timer-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-toolbar-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-tooltip-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-tree-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-treegrid-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/aria/aria-valuetext-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/abbr-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/address-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/article-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/aside-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/bdo-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/blockquote-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/body-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/caption-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/cite-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/contenteditable-with-no-descendants-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/dd-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/del-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/details-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/dfn-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/dl-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/dt-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/element-class-id-src-attr-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/fieldset-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/figcaption-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/figure-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/footer-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/footer-inside-other-section-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/head-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/header-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/header-inside-other-section-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/heading-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/hr-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/i-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/iframe-coordinates-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/iframe-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/iframe-presentational-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/img-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/input-radio-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/input-radio-in-menu-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/input-text-value-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/keygen-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/label-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/landmark-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/legend-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/li-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/list-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/main-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/math-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/modal-dialog-opened-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/modal-dialog-stack-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/ol-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/optgroup-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/p-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/pre-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/q-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/ruby-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/s-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/samp-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/section-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/select-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/sub-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/sup-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/svg-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/table-simple-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/table-th-rowheader-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/table-thead-tbody-tfoot-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/time-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/title-expected-android.txt
[modify] https://crrev.com/33d97d8148948cade0efe3e97c50f8473a225ee9/content/test/data/accessibility/html/var-expected-android.txt

Status: Fixed (was: Assigned)
Cc: nek...@chromium.org dmazz...@chromium.org vtsaran@chromium.org
Owner: ibobra@chromium.org
Status: Started (was: Fixed)
This issue has reappeared as elements with action verb "click-ancestor" are also considered as clickable in android. This is incorrect as "click-ancestor" only means that element has elements with click listener in its ancestor chain and is not self clickable.
Project Member

Comment 4 by bugdroid1@chromium.org, Dec 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b423714978378371052144e1548480072e4cfea4

commit b423714978378371052144e1548480072e4cfea4
Author: Isha Bobra <ibobra@google.com>
Date: Mon Dec 11 21:23:07 2017

Android Accessibility: Avoiding incorrect marking of elements as clickable

For the elements where a click listener is present in its ancestry chain,
a default action verb "click-ancestor" is used. So for android this CL makes sure
that such elements are not marked as clickable.

Bug:  645167 
Change-Id: I0ce047e8bf619bb6eaa3c77bc4bec4d2d999e203
Reviewed-on: https://chromium-review.googlesource.com/804202
Commit-Queue: Isha Bobra <ibobra@google.com>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Nektarios Paisios <nektar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#523210}
[modify] https://crrev.com/b423714978378371052144e1548480072e4cfea4/content/browser/accessibility/browser_accessibility_android.cc
[modify] https://crrev.com/b423714978378371052144e1548480072e4cfea4/content/browser/accessibility/dump_accessibility_tree_browsertest.cc
[add] https://crrev.com/b423714978378371052144e1548480072e4cfea4/content/test/data/accessibility/html/clickable-ancestor-expected-android.txt
[add] https://crrev.com/b423714978378371052144e1548480072e4cfea4/content/test/data/accessibility/html/clickable-ancestor.html

 Issue 795732  has been merged into this issue.
Cc: msrchandra@chromium.org sandeepkumars@chromium.org nyerramilli@chromium.org
 Issue 771423  has been merged into this issue.

Comment 7 by ibobra@chromium.org, Feb 26 2018

Status: Fixed (was: Started)

Sign in to add a comment