Goldwave helped find more missing functionality.

This commit is contained in:
ak47 committed 2026-10-10 23:43:37 -04:00
1 parent df7879acb5
commit 67ebc28d15
9 files changed
+134 -8

No files matched your search

+30
View File
@@ -161,6 +161,36 @@ Check arrows and Tab/Shift+Tab back to Install/Cancel. Also check a multirow
native list, normal menus, editor navigation, switching to a native Linux
application, and reader shutdown. Verify speech and physical braille separately.
## Delphi Setup lists and checkboxes
The October 10 GoldWave 5.70 Setup inspection found a 32-bit `TListView`
with 14 checkbox rows, plus `TButton` and `TBitBtn` controls. Wine exposed
them as generic MSAA clients; the list client's name/value were empty. Focus
events were present for the buttons and on return to the list. The native
messages already exposed the option captions and checkbox state, but the
helper did not recognize these VCL class names or read list checkbox states.
The explicit VCL aliases and native checkbox query fix those shared gaps.
The updated query code read the actual open Setup's first option, `Disable
effect plug-ins`, `not checked`, position 1 of 14, and the Backup/Restore/OK/
Cancel button roles without changing settings or sending speech. A later
live registry query also confirmed `StartupOptions=0x3008` and Setup showed
`Force screen reader mode` checked; the earlier immediate persistence query
had still seen `0x1008`.
```sh
xvfb-run -a python3 tests/menu_integration.py --build-dir build --fixture delphi --32-bit
xvfb-run -a python3 tests/menu_integration.py --build-dir build --fixture delphi
```
Both fixtures passed with native controls registered under VCL names. They
check initial rows/labels, Down navigation, Space check/uncheck without
synthetic accessibility events, button roles, return to the checked row,
and empty-list state reset. The existing 32-bit plain-list regression also
passed. These are private D-Bus recordings; audible GoldWave speech and
physical braille remain a live acceptance check after installing the helper
and restarting Cthulhu. The fix does not add 32-bit menu or editor hooks.
## Native tabs, trees and named clients
```sh