diff --git a/lib/components/html_message.dart b/lib/components/html_message.dart
index 9139cf0b..3e3864a0 100644
--- a/lib/components/html_message.dart
+++ b/lib/components/html_message.dart
@@ -30,7 +30,10 @@ class HtmlMessage extends StatelessWidget {
// We do *not* do this in an AST and just with simple regex here, as riot-web tends to create
// miss-matching tags, and this way we actually correctly identify what we want to strip and, well,
// strip it.
- final renderHtml = html.replaceAll(RegExp('.*<\/mx-reply>'), '');
+ final renderHtml = html.replaceAll(
+ RegExp('.*<\/mx-reply>',
+ caseSensitive: false, multiLine: false, dotAll: true),
+ '');
// there is no need to pre-validate the html, as we validate it while rendering
diff --git a/lib/components/message_content.dart b/lib/components/message_content.dart
index 0e11e043..08b6e5e8 100644
--- a/lib/components/message_content.dart
+++ b/lib/components/message_content.dart
@@ -95,7 +95,7 @@ class MessageContent extends StatelessWidget {
if (AppConfig.renderHtml &&
!event.redacted &&
event.isRichMessage) {
- String html = event.content['formatted_body'];
+ var html = event.formattedText;
if (event.messageType == MessageTypes.Emote) {
html = '* $html';
}
diff --git a/lib/components/reply_content.dart b/lib/components/reply_content.dart
index 9af5bdb1..36a9c638 100644
--- a/lib/components/reply_content.dart
+++ b/lib/components/reply_content.dart
@@ -34,16 +34,18 @@ class ReplyContent extends StatelessWidget {
if (displayEvent.messageType == MessageTypes.Emote) {
html = '* $html';
}
+ final fontSize = DefaultTextStyle.of(context).style.fontSize;
replyBody = HtmlMessage(
html: html,
defaultTextStyle: TextStyle(
color: lightText
? Colors.white
: Theme.of(context).textTheme.bodyText2.color,
- fontSize: DefaultTextStyle.of(context).style.fontSize,
+ fontSize: fontSize,
),
maxLines: 1,
room: displayEvent.room,
+ emoteSize: fontSize * 1.5,
);
} else {
replyBody = Text(