Skip to content

NVDA2022.1 fails to report list items in some ListViews #13735

@cary-rowen

Description

@cary-rowen

Steps to reproduce:

  1. Download the provided application and perform the installation;
  2. Run the installed application, which will contain a list control.
  3. Use the up and down arrows to navigate the list control;

Actual behavior:

  • NVDA reports 'selected';
  • obj.name: "exception: 'NoneType' object is not subscriptable" in the log
  • Full log(nvda.log), add-ons disabled.
  • log snippet:
IO - speech.speech.speak (11:03:58.903) - MainThread (12612):
Speaking ['已选择']
IO - inputCore.InputManager.executeGesture (11:03:59.439) - winInputHook (13168):
Input: kb(laptop):downArrow
WARNING - eventHandler._EventExecuter.next (11:03:59.463) - MainThread (12612):
Could not execute function event_gainFocus defined in NVDAObjects module; kwargs: {}
Traceback (most recent call last):
  File "eventHandler.pyc", line 107, in next
  File "NVDAObjects\__init__.pyc", line 1152, in event_gainFocus
  File "NVDAObjects\behaviors.pyc", line 637, in reportFocus
  File "NVDAObjects\__init__.pyc", line 1052, in reportFocus
  File "speech\speech.pyc", line 558, in speakObject
  File "speech\speech.pyc", line 601, in getObjectSpeech
  File "speech\speech.pyc", line 453, in getObjectPropertiesSpeech
  File "baseObject.pyc", line 42, in __get__
  File "baseObject.pyc", line 146, in _getPropertyViaCache
  File "NVDAObjects\IAccessible\sysListView32.pyc", line 581, in _get_name
  File "NVDAObjects\IAccessible\sysListView32.pyc", line 447, in _getColumnLocation
TypeError: 'NoneType' object is not subscriptable
DEBUGWARNING - RPC process 11804 (zdcloud.exe) (11:03:59.468) - Dummy-5 (5688):
Thread 10352, build\x86\remote\sysListView32.cpp, nvdaInProcUtils_sysListView32_getColumnOrderArray, 172:
LVM_GETCOLUMNORDERARRAY failed

ERROR - eventHandler.executeEvent (11:03:59.464) - MainThread (12612):
error executing event: gainFocus on <NVDAObjects.IAccessible.sysListView32.ListItem object at 0x043775B0> with extra args of {}
Traceback (most recent call last):
  File "eventHandler.pyc", line 107, in next
  File "NVDAObjects\__init__.pyc", line 1152, in event_gainFocus
  File "NVDAObjects\behaviors.pyc", line 637, in reportFocus
  File "NVDAObjects\__init__.pyc", line 1052, in reportFocus
  File "speech\speech.pyc", line 558, in speakObject
  File "speech\speech.pyc", line 601, in getObjectSpeech
  File "speech\speech.pyc", line 453, in getObjectPropertiesSpeech
  File "baseObject.pyc", line 42, in __get__
  File "baseObject.pyc", line 146, in _getPropertyViaCache
  File "NVDAObjects\IAccessible\sysListView32.pyc", line 581, in _get_name
  File "NVDAObjects\IAccessible\sysListView32.pyc", line 447, in _getColumnLocation
TypeError: 'NoneType' object is not subscriptable

Expected behavior:

NVDA can report list items.

System configuration

NVDA installed/portable/running from source:

installed

NVDA version:

2022.1

Windows version:

Windows 10 21H2 (x64) build 19044.1706

Name and version of other software in use when reproducing the issue:

download from NVDACN
download from googleDrive

Other information about your system:

None

Other questions

Does the issue still occur after restarting your computer?

Yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

2021.3.5 works as expected.

If NVDA add-ons are disabled, is your problem still occurring?

Yes

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

Yes

Metadata

Metadata

Assignees

Labels

bug/regressionp3https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#prioritytriagedHas been triaged, issue is waiting for implementation.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions