feat(a11y): skip-link (#75), FAB login-card relocation (#178), reading mode (#83) #185

Merged
jmiller merged 3 commits from feature/fab-a11y-mokoai-parity into dev 2026-07-21 21:30:48 +00:00

3 Commits

Author SHA1 Message Date
jmiller 55b4213625 feat(#83): add Reading mode toggle to accessibility toolbar
Universal: Auto Version Bump / Version Bump (push) Successful in 20s
Generic: Project CI / Lint & Validate (pull_request) Successful in 21s
Generic: Project CI / Tests (pull_request) Failing after 12s
Joomla: Extension CI / Release Readiness Check (pull_request) Has been skipped
Joomla: Extension CI / Lint & Validate (pull_request) Failing after 13s
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Universal: PR Check / Require Docs Update (pull_request) Has been skipped
Universal: PR Check / Wiki Update Reminder (pull_request) Has been skipped
Universal: PR Check / Secret Scan (pull_request) Successful in 7s
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Failing after 10s
Universal: PR Check / Validate PR (pull_request) Successful in 16s
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Successful in 2s
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Joomla: Extension CI / Build RC Pre-Release (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
New a11y toolbar switch that strips sidebars/TOC, narrows content to ~72ch, and
relaxes line-height/letter/word spacing for cognitive-accessibility / dyslexia.
Follows the existing a11y-option pattern: a11y_reading_mode param + data-a11y-reading
body attr + applyReadingMode() (html.a11y-reading-mode class) + localStorage pref +
language strings (en-GB/en-US).
2026-07-21 16:29:34 -05:00
jmiller 8240e8ea93 feat(#178): relocate theme FAB into login card (MokoAI parity)
MokoOnyx already matched MokoAI's vendored widget (inline a11y toggle, floating
panel, tap-outside close, theme-aware toggle colors #1565c0/#42a5f5). The one
refinement MokoAI added beyond the vendored JS was moving the FAB into the login
card as a flush bottom bar. Port it, adapted to Joomla's com_users login view:
relocateFabToLoginCard() moves #mokoThemeFab into the login container on
body.view-login (MutationObserver for late render) + .in-card CSS.
2026-07-21 16:29:31 -05:00
jmiller 0d19b259f9 a11y(#75): add skip-to-content link + fix broken .skip-link:focus selector
Main template had no skip link (only offline.php did) and the focus rule had a
stray space ('.skip-l ink:focus') that disabled the on-focus reveal. Add a
'Skip to content' anchor as the first focusable element targeting #maincontent
and fix the focus style. WCAG 2.4.1 Bypass Blocks.
2026-07-21 16:29:30 -05:00