New issue
Advanced search Search tips

Issue 655272 link

Starred by 4 users

Issue metadata

Status: Verified
Owner:
Closed: Oct 2016
Components:
EstimatedDays: ----
NextAction: 2016-10-28
OS: Chrome
Pri: 2
Type: Bug
Team-Accessibility



Sign in to add a comment

ChromeVox should be able to set the sequential focus navigation starting point

Project Member Reported by dmazz...@chromium.org, Oct 12 2016

Issue description

1. Open Chrome OS, enable spoken feedback
2. Enable ChromeVox Next
3. Open Wikipedia
4. Use Search+H to jump to a heading
5. Press Tab

It should tab to the next link after the heading, not the next link from the previous focus.

 

Comment 1 by dtseng@chromium.org, Oct 13 2016

Status: Duplicate (was: Available)
dup of feature bug
Project Member

Comment 2 by bugdroid1@chromium.org, Oct 18 2016

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

commit daa9dd2ccf9e285d7dd9b389f663f5122506f1f3
Author: dmazzoni <dmazzoni@chromium.org>
Date: Tue Oct 18 16:06:58 2016

Create AXAction and AXActionData as a way to simplify accessibility actions

Previously we had a collection of 10 accessibility actions that were
implemented on every accessibility object - all of them implemented for
the web, and about half implemented for aura views and for the automation
extension API.

This resulted in a lot of boilerplate code because of the many layers of
indirection between the various parts of the codebase. Adding a new
accessibility action meant adding a new IPC and adding a new method to around
a dozen files just to plumb it through.

In comparison, we have dozens of accessibility events but we handle them all
with a single flexible data structure, so adding a new event doesn't require
so much plumbing.

This change streamlines accessibility actions too. There's
an enum AXAction with all of the possible accessibility actions, and a
serializable data structure AXActionData that encapsulates the parameters
needed by an accessibility action.

This cuts down on some duplicate code and reduces the amount of new code
that needs to be written to add support for a new accessibility action in
the future. For example, macOS has "increment" and "decrement" actions for
range controls that we ought to support, and there are some additional
arguments to setAccessibilityFocus that we're contemplating.

BUG= 655272 , 655273
TESTED=Manually triggered each of the supported accessibility actions from
    ChromeVox, and from at least one native screen reader.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

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

[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/chrome/browser/extensions/api/automation_internal/automation_action_adapter.h
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/chrome/browser/ui/aura/accessibility/automation_manager_aura.h
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/chrome/common/extensions/api/automation.idl
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/chrome/common/extensions/api/automation_internal.idl
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/accessibility/android_granularity_movement_browsertest.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/accessibility/browser_accessibility_cocoa.mm
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/accessibility/browser_accessibility_manager_android.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/accessibility/browser_accessibility_manager_unittest.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/accessibility/dump_accessibility_events_browsertest.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/accessibility/hit_testing_browsertest.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/browser/frame_host/render_frame_host_impl.h
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/common/accessibility_messages.h
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/public/browser/render_frame_host.h
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/content/renderer/accessibility/render_accessibility_impl.h
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/ui/accessibility/BUILD.gn
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/ui/accessibility/PRESUBMIT.py
[add] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/ui/accessibility/ax_action_data.cc
[add] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/ui/accessibility/ax_action_data.h
[modify] https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3/ui/accessibility/ax_enums.idl

Project Member

Comment 3 by bugdroid1@chromium.org, Oct 18 2016

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

commit 868327e8ad9461c9a07507045db64eabce193fc8
Author: guidou <guidou@chromium.org>
Date: Tue Oct 18 16:21:28 2016

Revert of Create AXAction and AXActionData as a way to simplify accessibility actions (patchset #9 id:160001 of https://codereview.chromium.org/2410333005/ )

Reason for revert:
Caused compile failure on Cast Android bot.

See https://uberchromegw.corp.google.com/i/chromium.linux/builders/Cast%20Android%20%28dbg%29/builds/53236/steps/compile/logs/stdio

[779/836] CXX obj/content/browser/browser/browser_accessibility_manager_android.o
FAILED: obj/content/browser/browser/browser_accessibility_manager_android.o
/b/c/cipd/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/content/browser/browser/browser_accessibility_manager_android.o.d -DENABLE_SCREEN_CAPTURE=1 -DAPPCACHE_USE_SIMPLE_CACHE -DUSE_MINIKIN_HYPHENATION=1 -DV8_DEPRECATION_WARNINGS -DENABLE_NOTIFICATIONS -DENABLE_PLUGINS=1 -DENABLE_SPELLCHECK=1 -DUSE_BROWSER_SPELLCHECKER=1 -DUSE_OPENSSL_CERTS=1 -DNO_TCMALLOC -DUSE_EXTERNAL_POPUP_MENU=1 -DENABLE_WEBRTC=1 -DDISABLE_NACL -DUSE_PROPRIETARY_CODECS -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=283753-1 -D_FILE_OFFSET_BITS=64 -DANDROID -DHAVE_SYS_UIO_H -DANDROID_NDK_VERSION=r12b -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__GNU_SOURCE=1 -D__compiler_offsetof=__builtin_offsetof -Dnan=__builtin_nan -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DCONTENT_IMPLEMENTATION -DV8_USE_EXTERNAL_STARTUP_DATA -DENABLE_MOJO_MEDIA -DENABLE_MOJO_CDM -DENABLE_MOJO_AUDIO_DECODER -DENABLE_MOJO_MEDIA_IN_GPU_PROCESS -DUSE_EGL -DDISABLE_FFMPEG_VIDEO_DECODERS -DLEVELDB_PLATFORM_CHROMIUM=1 -DSK_IGNORE_DW_GRAY_FIX -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_SUPPORT_GPU=1 -DSK_BUILD_FOR_ANDROID -DUSE_CHROMIUM_SKIA -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_NOEXCEPT= -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DOPUS_FIXED_POINT -DMESA_EGL_NO_X11_HEADERS -DPOSIX_AVOID_MMAP -DDISABLE_FTP_SUPPORT=1 -DENABLE_WEBSOCKETS -DFEATURE_ENABLE_SSL -DFEATURE_ENABLE_VOICEMAIL -DEXPAT_RELATIVE_PATH -DGTEST_RELATIVE_PATH -DNO_MAIN_THREAD_WRAPPING -DNO_SOUND_SYSTEM -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_LINUX -DWEBRTC_ANDROID -DXML_STATIC -DSSL_USE_OPENSSL -DHAVE_OPENSSL_SSL_H -DFEATURE_ENABLE_SSL -DLOGGING=1 -DNO_MAIN_THREAD_WRAPPING -I../.. -Igen -I../../third_party/khronos -I../../gpu -I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -I../../third_party/leveldatabase/src/include -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -Igen/blink -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/libwebm/source -Igen/media/base/android/media_jni_headers -Igen/media/base/android/media_jni_headers/media -I../../third_party/opus/src/include -Igen -I../../third_party/ced/src -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -I../../third_party/boringssl/src/include -I../../v8/include -Igen/v8/include -I../../third_party/mesa/src/include -I../../third_party/angle/src/common/third_party/numerics -Igen/angle -I../../third_party/libyuv/include -I../../third_party/re2/src -I../../third_party/zlib -Igen/ui/resources -Igen/ui/resources -I../../third_party/webrtc_overrides -I../../testing/gtest/include -I../../third_party -I../../third_party/webrtc_overrides -I../../third_party -I../../third_party/expat/files/lib -Igen/content/public/android/content_jni_headers -Igen/content/public/android/content_jni_headers/content -Igen/jar_jni/content -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pipe -fcolor-diagnostics -ffunction-sections -fno-short-enums --target=arm-linux-androideabi -march=armv7-a -mfloat-abi=softfp -mthumb -mtune=generic-armv7-a -mfpu=neon -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Os -fno-omit-frame-pointer -gdwarf-3 -g1 --sysroot=../../third_party/android_tools/ndk/platforms/android-16/arch-arm -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Wheader-hygiene -Wstring-conversion -Wexit-time-destructors -Wno-unused-function -fno-threadsafe-statics -fvisibility-inlines-hidden -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=gnu++11 -fno-rtti -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++abi/libcxxabi/include -isystem../../third_party/android_tools/ndk/sources/android/support/include -fno-exceptions -c ../../content/browser/accessibility/browser_accessibility_manager_android.cc -o obj/content/browser/browser/browser_accessibility_manager_android.o
../../content/browser/accessibility/browser_accessibility_manager_android.cc:702:34: error: no member named 'AccessibilityShowContextMenu' in 'content::BrowserAccessibilityDelegate'
    node->manager()->delegate()->AccessibilityShowContextMenu(node->GetId());
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~  ^

Original issue's description:
> Create AXAction and AXActionData as a way to simplify accessibility actions
>
> Previously we had a collection of 10 accessibility actions that were
> implemented on every accessibility object - all of them implemented for
> the web, and about half implemented for aura views and for the automation
> extension API.
>
> This resulted in a lot of boilerplate code because of the many layers of
> indirection between the various parts of the codebase. Adding a new
> accessibility action meant adding a new IPC and adding a new method to around
> a dozen files just to plumb it through.
>
> In comparison, we have dozens of accessibility events but we handle them all
> with a single flexible data structure, so adding a new event doesn't require
> so much plumbing.
>
> This change streamlines accessibility actions too. There's
> an enum AXAction with all of the possible accessibility actions, and a
> serializable data structure AXActionData that encapsulates the parameters
> needed by an accessibility action.
>
> This cuts down on some duplicate code and reduces the amount of new code
> that needs to be written to add support for a new accessibility action in
> the future. For example, macOS has "increment" and "decrement" actions for
> range controls that we ought to support, and there are some additional
> arguments to setAccessibilityFocus that we're contemplating.
>
> BUG= 655272 , 655273
> TESTED=Manually triggered each of the supported accessibility actions from
>     ChromeVox, and from at least one native screen reader.
> CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation
>
> Committed: https://crrev.com/daa9dd2ccf9e285d7dd9b389f663f5122506f1f3
> Cr-Commit-Position: refs/heads/master@{#425980}

TBR=dtseng@chromium.org,jam@chromium.org,tsepez@chromium.org,dmazzoni@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 655272 , 655273

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

[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/chrome/browser/extensions/api/automation_internal/automation_action_adapter.h
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/chrome/browser/ui/aura/accessibility/automation_manager_aura.h
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/chrome/common/extensions/api/automation.idl
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/chrome/common/extensions/api/automation_internal.idl
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/accessibility/android_granularity_movement_browsertest.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/accessibility/browser_accessibility_cocoa.mm
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/accessibility/browser_accessibility_manager_android.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/accessibility/browser_accessibility_manager_unittest.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/accessibility/dump_accessibility_events_browsertest.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/accessibility/hit_testing_browsertest.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/browser/frame_host/render_frame_host_impl.h
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/common/accessibility_messages.h
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/public/browser/render_frame_host.h
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/content/renderer/accessibility/render_accessibility_impl.h
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/ui/accessibility/BUILD.gn
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/ui/accessibility/PRESUBMIT.py
[delete] https://crrev.com/045dd132e8d0a1ff6f067de23bf34516faf3ecf8/ui/accessibility/ax_action_data.cc
[delete] https://crrev.com/045dd132e8d0a1ff6f067de23bf34516faf3ecf8/ui/accessibility/ax_action_data.h
[modify] https://crrev.com/868327e8ad9461c9a07507045db64eabce193fc8/ui/accessibility/ax_enums.idl

Project Member

Comment 4 by bugdroid1@chromium.org, Oct 19 2016

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

commit e6f29fcd6e289b6724b8812cf2be8b1c74774fa2
Author: dmazzoni <dmazzoni@chromium.org>
Date: Wed Oct 19 16:34:29 2016

Re-land: Create AXAction and AXActionData as a way to simplify accessibility actions

Original review: https://codereview.chromium.org/2410333005/
Landed in r425980, reverted in r425984 due to a conflict that landed
after the try runs finished but before this change was committed.

Previously we had a collection of 10 accessibility actions that were
implemented on every accessibility object - all of them implemented for
the web, and about half implemented for aura views and for the automation
extension API.

This resulted in a lot of boilerplate code because of the many layers of
indirection between the various parts of the codebase. Adding a new
accessibility action meant adding a new IPC and adding a new method to around
a dozen files just to plumb it through.

In comparison, we have dozens of accessibility events but we handle them all
with a single flexible data structure, so adding a new event doesn't require
so much plumbing.

This change streamlines accessibility actions too. There's
an enum AXAction with all of the possible accessibility actions, and a
serializable data structure AXActionData that encapsulates the parameters
needed by an accessibility action.

This cuts down on some duplicate code and reduces the amount of new code
that needs to be written to add support for a new accessibility action in
the future. For example, macOS has "increment" and "decrement" actions for
range controls that we ought to support, and there are some additional
arguments to setAccessibilityFocus that we're contemplating.

BUG= 655272 , 655273
TESTED=Manually triggered each of the supported accessibility actions from
    ChromeVox, and from at least one native screen reader.
TBR=dtseng@chromium.org,tsepez@chromium.org,jam@chromium.org
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://chromiumcodereview.appspot.com/2426193003
Cr-Commit-Position: refs/heads/master@{#426221}

[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/chrome/browser/extensions/api/automation_internal/automation_action_adapter.h
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/chrome/browser/ui/aura/accessibility/automation_manager_aura.h
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/chrome/common/extensions/api/automation.idl
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/chrome/common/extensions/api/automation_internal.idl
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/accessibility/android_granularity_movement_browsertest.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/accessibility/browser_accessibility_cocoa.mm
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/accessibility/browser_accessibility_manager_android.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/accessibility/browser_accessibility_manager_unittest.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/accessibility/dump_accessibility_events_browsertest.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/accessibility/hit_testing_browsertest.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/browser/frame_host/render_frame_host_impl.h
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/common/accessibility_messages.h
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/public/browser/render_frame_host.h
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/content/renderer/accessibility/render_accessibility_impl.h
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/ui/accessibility/BUILD.gn
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/ui/accessibility/PRESUBMIT.py
[add] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/ui/accessibility/ax_action_data.cc
[add] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/ui/accessibility/ax_action_data.h
[modify] https://crrev.com/e6f29fcd6e289b6724b8812cf2be8b1c74774fa2/ui/accessibility/ax_enums.idl

Owner: dmazz...@chromium.org
Status: Assigned (was: Duplicate)
What bug is it a duplicate of?

I already landed changes under this bug number so I'm going to keep this bug open for now. Can we mark the other bug as depending on this one?

Labels: Phase3
Project Member

Comment 8 by bugdroid1@chromium.org, Oct 28 2016

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

commit fb6b8fd66c69ba0460fc38bbe3a256876665d7cf
Author: dmazzoni <dmazzoni@chromium.org>
Date: Fri Oct 28 07:53:40 2016

Use setSequentialFocusNavigationStartingPoint in ChromeVox

Improves the interaction between ChromeVox navigation and input focus.
If you navigate to a focusable node, focuses it. If you navigate to a
descendant of a focusable node, focuses it too (checks the common
ancestors of the start and end of the selection). If not, sets the
sequential focus navigation start point to the start of the selection
so that subsequent focus using the Tab key is relative to that point.

Includes two new tests.

BUG= 655272 
TESTED=Visit Wikipedia, press Cvox+H to navigate to heading, then Tab to go to the next link after that heading. Then navigate by line with Search+Up/Down and confirm that it focuses links as you pass over them.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

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

[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/browser/chromeos/accessibility/spoken_feedback_browsertest.cc
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/browser/resources/chromeos/chromevox/common/chrome_extension_externs.js
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/browser/resources/chromeos/chromevox/cvox2/background/automation_predicate.js
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/browser/resources/chromeos/chromevox/cvox2/background/background.js
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/browser/resources/chromeos/chromevox/cvox2/background/background_test.extjs
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/common/extensions/api/automation.idl
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/common/extensions/api/automation_internal.idl
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/chrome/renderer/resources/extensions/automation/automation_node.js
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/ui/accessibility/PRESUBMIT.py
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/ui/accessibility/ax_action_data.cc
[modify] https://crrev.com/fb6b8fd66c69ba0460fc38bbe3a256876665d7cf/ui/accessibility/ax_enums.idl

Comment 9 by dtseng@chromium.org, Oct 29 2016

NextAction: 2016-10-28
Status: fixed (was: Assigned)
Status: Verified (was: Fixed)
verified on 56.0.2903.0

Sign in to add a comment