deedra 15d527c619 Respect Cthulhu key echo settings for Wine typing
Wine editor insertion events previously reached speech and Braille without
checking the user's typing echo preferences. Turning off key echo or an
individual character category therefore left Wine typing feedback enabled.

Read the live settings for each insertion and reuse the native text
presentation policy for alphabetic, numeric, punctuation, symbol, space and
diacritical input. Honor character echo and the master key echo switch;
apply the action-key setting to the helper's tab and new-line labels.
Reject unexpected multi-character insertion labels rather than treating
these ordered character events as paste notifications.

Preserve navigation, selection and deletion feedback when typing echo is
disabled. Retain repeated characters, case, uppercase/custom voice routing,
focus ordering and the existing stale-source/password protections.

Add regression coverage for live disable/re-enable, independent categories,
Unicode, character-echo overrides, and unaffected editor actions. Extend
the private D-Bus test to exercise settings changes through the real Wine
service signature. Document behavior, current word/sentence echo limits,
and live Notepad acceptance checks in the README.

Validation:
- Reproduced disabled typing reaching output with the new test before fixing.
- Full go test -race ./... -count=1 passed outside the socket-restricted sandbox.
- Private-session TestNativeSessionBusWineEvents passed with -race.
- Focused typing/editor regressions passed, including a fresh pre-commit run.
- go vet passed for internal/app, presentation, remote and wine.
- Reader and BrlAPI helper builds passed; reader --version succeeded.
- gofmt and git diff --check passed; independent review found no blockers.

Live audible speech, physical keyboard and physical Braille acceptance
remain pending. No running reader was replaced. Changes target deedra.
2026-10-14 22:32:37 -07:00

Cthulhu

Cthulhu is a Linux screen reader written in Go.

  • Repository Guidelines: layout, commands, and working safeguards.
  • Contributing: development, accessibility verification, licensing, and the AI-assisted contribution policy.
  • LibreOffice support: integration boundaries, initial Calc behavior, remaining work, and verification.

AI-assisted contributions are welcome. Contributors remain responsible for human review and testing before submission; see the full policy.

Wine Access

Install the separate wine-access helper for Wine application accessibility. Cthulhu checks CTHULHU_WINE_ACCESS_HELPER, then ~/.local/libexec/wine-access/wine-access.exe, /usr/local/libexec/wine-access/wine-access.exe, /usr/libexec/wine-access/wine-access.exe, and wine-access.exe on PATH. The existing cthulhu-wine-access.exe lookup remains supported: the old user location follows the new user location, the old /usr location follows the new system locations, and the old name on PATH follows the new name. Restart Cthulhu after changing the selected helper. Keep the launcher, its .exe.so sidecar, and the native hooks together in the installed directory.

Wine typing feedback in standard Edit controls follows the current key echo settings, including the master switch, character echo, and alphabetic, numeric, punctuation, space and diacritical categories. Tabs and line breaks follow key echo's action-key setting. Applying preferences takes effect without restarting the helper. Navigation, selection and deletion feedback remain available when typing echo is disabled. Word and sentence typing echo are not currently supplied by the Wine helper.

For a live check, type repeated letters, numbers, punctuation and spaces in Wine Notepad, change the corresponding echo settings and apply them, then continue typing. Disable key echo and verify that typing stays quiet while arrows, selection and Backspace still report editing feedback. Re-enable it and check capital/lowercase voices and password exclusion. Automated tests cover queued speech and Braille; audible speech and a physical Braille display still require live verification.

S
Description
This is a fork of the Orca screen reader, mostly just for fun. It's branched from the gnome 45 release. If you haven't heard about this in person and are working on it, you probably do not want to install it. Your distribution should include orca by default, and if you want the source, here is the [Orca git repository](https://gitlab.gnome.org/GNOME/orca).
Readme LGPL-2.1
24 MiB
0 Stars 1 Watchers 0 Forks
Languages
Python 98.7%
Shell 0.5%
Meson 0.5%
C++ 0.3%