From aca6f62eac074b39cafdf6e6a4a5a65fa0b5c768 Mon Sep 17 00:00:00 2001 From: ggurdin Date: Mon, 6 May 2024 09:37:11 -0400 Subject: [PATCH] pass l10n to getSubtitle directly rather than passing context to prevent null check error --- lib/pages/chat_list/chat_list_item.dart | 2 +- lib/pangea/models/pangea_message_event.dart | 2 -- lib/pangea/utils/get_chat_list_item_subtitle.dart | 15 +++++++-------- .../widgets/chat/message_translation_card.dart | 1 - lib/pangea/widgets/igc/pangea_rich_text.dart | 1 - 5 files changed, 8 insertions(+), 13 deletions(-) diff --git a/lib/pages/chat_list/chat_list_item.dart b/lib/pages/chat_list/chat_list_item.dart index 680fe8dcf..447b5f6c3 100644 --- a/lib/pages/chat_list/chat_list_item.dart +++ b/lib/pages/chat_list/chat_list_item.dart @@ -205,7 +205,7 @@ class ChatListItem extends StatelessWidget { // Future.value(L10n.of(context)!.emptyChat), future: room.lastEvent != null ? GetChatListItemSubtitle().getSubtitle( - context, + L10n.of(context)!, room.lastEvent, MatrixState.pangeaController, ) diff --git a/lib/pangea/models/pangea_message_event.dart b/lib/pangea/models/pangea_message_event.dart index 61bcceb4e..8dab042ab 100644 --- a/lib/pangea/models/pangea_message_event.dart +++ b/lib/pangea/models/pangea_message_event.dart @@ -95,7 +95,6 @@ class PangeaMessageEvent { BuildContext context, ) async { final String text = (await representationByLanguageGlobal( - context: context, langCode: langCode, )) ?.text ?? @@ -399,7 +398,6 @@ class PangeaMessageEvent { } Future representationByLanguageGlobal({ - required BuildContext context, required String langCode, }) async { // try { diff --git a/lib/pangea/utils/get_chat_list_item_subtitle.dart b/lib/pangea/utils/get_chat_list_item_subtitle.dart index e5b1388a9..f9616cc7c 100644 --- a/lib/pangea/utils/get_chat_list_item_subtitle.dart +++ b/lib/pangea/utils/get_chat_list_item_subtitle.dart @@ -4,7 +4,6 @@ import 'package:fluffychat/pangea/controllers/pangea_controller.dart'; import 'package:fluffychat/pangea/models/class_model.dart'; import 'package:fluffychat/pangea/models/pangea_message_event.dart'; import 'package:fluffychat/pangea/utils/error_handler.dart'; -import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/l10n.dart'; import 'package:matrix/matrix.dart'; @@ -12,16 +11,17 @@ import '../../utils/matrix_sdk_extensions/matrix_locals.dart'; class GetChatListItemSubtitle { Future getSubtitle( - BuildContext context, + L10n l10n, Event? event, PangeaController pangeaController, ) async { - if (event == null) return L10n.of(context)!.emptyChat; + if (event == null) return l10n.emptyChat; try { String? eventContextId = event.eventId; if (!event.eventId.isValidMatrixId || event.eventId.sigil != '\$') { eventContextId = null; } + final Timeline timeline = await event.room.getTimeline(eventContextId: eventContextId); @@ -47,7 +47,7 @@ class GetChatListItemSubtitle { !pangeaController.permissionsController .isToolEnabled(ToolSetting.immersionMode, event.room)) { return event.calcLocalizedBody( - MatrixLocals(L10n.of(context)!), + MatrixLocals(l10n), hideReply: true, hideEdit: true, plaintextBody: true, @@ -71,14 +71,13 @@ class GetChatListItemSubtitle { final String? text = (await pangeaMessageEvent.representationByLanguageGlobal( - context: context, langCode: l2Code, )) ?.text; - final i18n = MatrixLocals(L10n.of(context)!); + final i18n = MatrixLocals(l10n); - if (text == null) return L10n.of(context)!.emptyChat; + if (text == null) return l10n.emptyChat; if (!event.room.isDirectChat || event.room.directChatMatrixID != event.room.lastEvent?.senderId) { @@ -95,7 +94,7 @@ class GetChatListItemSubtitle { } catch (e, s) { // debugger(when: kDebugMode); ErrorHandler.logError(e: e, s: s); - return event?.body ?? L10n.of(context)!.emptyChat; + return event?.body ?? l10n.emptyChat; } } } diff --git a/lib/pangea/widgets/chat/message_translation_card.dart b/lib/pangea/widgets/chat/message_translation_card.dart index 5014d83f3..ae1a26c4c 100644 --- a/lib/pangea/widgets/chat/message_translation_card.dart +++ b/lib/pangea/widgets/chat/message_translation_card.dart @@ -51,7 +51,6 @@ class MessageTranslationCardState extends State { if (repEvent == null && mounted) { repEvent = await widget.messageEvent.representationByLanguageGlobal( - context: context, langCode: langCode, ); } diff --git a/lib/pangea/widgets/igc/pangea_rich_text.dart b/lib/pangea/widgets/igc/pangea_rich_text.dart index fb0fcef1c..38e79706e 100644 --- a/lib/pangea/widgets/igc/pangea_rich_text.dart +++ b/lib/pangea/widgets/igc/pangea_rich_text.dart @@ -83,7 +83,6 @@ class PangeaRichTextState extends State { widget.pangeaMessageEvent .representationByLanguageGlobal( - context: context, langCode: widget.pangeaMessageEvent.messageDisplayLangCode, ) .onError((error, stackTrace) => ErrorHandler.logError())