- Interface in Galician by default regardless of the phone's language, with
English selectable under Axustes -> Idioma; switching rebuilds the screens
- All text in tools/strings.py (key -> English, Galician), generating
res/values/strings.xml (gl) and res/values-en/strings.xml; layouts now use
string resources
- util/Tr.java: translations for the network and Plex layers, which can't
read Android resources (falls back to English in desktop tests)
- net/RefusedException: distinguish "server answered but refused" from
connection failures
- The connection log stays in English for troubleshooting
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Transcoding: send client identities Plex has a profile for (unknown ones get
400 "unable to find a matching profile"), with a fresh session id per variant
- Stream proxy: fetch transcodes once into a temp file and serve every player
request from it, so reconnects no longer restart the transcode (503s, tracks
cut short); original files still pass Range requests through
- Sign-in: remember the pending link code so it survives Minamp being closed
while the code is entered elsewhere; add "I've entered it - check now"
- Diagnostics: in-app connection log (DiagLog) with a streaming test and save
to SD card; tokens are never logged
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>