From 88665052c8fb6dacb5d6a85dad79d90a4d845261 Mon Sep 17 00:00:00 2001 From: dvbthien Date: Fri, 6 Jun 2025 11:53:04 +0700 Subject: [PATCH] handle context null --- mobile/lib/extensions/translate_extensions.dart | 8 ++++---- mobile/lib/widgets/settings/language_settings.dart | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/mobile/lib/extensions/translate_extensions.dart b/mobile/lib/extensions/translate_extensions.dart index 6ec0c58c07..fc081c32a8 100644 --- a/mobile/lib/extensions/translate_extensions.dart +++ b/mobile/lib/extensions/translate_extensions.dart @@ -3,13 +3,13 @@ import 'package:intl/message_format.dart'; import 'package:flutter/material.dart'; extension StringTranslateExtension on String { - String t(BuildContext context, [Map? args]) { + String t({BuildContext? context, Map? args}) { return _translateHelper(context, this, args); } } extension TextTranslateExtension on Text { - Text t(BuildContext context, [Map? args]) { + Text t({BuildContext? context, Map? args}) { return Text( _translateHelper(context, data ?? '', args), key: key, @@ -30,7 +30,7 @@ extension TextTranslateExtension on Text { } String _translateHelper( - BuildContext context, + BuildContext? context, String key, [ Map? args, ]) { @@ -38,7 +38,7 @@ String _translateHelper( return ''; } try { - final translatedMessage = context.tr(key); + final translatedMessage = context != null ? context.tr(key) : key.tr(); return args != null ? MessageFormat(translatedMessage, locale: Intl.defaultLocale ?? 'en') .format(args) diff --git a/mobile/lib/widgets/settings/language_settings.dart b/mobile/lib/widgets/settings/language_settings.dart index 7e38ba280c..a188844340 100644 --- a/mobile/lib/widgets/settings/language_settings.dart +++ b/mobile/lib/widgets/settings/language_settings.dart @@ -165,7 +165,7 @@ class _LanguageSearchBar extends StatelessWidget { child: SearchField( autofocus: false, contentPadding: const EdgeInsets.all(12), - hintText: 'language_search_hint'.t(context), + hintText: 'language_search_hint'.t(context: context), prefixIcon: const Icon(Icons.search_rounded), suffixIcon: controller.text.isNotEmpty ? IconButton( @@ -199,14 +199,14 @@ class _LanguageNotFound extends StatelessWidget { ), const SizedBox(height: 8), Text( - 'language_no_results_title'.t(context), + 'language_no_results_title'.t(context: context), style: context.textTheme.titleMedium?.copyWith( color: context.colorScheme.onSurface, ), ), const SizedBox(height: 4), Text( - 'language_no_results_subtitle'.t(context), + 'language_no_results_subtitle'.t(context: context), style: context.textTheme.bodyMedium?.copyWith( color: context.colorScheme.onSurface.withValues(alpha: 0.8), ), @@ -254,7 +254,7 @@ class _LanguageApplyButton extends StatelessWidget { fontWeight: FontWeight.w600, fontSize: 16.0, ), - ).t(context), + ).t(context: context), ), ), ),