nvaccess / nvda

NVDA, the free and open source Screen Reader for Microsoft Windows
https://www.nvaccess.org/
Other
2.11k stars 638 forks source link

NVDA does not read sub-folders accessed by address bar split button in File Explorer modal dialogs #6750

Open Qchristensen opened 7 years ago

Qchristensen commented 7 years ago

In File Explorer (in Windows 10), using TAB to get to the address bar (rather than alt+d which turns the address bar into one big edit field), it is possible to use the left and right arrows to move between the parts of the path. EG in "\documents\work\letters\", you could right arrow through documents and work to letters, or from work you can down arrow and select the letters folder, or the bills folder, or awards, or whatever.

In a native File Explorer window, that works fine. In a modal dialog such as a file open dialog from Word or Notepad, everything works up until you down arrow to browse folders. At that point you get no speech, although the arrows do move through folders and you can select etc. Physically moving the mouse over the drop down reads the item under the mouse.

Navigating around the dialog box and selecting folders from the tree and list view works fine.

I captured the log below when navigating through the "This PC" split button and moving the mouse onto "Downloads", then routing the focus to the mouse:

Input: kb(desktop):NVDA+f1 INFO - globalCommands.GlobalCommands.script_navigatorObject_devInfo (08:55:12): Developer info for navigator object: name: u'Downloads' role: ROLE_MENUITEM states: STATE_SELECTABLE, STATE_FOCUSED isFocusable: False hasFocus: True Python object: <NVDAObjects.Dynamic_ListItemWithoutColumnSupportMenuItemIAccessible object at 0x05895F90> Python class mro: (<class 'NVDAObjects.Dynamic_ListItemWithoutColumnSupportMenuItemIAccessible'>, <class 'NVDAObjects.IAccessible.sysListView32.ListItemWithoutColumnSupport'>, <class 'NVDAObjects.IAccessible.MenuItem'>, <class 'NVDAObjects.IAccessible.IAccessible'>, <class 'NVDAObjects.window.Window'>, <class 'NVDAObjects.NVDAObject'>, <class 'baseObject.ScriptableObject'>, <class 'baseObject.AutoPropertyObject'>, <type 'object'>) description: None location: (801, 217, 562, 41) value: u'Downloads' appModule: <'appModuleHandler' (appName u'notepad', process ID 2288) at address 58b2350> appModule.productName: u'Microsoft\xae Windows\xae Operating System' appModule.productVersion: u'10.0.15007.1000' TextInfo: <class 'NVDAObjects.NVDAObjectTextInfo'> windowHandle: 983524 windowClassName: u'SysListView32' windowControlID: 5 windowStyle: 1442857989 windowThreadID: 14772 windowText: u'This PC sibling list' displayText: u'Downloads' IAccessibleObject: <POINTER(IAccessible) ptr=0x8426908 at 584ba80> IAccessibleChildID: 3 IAccessible event parameters: windowHandle=983524L, objectID=-4, childID=3L IAccessible accName: u'Downloads' IAccessible accRole: ROLE_SYSTEM_MENUITEM IAccessible accState: STATE_SYSTEM_SELECTABLE, STATE_SYSTEM_FOCUSED, STATE_SYSTEM_VALID (2097156) IAccessible accDescription: exception: (-2147352573, 'Member not found.', (None, None, None, 0, None)) IAccessible accValue: None

jcsteh commented 7 years ago

Can you check whether it works with Narrator please? Ta.

Qchristensen commented 7 years ago

Just checked, it does work with Narrator.

Adriani90 commented 5 years ago

Pressing tab and then shift+tab solves this. However, I can reproduce this issue and unfortunately there is not useful Information in the log I guess.

Adriani90 commented 4 years ago

@Qchristensen I cannot reproduce this anymore with NVDA alpha-20097,6a573cd9 on Woindows 10 1909 Update. Can you confirm?

lukaszgo1 commented 4 years ago

Even if it is fixed under W 10 1909 It still does not work for older versions of Windows. I've looked briefly and it seems fixable - I'll probably look into this after #11006 would no longer apply.

Qchristensen commented 4 years ago

This issue is still the same for me using Windows 10 1909 build 18363.900 and NVDA Alpha alpha-20339,975d39d1 (and Office 365 version 16.0.4417.1000

Adriani90 commented 1 year ago

@Qchristensen are you still seeing this issue on Windows 10 with NvDA 2023.1?

Qchristensen commented 1 year ago

Interestingly testing on Windows 11:

NVDA 2023.1.0.27913 Windows 11 (64-bit) Version: 22H2, Build: 22621.1555 Office 365 (64-bit) Version: 16.0.16227.20244

I can still reproduce this:

1) Open Notepad 2) Press control+o to open the file open dialog 3) Tab to "Address" 4) Press down arrow to open "all locations".

Visually, a list of locations appears, and you can arrow through this and select the desired location, however NVDA does not read anything:

IO - speech.speech.speak (11:43:37.437) - MainThread (8936): Speaking [LangChangeCommand ('en_GB'), 'All locations', 'split button', CancellableSpeech (still valid)] IO - inputCore.InputManager.executeGesture (11:43:39.765) - winInputHook (23808): Input: kb(desktop):downArrow IO - inputCore.InputManager.executeGesture (11:43:40.441) - winInputHook (23808): Input: kb(desktop):downArrow IO - inputCore.InputManager.executeGesture (11:43:40.830) - winInputHook (23808): Input: kb(desktop):downArrow