fix: Properly localized dates in native player

This commit is contained in:
PartyDonut 2025-10-18 21:15:35 +02:00
parent 829bc3e34c
commit d2b8a855f3
7 changed files with 90 additions and 15 deletions

View file

@ -1356,5 +1356,15 @@
"type": "int"
}
}
},
"formattedTime": "{time}",
"@formattedTime": {
"description": "Formatted time",
"placeholders": {
"time": {
"type": "DateTime",
"format": "jm"
}
}
}
}

View file

@ -59,6 +59,8 @@ abstract class TranslationsPigeon {
String nextUpInSeconds(int seconds);
String hoursAndMinutes(String time);
String endsAt(String time);
static void setUp(TranslationsPigeon? api, {BinaryMessenger? binaryMessenger, String messageChannelSuffix = '',}) {
@ -233,6 +235,31 @@ abstract class TranslationsPigeon {
});
}
}
{
final BasicMessageChannel<Object?> pigeonVar_channel = BasicMessageChannel<Object?>(
'dev.flutter.pigeon.nl_jknaapen_fladder.settings.TranslationsPigeon.hoursAndMinutes$messageChannelSuffix', pigeonChannelCodec,
binaryMessenger: binaryMessenger);
if (api == null) {
pigeonVar_channel.setMessageHandler(null);
} else {
pigeonVar_channel.setMessageHandler((Object? message) async {
assert(message != null,
'Argument for dev.flutter.pigeon.nl_jknaapen_fladder.settings.TranslationsPigeon.hoursAndMinutes was null.');
final List<Object?> args = (message as List<Object?>?)!;
final String? arg_time = (args[0] as String?);
assert(arg_time != null,
'Argument for dev.flutter.pigeon.nl_jknaapen_fladder.settings.TranslationsPigeon.hoursAndMinutes was null, expected non-null String.');
try {
final String output = api.hoursAndMinutes(arg_time!);
return wrapResponse(result: output);
} on PlatformException catch (e) {
return wrapResponse(error: e);
} catch (e) {
return wrapResponse(error: PlatformException(code: 'error', message: e.toString()));
}
});
}
}
{
final BasicMessageChannel<Object?> pigeonVar_channel = BasicMessageChannel<Object?>(
'dev.flutter.pigeon.nl_jknaapen_fladder.settings.TranslationsPigeon.endsAt$messageChannelSuffix', pigeonChannelCodec,

View file

@ -78,7 +78,7 @@ class _TranslationsMessgener extends messenger.TranslationsPigeon {
String close() => context.localized.close;
@override
String endsAt(String time) => context.localized.endsAt(DateTime.parse(time));
String endsAt(String time) => context.localized.endsAt(DateTime.parse(time).toLocal());
@override
String next() => context.localized.nextVideo;
@ -97,4 +97,7 @@ class _TranslationsMessgener extends messenger.TranslationsPigeon {
@override
String subtitles() => context.localized.subtitles;
@override
String hoursAndMinutes(String time) => context.localized.formattedTime(DateTime.parse(time).toLocal());
}