fix: fix missing update in playback init & translate french comments

This commit is contained in:
Doezer
2025-11-26 22:39:25 +01:00
parent c21c5396cd
commit e69644a98e
3 changed files with 21 additions and 15 deletions
+12 -11
View File
@@ -480,18 +480,19 @@ class PlexClient {
queryParams['subtitleStreamID'] = subtitleStreamID;
}
if (allParts) {
// If no streams to select, return early
if (queryParams.isEmpty) {
return true;
// If no streams to select, return early
if (queryParams.isEmpty) {
return true;
}
// Use PUT request on /library/parts/{partId}
final response = await _dio.put(
'/library/parts/$partId',
queryParameters: queryParams,
);
return response.statusCode == 200;
}
// Use PUT request on /library/parts/{partId}
final response = await _dio.put(
'/library/parts/$partId',
queryParameters: queryParams,
);
return response.statusCode == 200;
} catch (e) {
appLogger.e('Failed to select streams', error: e);
return false;
+3 -3
View File
@@ -31,7 +31,7 @@ import '../i18n/strings.g.dart';
Map<String, dynamic>? _isoLangTable;
/// Charger la table en mémoire au démarrage du widget (dans initState par exemple)
/// Load the table into memory at widget startup (in initState for example)
Future<void> loadIsoTable() async {
final data = await rootBundle.loadString('lib/data/iso_6369_codes.json');
_isoLangTable = json.decode(data) as Map<String, dynamic>;
@@ -226,10 +226,10 @@ class VideoPlayerScreenState extends State<VideoPlayerScreen>
}
}
/// Convertit un code à 2 lettres "fr", "nl", "ca" en code Plex à 3 lettres, ou renvoie null si inconnu
/// Converts a 2-letter code like "fr", "nl", "ca" to a Plex 3-letter code, or returns null if unknown
String? _iso6391ToPlex6392(String? code) {
if (code == null || code.isEmpty || _isoLangTable == null) return null;
// Prend la base "fr" de "fr-FR"
// Takes the base "fr" from "fr-FR"
final lang = code.split('-').first.toLowerCase();
final langEntry = _isoLangTable![lang] as Map<String, dynamic>?;
return langEntry?['639-2'] as String?;
@@ -96,6 +96,7 @@ class PlaybackInitializationService {
// Return result with available versions for UI updates
return PlaybackInitializationResult(
availableVersions: playbackData.availableVersions,
mediaInfo: mediaInfo,
);
} catch (e) {
if (e is PlaybackException) {
@@ -199,8 +200,12 @@ class PlaybackInitializationService {
/// Result of playback initialization
class PlaybackInitializationResult {
final List<dynamic> availableVersions;
final PlexMediaInfo? mediaInfo;
PlaybackInitializationResult({required this.availableVersions});
PlaybackInitializationResult({
required this.availableVersions,
this.mediaInfo,
});
}
/// Exception thrown when playback initialization fails