microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
163.68k stars 29.07k forks source link

Unnecessary '1 results' spoken after pressing CTRL+g with screen reader enabled #175559

Open lukaszgo1 opened 1 year ago

lukaszgo1 commented 1 year ago

Type: Bug cc @isidorn

  1. Start NVDA and VS Code - ensure that accessibility support is enabled
  2. Open an empty file, press CTRL_g, and listen to the screen reader output

Expected: Screen reader announces the name of the newly focused control Actual: Before announcing the new focus there is an unnecessary announcement provided via live region which says 'one results'. Aside from the fact that it should say 'one result' this is distracting and in that particular context seems to serve no purpose.

VS Code version: Code - Insiders 1.76.0-insider (ead95b4a7014d12ddcb2dd6ddcb16e73f1e4cd67, 2023-02-24T21:55:13.530Z) OS version: Windows_NT x64 10.0.19044 Modes: Sandboxed: Yes

System Info |Item|Value| |---|---| |CPUs|Intel(R) Core(TM) i5-5200U CPU @ 2.20GHz (4 x 2195)| |GPU Status|2d_canvas: enabled
canvas_oop_rasterization: disabled_off
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_renderer: enabled_on
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: disabled_off| |Load (avg)|undefined| |Memory (System)|15.91GB (11.55GB free)| |Process Argv|--crash-reporter-id fd55c502-07ef-4f56-8594-165b200772c3| |Screen Reader|yes| |VM|0%|
Extensions (8) Extension|Author (truncated)|Version ---|---|--- isort|ms-|2023.9.10461023 python|ms-|2023.3.10581011 vscode-pylance|ms-|2023.2.43 jupyter|ms-|2023.2.1000561009 jupyter-keymap|ms-|1.0.0 jupyter-renderers|ms-|1.0.15 vscode-jupyter-cell-tags|ms-|0.1.6 vscode-jupyter-slideshow|ms-|0.1.5
A/B Experiments ``` vsliv695:30137379 vsins829:30139715 vsliv368:30146709 vsreu685:30147344 python383cf:30185419 vspor879:30202332 vspor708:30202333 vspor363:30204092 vslsvsres303:30308271 pythonvspyl392:30422396 pythontb:30258533 pythonptprofiler:30281269 vshan820:30294714 pythondataviewer:30285072 vscod805:30301674 bridge0708:30335490 bridge0723:30353136 cmake_vspar411:30581797 vsaa593:30376534 pythonvs932:30404738 cppdebug:30492333 vsclangdf:30492506 c4g48928:30535728 dsvsc012:30540252 pynewext54:30618038 pylantcb52:30590116 pyindex848:30611229 nodejswelcome1:30587009 pyind779:30611226 pythonsymbol12:30651887 6233i204:30659907 pythonb192:30661256 pythonms35:30671666 ```
meganrogge commented 1 year ago

/duplicate #166920

lukaszgo1 commented 1 year ago

I do not understand why this was marked as a duplicate of #166920. This issue reports an unnecessary announcement done via live region which can be easily confirmed by disabling dynamic content changes in NVDA. There is no information's missing, just the announcement about item being selected is distracting and adds no value.

rperez030 commented 1 year ago

I observe a similar behavior when typing text in the command palette where there is an aria-live update which is read before the selected element. This seems to work better for JAWS users because JAWS reads the focus event first. In any case, the aria-live update is unnecessary because both NVDA and JAWS read position information when the list receives screen reader focus (Go to line 1. 1 of 1).