Fixing toolbar bugs for newly-sent messages

This commit is contained in:
Kelrap 2024-05-24 14:24:31 -04:00
parent ad5275c3e0
commit 37f0772a01
4 changed files with 26 additions and 15 deletions

View file

@ -344,9 +344,11 @@ class MessageContent extends StatelessWidget {
MatrixLocals(L10n.of(context)!),
hideReply: true,
);
toolbarController?.toolbar?.textSelection.setMessageText(
messageText,
);
// #Pangea
// toolbarController?.toolbar?.textSelection.setMessageText(
// messageText,
// );
// Pangea#
return SelectableLinkify(
onSelectionChanged: (selection, cause) {
if (cause == SelectionChangedCause.longPress &&

View file

@ -188,10 +188,13 @@ class MessageToolbarState extends State<MessageToolbar> {
return;
}
setState(() {
currentMode = newMode;
updatingMode = true;
});
if (mounted) {
setState(() {
currentMode = newMode;
updatingMode = true;
});
}
if (!subscribed) {
toolbarContent = MessageUnsubscribedCard(
languageTool: newMode.title(context),
@ -221,9 +224,11 @@ class MessageToolbarState extends State<MessageToolbar> {
break;
}
}
setState(() {
updatingMode = false;
});
if (mounted) {
setState(() {
updatingMode = false;
});
}
}
void showTranslation() {
@ -289,7 +294,7 @@ class MessageToolbarState extends State<MessageToolbar> {
final bool autoplay = MatrixState.pangeaController.pStoreService.read(
PLocalKey.autoPlayMessages,
) ??
true;
false;
if (widget.pangeaMessageEvent.isAudioMessage) {
updateMode(MessageMode.speechToText);

View file

@ -113,7 +113,9 @@ class MessageTranslationCardState extends State<MessageTranslationCard> {
l2Code = MatrixState.pangeaController.languageController.activeL2Code(
roomID: widget.messageEvent.room.id,
);
setState(() {});
if (mounted) {
setState(() {});
}
loadTranslation(() async {
if (widget.selection.selectedText != null) {

View file

@ -61,9 +61,11 @@ class PangeaRichTextState extends State<PangeaRichText> {
widget.toolbarController?.toolbar?.textSelection.setMessageText(
newTextSpan,
);
setState(() {
textSpan = newTextSpan;
});
if (mounted) {
setState(() {
textSpan = newTextSpan;
});
}
}
void setTextSpan() {