fix: Strict locale check (#598)

Co-authored-by: PartyDonut <PartyDonut@users.noreply.github.com>
This commit is contained in:
PartyDonut 2025-11-09 10:16:08 +01:00 committed by GitHub
parent 52c12e63b6
commit 188f947ad7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -291,10 +291,17 @@ class _MainState extends ConsumerState<Main> with WindowListener, WidgetsBinding
supportedLocales: AppLocalizations.supportedLocales, supportedLocales: AppLocalizations.supportedLocales,
locale: language, locale: language,
localeResolutionCallback: (locale, supportedLocales) { localeResolutionCallback: (locale, supportedLocales) {
if (locale == null || !supportedLocales.contains(locale)) { const fallback = Locale('en');
return const Locale('en'); if (locale == null) return fallback;
if (supportedLocales.contains(locale)) {
return locale;
} }
return locale; final matchByLanguage = supportedLocales.firstWhere(
(l) => l.languageCode == locale.languageCode,
orElse: () => fallback,
);
return matchByLanguage;
}, },
builder: (context, child) => MediaQueryScaler( builder: (context, child) => MediaQueryScaler(
child: LocalizationContextWrapper( child: LocalizationContextWrapper(