Skip to content

ADFA-4518 fix(dashboard UX): non-Latin text rendering + nav accessibi… - #116

Merged
luisguzman-adfa merged 1 commit into
mainfrom
feat/ADFA-4518-dashboard-ux-1
Jul 2, 2026
Merged

ADFA-4518 fix(dashboard UX): non-Latin text rendering + nav accessibi…#116
luisguzman-adfa merged 1 commit into
mainfrom
feat/ADFA-4518-dashboard-ux-1

Conversation

@luisguzman-adfa

Copy link
Copy Markdown
Collaborator

…lity (first pass)

First, most-necessary UX fixes on the current dashboard interface (rest of the polish stays in ADFA-4518):

#1 Non-Latin text was broken. The global 'text-transform: uppercase' + 'letter-spacing'
on .btn/.nav-text/.sidebar-title detaches Devanagari vowel signs, so Hindi nav/buttons
rendered wrong once the locale shipped. Now:

  • dashboard.js sets to the active locale (was always 'en'), so :lang() styling and assistive tech match.
  • CSS neutralizes text-transform/letter-spacing for :lang(hi) (Latin/Cyrillic keep the existing styling).

#2 Nav accessibility. The sidebar items are with onclick and no href, and on mobile
only the emoji icon shows (text hidden). Added role=button, tabindex=0 and a localized
aria-label (data-i18n-aria-label, reusing nav_* keys) to each nav item + the theme
toggle, plus a keydown delegate so Enter/Space activate role=button controls.

No TS or locale-key changes, so the dashboard typecheck + lang-parity tests are unaffected.

…lity (first pass)

First, most-necessary UX fixes on the current dashboard interface (rest of the polish
stays in ADFA-4518):

#1 Non-Latin text was broken. The global 'text-transform: uppercase' + 'letter-spacing'
   on .btn/.nav-text/.sidebar-title detaches Devanagari vowel signs, so Hindi nav/buttons
   rendered wrong once the locale shipped. Now:
   - dashboard.js sets <html lang> to the active locale (was always 'en'), so :lang()
     styling and assistive tech match.
   - CSS neutralizes text-transform/letter-spacing for :lang(hi) (Latin/Cyrillic keep the
     existing styling).

#2 Nav accessibility. The sidebar items are <a> with onclick and no href, and on mobile
   only the emoji icon shows (text hidden). Added role=button, tabindex=0 and a localized
   aria-label (data-i18n-aria-label, reusing nav_* keys) to each nav item + the theme
   toggle, plus a keydown delegate so Enter/Space activate role=button controls.

No TS or locale-key changes, so the dashboard typecheck + lang-parity tests are unaffected.
@luisguzman-adfa
luisguzman-adfa marked this pull request as ready for review July 2, 2026 07:10
@luisguzman-adfa
luisguzman-adfa merged commit 31e1773 into main Jul 2, 2026
2 checks passed
@luisguzman-adfa
luisguzman-adfa deleted the feat/ADFA-4518-dashboard-ux-1 branch July 2, 2026 07:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant