Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(371)

Issue 2757623003: Initial support for accessible text fields and focus tracking in ARC++ (Closed)

Created:
3 years, 9 months ago by David Tseng
Modified:
3 years, 9 months ago
CC:
chromium-reviews, elijahtaylor+arcwatch_chromium.org, dtseng+watch_chromium.org, alemate+watch_chromium.org, oshima+watch_chromium.org, yusukes+watch_chromium.org, aboxhall+watch_chromium.org, hidehiko+watch_chromium.org, nektar+watch_chromium.org, yuzo+watch_chromium.org, je_julie, lhchavez+watch_chromium.org, dmazzoni+watch_chromium.org, victorhsieh+watch_chromium.org, davemoore+watch_chromium.org, arv+watch_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Initial support for accessible text fields and focus tracking in ARC++ In order to support text fields, full support for focus tracking is needed. On Android, focus events can and do get fired on ancestors of the focused node. As a result, the accessibility service needs to manually call |findFocus| to get the deepest focused node. TEST=Play Store->Search Play Store->type. Verify characters and words are echoed when inserted, echoed in lower pitch when deleted. Additionally, navigate through the app with plain arrow keys. Verify output and focus movement gets reflected both from js and in ChromeVox. BUG= CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation Review-Url: https://codereview.chromium.org/2757623003 Cr-Commit-Position: refs/heads/master@{#458465} Committed: https://chromium.googlesource.com/chromium/src/+/81caea92aaa24baa082bd4be9e07cc09839be419

Patch Set 1 #

Total comments: 8

Patch Set 2 : Fix focus. #

Patch Set 3 : Simpler fix. #

Total comments: 9

Patch Set 4 : Address nits. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+33 lines, -11 lines) Patch
M chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc View 1 2 3 5 chunks +27 lines, -5 lines 0 comments Download
M chrome/browser/resources/chromeos/chromevox/common/chromevox_json.js View 1 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors.js View 2 chunks +3 lines, -3 lines 0 comments Download
M chrome/browser/resources/chromeos/chromevox/cvox2/background/earcon_engine.js View 1 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 33 (17 generated)
David Tseng
yawano: arc dmazzoni: cvox2 There are some strange edge cases such as when arrowing to ...
3 years, 9 months ago (2017-03-16 22:49:38 UTC) #6
David Tseng
3 years, 9 months ago (2017-03-16 23:41:11 UTC) #8
dmazzoni
lgtm Don't forget to associate with a bug https://codereview.chromium.org/2757623003/diff/1/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc File chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc (right): https://codereview.chromium.org/2757623003/diff/1/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc#newcode87 chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc:87: arc::mojom::AccessibilityIntProperty ...
3 years, 9 months ago (2017-03-17 03:22:37 UTC) #11
yawano
https://codereview.chromium.org/2757623003/diff/1/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc File chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc (right): https://codereview.chromium.org/2757623003/diff/1/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc#newcode350 chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc:350: if (GetIntProperty(node, AXIntProperty::TEXT_SELECTION_START, Node can have both TEXT_SELECTION_START and ...
3 years, 9 months ago (2017-03-17 08:38:23 UTC) #12
David Tseng
https://codereview.chromium.org/2757623003/diff/1/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc File chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc (right): https://codereview.chromium.org/2757623003/diff/1/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc#newcode87 chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc:87: arc::mojom::AccessibilityIntProperty prop, On 2017/03/17 03:22:37, dmazzoni wrote: > nit: ...
3 years, 9 months ago (2017-03-17 15:38:32 UTC) #13
David Tseng
PTAL. I removed the mappings for accessibility focus / clear accessibility focus. We now keep ...
3 years, 9 months ago (2017-03-17 20:19:26 UTC) #14
David Tseng
Ansewring my own questions, as FYI. dtseng@chromium.org writes: > PTAL. > > I removed the ...
3 years, 9 months ago (2017-03-17 22:08:54 UTC) #18
Luis Héctor Chávez
drive-by https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc File chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc (right): https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc#newcode350 chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc:350: val >= 0) nit: add braces since the ...
3 years, 9 months ago (2017-03-17 22:13:20 UTC) #20
yawano
lgtm. I'll play with this CL once I find a time. Thank you.
3 years, 9 months ago (2017-03-21 00:48:08 UTC) #21
hidehiko
Drive-by: https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc File chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc (right): https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc#newcode21 chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc:21: return ui::AX_EVENT_FOCUS; nit: unnecessary change. https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/resources/chromeos/chromevox/common/chromevox_json.js File chrome/browser/resources/chromeos/chromevox/common/chromevox_json.js ...
3 years, 9 months ago (2017-03-21 03:43:23 UTC) #23
David Tseng
https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc File chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc (right): https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc#newcode21 chrome/browser/chromeos/arc/accessibility/ax_tree_source_arc.cc:21: return ui::AX_EVENT_FOCUS; On 2017/03/21 03:43:23, hidehiko wrote: > nit: ...
3 years, 9 months ago (2017-03-21 16:41:16 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2757623003/100001
3 years, 9 months ago (2017-03-21 16:43:56 UTC) #27
commit-bot: I haz the power
Committed patchset #4 (id:100001) as https://chromium.googlesource.com/chromium/src/+/81caea92aaa24baa082bd4be9e07cc09839be419
3 years, 9 months ago (2017-03-21 17:52:26 UTC) #30
hidehiko
FYI (after commit :-)). https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors.js File chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors.js (right): https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors.js#newcode145 chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors.js:145: firstValidNode.root != undefined) { On ...
3 years, 9 months ago (2017-03-21 22:00:43 UTC) #31
hidehiko
On 2017/03/21 22:00:43, hidehiko wrote: > FYI (after commit :-)). > > https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors.js > File ...
3 years, 9 months ago (2017-03-21 22:14:26 UTC) #32
chromium-reviews
3 years, 9 months ago (2017-03-22 17:54:03 UTC) #33
Message was sent while issue was closed.
hidehiko@chromium.org writes:

> On 2017/03/21 22:00:43, hidehiko wrote:
>> FYI (after commit :-)).
>
>
>
https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/resource...
>> File  
>> chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors.js
>> (right):
>
>
>
https://codereview.chromium.org/2757623003/diff/80001/chrome/browser/resource...
>> chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors.js:145:
>> firstValidNode.root != undefined) {
>> On 2017/03/21 16:41:16, David Tseng wrote:
>> > On 2017/03/21 03:43:23, hidehiko wrote:
>> > > nit: looks unnecessary change? (Or any reasons to relax the  
>> condition...?)
>> >
>> > It actually is. There are some cases, particularly in text fields,  
>> where the
>> > text field node is detached and its parent is set to null (not  
>> undefined).
>
>> firstValidNode.root can be null, I think it's nice to comment (or  
>> explicitly
>> check either null or undefined), for future maintenance.
>
> Oops typo...
>
> "if firstValidNode.root can be null", I meant.
>

In principle, I agree better readability clarity is important. However,
anyone writing js should understand the difference between != and !==.

-- 
You received this message because you are subscribed to the Google Groups
"Chromium-reviews" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to chromium-reviews+unsubscribe@chromium.org.

Powered by Google App Engine
This is Rietveld 408576698