fix(profiles): name the Plex user and account in one translated chip

A Plex account connection labels itself with the account owner's name.
Under a profile tile that reads as being signed in as the owner: the
Plex Home tile showed the owner beneath the Home user's own name, and a
local profile that borrowed a Home user out of someone else's account
showed only the lender.

Both halves of the relation now go through a single translated string,
so a locale orders them itself instead of inheriting the English
"user via account" — az, hu, ja, kk, ko, tr, uz, zh and zh-Hant put the
account first. When the Home cache cannot resolve the connection's uuid
the chip names the account alone rather than falling back to a bare
name. ProfilesView carries the Home user cache that resolution needs,
and chip labels ellipsize now that an account label can be an email.
This commit is contained in:
edde746
2026-08-05 13:05:15 +02:00
parent edaff1fbfc
commit 26dbce0277
48 changed files with 437 additions and 139 deletions
+6 -2
View File
@@ -877,6 +877,8 @@ class _Translations$profiles$fr extends Translations$profiles$en {
@override String get noConnectionsHint => 'Aucune connexion — ajoutez-en une pour utiliser ce profil.';
@override String get noConnections => 'Aucune connexion';
@override String get plexHomeAccount => 'Compte Plex Home';
@override String plexAccountChip({required Object account}) => 'Compte Plex : ${account}';
@override String plexAccountUserChip({required Object user, required Object account}) => '${user} via ${account}';
@override String get connectionDefault => 'Par défaut';
@override String connectionAs({required Object displayName}) => 'en tant que ${displayName}';
@override String get makeDefault => 'Définir par défaut';
@@ -2827,6 +2829,8 @@ extension on TranslationsFr {
'profiles.noConnectionsHint' => 'Aucune connexion — ajoutez-en une pour utiliser ce profil.',
'profiles.noConnections' => 'Aucune connexion',
'profiles.plexHomeAccount' => 'Compte Plex Home',
'profiles.plexAccountChip' => ({required Object account}) => 'Compte Plex : ${account}',
'profiles.plexAccountUserChip' => ({required Object user, required Object account}) => '${user} via ${account}',
'profiles.connectionDefault' => 'Par défaut',
'profiles.connectionAs' => ({required Object displayName}) => 'en tant que ${displayName}',
'profiles.makeDefault' => 'Définir par défaut',
@@ -3213,10 +3217,10 @@ extension on TranslationsFr {
'watchTogether.failedToJoin' => 'Échec de la connexion à la session',
'watchTogether.sessionCodeCopied' => 'Code de session copié dans le presse-papiers',
'watchTogether.relayUnreachable' => 'Serveur relais inaccessible. Un blocage par le fournisseur daccès peut empêcher le fonctionnement de Regarder ensemble.',
'watchTogether.reconnectingToHost' => 'Reconnexion à l\'hôte...',
'watchTogether.currentPlayback' => 'Lecture en cours',
_ => null,
} ?? switch (path) {
'watchTogether.reconnectingToHost' => 'Reconnexion à l\'hôte...',
'watchTogether.currentPlayback' => 'Lecture en cours',
'watchTogether.joinCurrentPlayback' => 'Rejoindre la lecture en cours',
'watchTogether.joinCurrentPlaybackDescription' => 'Reprendre le contenu que lhôte regarde actuellement',
'watchTogether.failedToOpenCurrentPlayback' => 'Impossible d\'ouvrir la lecture en cours',