158 Commits
Author SHA1 Message Date
ak47 4c95c9f278 Add global command bypass with Cthulhu+Z 2026-11-07 22:07:03 -05:00
ak47 d01965c00d Group inline links and list items into browse lines 2026-11-07 20:31:50 -05:00
Storm Dragon 3dbd7f2554 Avoid repeating Mumble server labels across columns
Collapse identical full-row labels only for Mumble while preserving mixed column data and repeated values from other providers. Add Qt native coverage and document live saved-server listening confirmation.
2026-11-07 20:12:25 -05:00
ak47 64440fbb78 Add Mumble message review shortcuts 2026-11-07 19:59:23 -05:00
ak47 d5f8a392cf Resume Cthulhu on empty i3 workspaces 2026-11-07 19:49:00 -05:00
ak47 a29910d002 Merge remote-tracking branch 'origin/testing' into testing 2026-11-07 14:46:59 -05:00
ak47 bf1f155018 Add native i3 desktop announcements 2026-11-07 14:46:46 -05:00
Storm Dragon c925344c41 Merge branch 'testing' of https://git.stormux.org/storm/cthulhu into testing 2026-11-07 14:43:12 -05:00
lilmike 20578ada40 Fix some issues with clickables on some websites. 2026-11-07 10:58:48 -08:00
Chase Cichorz 49eeae89f4 Fix GTK 4 foreground matching and menu labels 2026-11-07 13:40:23 -05:00
ak47 d0c977281d Bug fixes and package updates. 2026-11-07 13:14:22 -05:00
Chase CichorzandClaude Opus 5.5 c234cb82a8 Add Xorg Remote controller capture with a core F11 escape
The Xorg command owner gains an exclusive Remote capture mode. Native
transitions pass through the repeat normalizer and capture router;
forwarded keys leave as remote.input events, Remote's own shortcuts are
dispatched locally, and F11 ends capture on the X thread. Reader policy,
overflow or inconsistent input also end it. Ending releases forwarded
keys first and keeps the grab until held keys are released. Local key
echo is suppressed during capture. The app attaches the owner to
sessions installed with keyboard-capture.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 16:06:38 -05:00
Chase CichorzandClaude Opus 5.5 27017bef11 Attach Remote keyboard injection to approved controlled sessions
Local launch and managed startup now start the incoming-key owner for
sessions installed with keyboard-inject, using one input-helper
Supervisor retained for the reader lifetime. Delivery rechecks lock,
XTerm handoff and internal reader UI in addition to lease, grant and
deadline. build-cthulhu.sh and both Arch packages build and install
cthulhu-input-helper; a missing helper leaves keyboard input
unavailable without affecting startup.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 16:06:38 -05:00
Chase Cichorz 6b3aa80138 Normalize captured autorepeat for quarantined Remote 2026-11-06 14:30:43 -05:00
ak47 ee1c32f049 Verify quarantined Remote mailbox owner crash recovery 2026-11-05 23:21:22 -05:00
ak47 06530f0120 Join quarantined Remote key mailbox to supervised input cleanup 2026-11-05 23:12:47 -05:00
ak47 21d8904ee3 Add independent Remote input helper with EOF and watchdog cleanup 2026-11-05 22:35:40 -05:00
ak47 cd9ae05bbe Add quarantined Xorg destination-key ownership and cleanup 2026-11-05 21:56:14 -05:00
ak47 ee3d91af23 Share native current-line speech with Remote 2026-11-05 17:55:11 -05:00
Storm Dragon ac67236eca Find works in browsers. 2026-11-05 12:34:36 -05:00
ak47 453206b85b Web fixes. 2026-11-04 21:22:51 -05:00
Storm Dragon f23e89ed93 Filter out stale accessibility events. 2026-11-04 14:23:54 -05:00
Storm Dragon 4cf3335017 More work on tentacles. 2026-11-03 23:48:31 -05:00
ak47 573d15d7b4 Add Remote session foundations and feasibility checks
Add opt-in Tentacle protocol 1.1, explicit remote grants, lifecycle IPC and expiring core leases in both SDKs. Revoke access before update preparation, including failed updates.

Add transient secret entries, shared Braille cell export and isolated Xorg recovery experiments with focused tests and documented limitations. Production consent, desktop services and live interoperability remain pending.
2026-11-03 22:33:26 -05:00
Storm Dragon a47253d697 Found a few ways in which the Braille problem with browsers could resurface. Fixed now. 2026-11-03 16:48:39 -05:00
Storm Dragon 0a3d946ffa Latest merge from Hunter. Also a couple files I forgot to add yesterday. 2026-11-03 11:41:33 -05:00
Storm Dragon 4da61465b0 Fix document retention and helper retry regressions
Keep failed cursor trials and native recapture anchored to the original document, and restore the requested cached root before LRU eviction. Base braille retry resets on established connection time rather than stalled startup. Poll private AT-SPI daemon ownership without triggering service activation and clean up partial startup failures. Add focused regressions and update browser testing notes.
2026-11-03 11:37:36 -05:00
hjozwiak a4d427099e Merge origin/testing into hunter 2026-11-03 10:35:41 -05:00
hjozwiak 6c10ed0517 Add native coverage for ticking browser pages
Incremental-game style fixture whose AT-SPI leaves recreate every 250 ms, native navigation test, private-session AT-SPI daemon launch in the harness (no systemd, no host session required), and testing notes.
2026-11-03 10:35:00 -05:00
Storm Dragon 89686fa029 Refresh browser tests and recover Firefox tab announcements
Bring the fragmented-line browser fixture into agreement with current browse
navigation. Rich editors are read through their text descendants, so Down from
the preceding heading must read "Review the code." directly. Remove the stale
empty editor-control stop while retaining forward and reverse line navigation,
character and word movement, Read All, and inline Braille-routing assertions.

Fix Firefox's missing announcement when creating a second tab. Firefox can emit
selection events before the new tab enters its accessible child list, causing
the native selected-child lookup to return nothing. Use the subsequent
child-added event only when its target is a live, freshly selected browser-chrome
tab with the emitting tab list as its direct parent. Keep document-authored tabs
and unselected background additions excluded, retain foreground filtering and
tab-identity deduplication, and release native references on the GLib owner.

Normalize child-added origin suffixes such as :system before event dispatch,
preserving the original native type in diagnostics. Rename the shared mutation
normalizer to reflect its expanded scope and update its callers, including the
Pidgin insertion check. Extend the normalization regression to cover child
additions and reject unrelated event names. Firefox keeps its normal animations
and all existing tab-announcement and address-editing assertions.

Make private-session teardown tolerate the document portal's asynchronous FUSE
unmount after D-Bus exits. Retry only ENOTCONN and EBUSY cleanup failures for at
most five seconds. Keep unrelated errors and persistent mount failures visible.
Add regressions for transient teardown, preservation of a failing child's exit
status, unrelated cleanup errors, and the cleanup deadline. Runtime directories
and accessibility buses remain private, with no init-system dependency.

Update browser verification notes and the parity ledger with the fixes, evidence,
regression risks, and concrete live acceptance procedures.

Validation:
- All 33 Chromium browser proofs passed in the final combined run.
- Firefox baseline and tab checks passed repeatedly with normal animations.
- All eight private-session isolation and cleanup regressions passed.
- AT-SPI, app, and review package race suites passed during development; focused
  race regressions passed again after the final event-normalization change.
- Go vet passed for internal/atspi, internal/app, and internal/review.
- A separate reader binary built successfully.
- Parity-ledger validation passed for 75 rows; git diff --check passed.
2026-11-03 02:38:59 -05:00
Storm Dragon 60f7f7a2e9 Code review and fixes. 2026-11-02 23:37:45 -05:00
hjozwiak f2a35a9305 Sync with testing. 2026-11-02 23:15:59 -05:00
Storm Dragon 7918fc02c4 Found more weird breakage on Slint. Fixed now. 2026-11-02 17:28:31 +00:00
hjozwiak 3026bc55c2 Bring in goodies from testing.
# Conflicts:
#	docs/testing/wine-proton.md
2026-11-02 11:30:32 -05:00
hjozwiak 75f34ea767 Add global Wine preferences tab
Phase 3 of the Wine/Proton stage (decisions 6, 9, 13, 19 in docs/testing/wine-proton.md): a global-only Wine tab modeled on the Pronunciation page, with the controller-only checkbox and a typed editable program list. Wine values flow through the preferences protocol so a global Apply reaches the live Wine settings from Phase 2 with no reader restart. Entries are validated as edited and named in-tab, blocking Apply until fixed; case-insensitive duplicates collapse. Per-application preferences expose no Wine editing and an app-scoped Apply cannot change the governing list.
2026-11-02 02:49:33 -05:00
ak47 92d6ad3cc4 Code review and cleanup. 2026-11-01 22:01:32 -05:00
Storm Dragon bbe931335f Better handling of some qt and gtk applications. Used Audacious for testing. 2026-11-01 21:37:01 -05:00
Storm Dragon 300f4a7504 More work on cthulhu recognizing focused items that should be read. 2026-11-01 18:31:58 -05:00
lilmike 9374b5a2e5 Messages read as you tab through discord again. 2026-11-01 14:52:44 -08:00
Storm Dragon 6ed0e36960 More problems deiscovered from the problem child. :) I think these fixes should improve reliability across the board for reading focused windows though. Needs testing. 2026-11-01 16:22:15 -05:00
Storm Dragon 1c12bc6636 The initial Slint problem was larger than thought. Hopefully a more universal fix. 2026-11-01 15:48:33 -05:00
Kendell Clark 7591f65b58 Added tentacle updater. 2026-11-01 12:21:55 -05:00
Storm Dragon f2cc47c8a0 Merged changes from hunter. Attempt to fix cthulhu announcing modifiers when suspended for xterm. 2026-10-31 16:07:29 -04:00
hjozwiak 7e7a83d5c5 Merge goodies from master. 2026-10-31 15:28:10 -04:00
hjozwiak 1780afccba Add the announcement of switched workspaces from Niri.
I haven't tested this with Braille support; I don't remember what I did with the cable.
2026-10-31 15:27:40 -04:00
Storm Dragon f321a9b7ec Release ready for tag. 2026-10-31 00:32:44 -04:00
Storm Dragon 01f50c17e8 Fenrir's emoji ported to cthulhu. 2026-10-29 19:20:29 -04:00
Storm Dragon 3e2429b8a5 Add autofocus mode. 2026-10-28 22:06:04 -04:00
Storm Dragon b232c1eebb Fix for repeating in some instances, e.g. pidgin. 2026-10-27 19:40:17 -04:00
Storm Dragon 4d29f2bb23 Merge branch 'master' into testing 2026-10-27 12:31:15 -04:00