Skip to content

NVDA screen reader freezes on dialogs launched from Open-Shell Start menu after recent Windows update #2476

@OnjLouis

Description

@OnjLouis

When using Open-Shell Start Menu with the NVDA screen reader, dialogs launched from Start menu items can cause NVDA to freeze or stop speaking for several seconds. This affects accessibility because the dialog appears but NVDA cannot reliably announce it or respond normally while it is trying to inspect the dialog.
The problem is reproducible with NVDA add-ons disabled, so it does not appear to be caused by a third-party NVDA add-on or speech synthesizer.
This started recently, likely after a Windows update. Open-Shell itself was installed earlier and had been working normally.
Area of issue
Start menu / Windows Explorer / accessibility
To reproduce

  1. Start NVDA 2026.1.1 with debug logging enabled and add-ons disabled.
  2. Open the Open-Shell Start menu.
  3. Navigate to Programs / Favorites.
  4. Select a favorite / internet shortcut item which causes the Windows "File Download" warning dialog to appear, with buttons such as Cancel and Open.
  5. Observe NVDA speech and responsiveness.
    A similar problem also occurs when invoking other Explorer dialogs from the Open-Shell Start menu, for example pressing Delete on an item and expecting the delete confirmation dialog.
    Expected behavior
    NVDA should announce the dialog title, text, and focused control promptly, and remain responsive.
    Actual behavior
    NVDA can stop speaking and become unresponsive for several seconds. With NVDA's "Report object descriptions" option enabled, NVDA appears to hang while attempting to gather dialog text. With that option disabled, NVDA sometimes speaks a little more, but watchdog freezes still occur.
    Environment
    Open-Shell version: 4.4.198
    Open-Shell install date on affected system: 2026-05-16
    Windows version: Windows 11 25H2, build 10.0.26200.8524, AMD64
    Recent Windows updates before regression: KB5092427, KB5089573, KB5092734 installed 2026-05-27
    NVDA version: 2026.1.1 AMD64
    NVDA test mode: reproduced with --disable-addons --debug-logging
    Relevant redacted NVDA debug log excerpt
    Input: kb(laptop):enter
    DEBUGWARNING - NVDAObjects.IAccessible.IAccessible._get_IAccessibleRole:
    accRole failed: (-2147417848, 'The object invoked has disconnected from its clients.', (None, None, None, 0, None))

INFO - watchdog.waitForFreezeRecovery:
Starting freeze recovery after 0.5001646000018809 seconds.

Python stack for thread MainThread:
File "IAccessibleHandler_init_.pyc", line 1073, in pumpAll
File "IAccessibleHandler_init_.pyc", line 657, in processGenericWinEvent
File "IAccessibleHandler_init_.pyc", line 581, in winEventToNVDAEvent
File "NVDAObjects\IAccessible_init_.pyc", line 77, in getNVDAObjectFromEvent
File "IAccessibleHandler_init_.pyc", line 353, in accessibleObjectFromEvent
File "oleacc.pyc", line 295, in AccessibleObjectFromEvent

DEBUGWARNING - core.CorePump.Notify:
errors in this core pump cycle
Traceback (most recent call last):
File "IAccessibleHandler_init_.pyc", line 1073, in pumpAll
File "IAccessibleHandler_init_.pyc", line 657, in processGenericWinEvent
File "IAccessibleHandler_init_.pyc", line 581, in winEventToNVDAEvent
File "NVDAObjects\IAccessible_init_.pyc", line 83, in getNVDAObjectFromEvent
File "NVDAObjects\IAccessible_init_.pyc", line 796, in init
File "IAccessibleHandler_init_.pyc", line 1098, in getIAccIdentity
File "comtypes_post_coinit\unknwn.pyc", line 406, in QueryInterface
exceptions.CallCancelled: COM call cancelled

INFO - watchdog.waitForFreezeRecovery:
Recovered from freeze after 0.757168999989517 seconds.

INFO - watchdog.waitForFreezeRecovery:
Starting freeze recovery after 10.00575400001253 seconds.

Python stack for thread MainThread:
File "eventHandler.pyc", line 354, in executeEvent
File "appModules\explorer.pyc", line 438, in event_gainFocus
File "NVDAObjects_init_.pyc", line 1372, in event_gainFocus
File "NVDAObjects_init_.pyc", line 1208, in reportFocus
File "speech\speech.pyc", line 816, in speakObject
File "speech\speech.pyc", line 856, in getObjectSpeech
File "speech\speech.pyc", line 707, in getObjectPropertiesSpeech
File "NVDAObjects\behaviors.pyc", line 193, in get_description
File "NVDAObjects\behaviors.pyc", line 99, in getDialogText
File "NVDAObjects\IAccessible_init
.pyc", line 1405, in get_children
File "IAccessibleHandler_init
.pyc", line 353, in accessibleObjectFromEvent
File "oleacc.pyc", line 295, in AccessibleObjectFromEvent

DEBUGWARNING - eventHandler.executeEvent:
error executing event: gainFocus on <NVDAObjects.Dynamic_DialogIAccessibleWindowNVDAObject object> with extra args of {}
Traceback (most recent call last):
File "eventHandler.pyc", line 354, in executeEvent
File "appModules\explorer.pyc", line 438, in event_gainFocus
File "NVDAObjects_init_.pyc", line 1372, in event_gainFocus
File "NVDAObjects_init_.pyc", line 1208, in reportFocus
File "speech\speech.pyc", line 816, in speakObject
File "speech\speech.pyc", line 856, in getObjectSpeech
File "speech\speech.pyc", line 707, in getObjectPropertiesSpeech
File "NVDAObjects\behaviors.pyc", line 193, in get_description
File "NVDAObjects\behaviors.pyc", line 99, in getDialogText
File "NVDAObjects\IAccessible_init
.pyc", line 1409, in get_children
File "NVDAObjects\IAccessible_init
.pyc", line 796, in init
File "IAccessibleHandler_init_.pyc", line 1098, in getIAccIdentity
File "comtypes_post_coinit\unknwn.pyc", line 406, in QueryInterface
exceptions.CallCancelled: COM call cancelled

INFO - watchdog.waitForFreezeRecovery:
Recovered from freeze after 10.260948200011626 seconds.

Additional context
The same dialog pattern appears to be usable when not launched via Open-Shell. The failure seems specific to dialogs invoked from Open-Shell Start menu items. This may be related to a recent Windows accessibility/MSAA behavior change, as the affected system had several Windows updates installed on 2026-05-27 and the behavior was reportedly working about a week earlier.
Release 4.4.198 mentions a fix for open/save file dialogs getting stuck after a Windows 11 update, so this may be a related but still-unresolved accessibility path involving Start menu launched shell dialogs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions