feat(host-control-mode): localize the in-page dialog & badge

The host-control desync dialog and the "watching on your own" badge were
hardcoded English — content.js has no i18n loader. Background does, so it now
resolves the strings (GET_HCM_STRINGS: loadLocale + getMessage) and content
fetches them on init with English fallbacks, re-rendering the badge if it was
already shown. The dialog body is now generic (dropped the paused/jumped verb)
to keep translation clean across languages.

Adds 6 keys (HCM_DIALOG_TITLE/BODY/STAY/SOLO, HCM_BADGE_SOLO/RESYNC) translated
across all 15 popup locales.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
KoalaDev
2026-06-26 16:26:31 +02:00
parent 95ff460856
commit bb030a9737
18 changed files with 131 additions and 8 deletions
+3 -2
View File
@@ -49,8 +49,9 @@ Deferred by decision (see §8): host grace period on disconnect (EC-10).
- ~~**Control-mode race at join:**~~ FIXED — `hcmHandleBlocked` now treats `HOST_BLOCKED`
as authoritative (adopts host-only/guest role) instead of re-checking local mode,
since background only sends it to gated guests.
- **Dialog/badge text is English-only** — content.js has no i18n loader; the in-page
strings aren't localized yet. Follow-up.
- ~~**Dialog/badge text is English-only**~~ FIXED — background resolves the strings
via GET_HCM_STRINGS (it has the i18n loader); content fetches them on init with
English fallback. 6 new keys (HCM_DIALOG_*/HCM_BADGE_*) across all 15 locales.
---