Issue metadata
Sign in to add a comment
|
Implement SetSelection in Views widgets that support text editing |
||||||||||||||||||||||
Issue descriptionImpact: Jumping to specific characters with the cursor on a Braille display, (this is called routing), doesn't work. How to implement: Open ui/accessibility/ax_view_state.h Notice that even though there are attributes selection_start and selection_end for getting the current selection, there is no way to set the current selection. I think we should implement something similar to base::Callback<void(const base::string16&)> set_value_callback; but for the current selection. See also, ui/views/accessibility/native_view_accessibility.h bool SetStringValue(const base::string16& new_value) override; Again, we need something similar for selection. The corresponding method in the Web view is: content/browser/accessibility/browser_accessibility_manager.h BrowserAccessibilityDelegate::AccessibilitySetSelection
,
Nov 16 2016
This might be implemented already for Mac - by setting the selection, do you mean replacing the selected text with a new string, or making a new selection (without changing the text)? The former should already work after https://codereview.chromium.org/2341633006/. The latter is in progress, but will need to land after NativeViewAccessibility::AccessibilityPerformAction() is implemented (working on this now). I'm not sure how to implement this for OSes other than Mac though, so that part might be a little delayed until I get time to figure it out (unless someone else wants to look into it :)). Updated to be blocking 610591 (this is one of the writable accessibility attributes that need to be implemented for Mac Textfields).
,
Feb 8 2017
Implemented for Windows in https://codereview.chromium.org/2679313003/
,
Feb 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1d4fdc1a0b9e9839a1b23498ca2791864669147a commit 1d4fdc1a0b9e9839a1b23498ca2791864669147a Author: nektar <nektar@chromium.org> Date: Wed Feb 08 23:50:28 2017 Implemented IA2::setSelection and related methods on text fields in Views. Entering grade 2 Braille should now work with Jaws when in the address bar. BUG=645596 R=dmazzoni@chromium.org, msw@chromium.org CC=aleventhal@google.com TESTED=unit test, NVDA Python console > focus.IAccessibleTextObject.setSelection(...) Review-Url: https://codereview.chromium.org/2679313003 Cr-Commit-Position: refs/heads/master@{#449143} [modify] https://crrev.com/1d4fdc1a0b9e9839a1b23498ca2791864669147a/ui/accessibility/platform/ax_platform_node.h [modify] https://crrev.com/1d4fdc1a0b9e9839a1b23498ca2791864669147a/ui/accessibility/platform/ax_platform_node_base.cc [modify] https://crrev.com/1d4fdc1a0b9e9839a1b23498ca2791864669147a/ui/accessibility/platform/ax_platform_node_base.h [modify] https://crrev.com/1d4fdc1a0b9e9839a1b23498ca2791864669147a/ui/accessibility/platform/ax_platform_node_win.cc [modify] https://crrev.com/1d4fdc1a0b9e9839a1b23498ca2791864669147a/ui/accessibility/platform/ax_platform_node_win.h [modify] https://crrev.com/1d4fdc1a0b9e9839a1b23498ca2791864669147a/ui/accessibility/platform/ax_platform_node_win_unittest.cc [modify] https://crrev.com/1d4fdc1a0b9e9839a1b23498ca2791864669147a/ui/accessibility/platform/test_ax_node_wrapper.cc [modify] https://crrev.com/1d4fdc1a0b9e9839a1b23498ca2791864669147a/ui/views/controls/textfield/textfield.cc
,
Feb 17 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0a8d26e24fbf3e0a262f2e0fe72100c979a77428 commit 0a8d26e24fbf3e0a262f2e0fe72100c979a77428 Author: patricialor <patricialor@chromium.org> Date: Fri Feb 17 00:11:36 2017 MacViews/a11y: Allow accessibility clients to set new selections in Textfields. Currently, the `SelectedTextRange` a11y attribute on Views is reported as unmodifiable, which differs from native text field elements on Mac. This change will support allowing accessibility clients to change the text selection (including moving the cursor position) for views::Textfields. BUG= 610591 , 645596 TEST=With #secondary-ui-md turned on in chrome:flags, open the XCode Accessibility Inspector and bring up the HTTP Authentication dialog. Type some text into the username dialog, select some text, and inspect it with Alt+Space on macOS 10.12 or Cmd+F7 otherwise. In the Accessibility Inspector, scroll down to SelectedTextRange and check it's editable. Setting the location and length of the control then changes the text selection made earlier. Review-Url: https://codereview.chromium.org/2684203002 Cr-Commit-Position: refs/heads/master@{#451148} [modify] https://crrev.com/0a8d26e24fbf3e0a262f2e0fe72100c979a77428/ui/accessibility/platform/ax_platform_node_mac.mm [modify] https://crrev.com/0a8d26e24fbf3e0a262f2e0fe72100c979a77428/ui/views/widget/native_widget_mac_accessibility_unittest.mm
,
Feb 20 2017
Assigning back to you, nektar@, since you mentioned in codereview (from #c5) that you had some additional stuff to add with anchor and focus ids. Thanks for doing that!
,
Mar 27 2017
,
Apr 21 2017
,
Apr 21 2017
,
Dec 10 2017
,
Feb 5 2018
We should also deprecate the selection_start and selection_end attributes in favor of anchor_object, focus_object, anchor_offset and focus_offset.
,
Aug 1
|
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by ellyjo...@chromium.org
, Nov 15 2016Owner: patricia...@chromium.org