Document MSAA stall handling and remaining Wine acceptance checks
Describe the single COM worker, bounded queues, focus invalidation, 500 ms result expiry, native fallback, foreground filtering, owned-popup handling, and shutdown behavior. State the limitation that a permanently blocked provider occupies the one worker until helper exit. Document the event-stall regression commands and their coverage: typing and native button feedback during provider stalls, unchanged editor state, late-focus suppression, bounded normal shutdown, unrelated background providers, owned popups, both architectures, and the Orca endpoint. Distinguish the supplied October 12 reader log from the confirmed shared helper hang path. Successful D-Bus calls and clean reader shutdown do not establish a reader crash, and synthetic provider stalls do not establish the cause of every live MUSHclient failure. Keep command typing, incoming plugin output, menus, output-buffer arrows, keypad review, audible speech, and physical braille as explicit installed-helper acceptance checks. Validation: reviewed the documented behavior against the worker, event thread, and fixtures; git diff --check passed. Fresh CMake configure/build, all four CTest checks, six event-stall runs, and eight existing menu/editor/ control/list fixture runs passed. GUI checks ran sequentially on a private dummy Xorg display because Xvfb is unavailable; live speech and physical braille checks were not performed.
This commit is contained in:
1 parent
0c69564780
commit
27203b0512
2 files changed
+46
No files matched your search
@@ -237,6 +237,18 @@ contains stable comma-separated state labels decoded from the MSAA bitmask;
|
||||
protected values are excluded. Readers should filter name/state changes to
|
||||
their focused source and distinguish these labels from editor diagnostics.
|
||||
|
||||
Application-owned MSAA queries run on one separate COM worker, with bounded
|
||||
pending requests and copied results. A stalled provider cannot block the
|
||||
helper's menu/editor event thread or normal shutdown. Focus/foreground changes
|
||||
retire previous results; event results expire after 500 ms. If focus queries
|
||||
do not finish, native control feedback uses the existing bounded fallback.
|
||||
Unrelated background events are rejected before querying providers; visible
|
||||
popups owned by the foreground window retain their accessible event path.
|
||||
A provider that never completes still occupies the one MSAA worker until
|
||||
helper exit; native menus, editing, focus fallback and controller requests
|
||||
remain available. No extra workers accumulate behind blocked providers.
|
||||
|
||||
|
||||
Standard `SysListView32` controls now report the current row's text columns,
|
||||
selection and position, including 32-bit installers driven by the 64-bit
|
||||
helper. Wine can expose these controls only as a generic client named `List1`,
|
||||
|
||||
Reference in new issue
Block a user