From e4629d848967b97db27a7fe95a8978823b01ec09 Mon Sep 17 00:00:00 2001 From: checkedear <271323618+checkedear@users.noreply.github.com> Date: Sun, 19 Apr 2026 15:52:33 +0200 Subject: [PATCH] fix: message content style and links --- .../phone/screens/message/message_screen.dart | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/firka/lib/ui/phone/screens/message/message_screen.dart b/firka/lib/ui/phone/screens/message/message_screen.dart index a81a2f4..a7a0656 100644 --- a/firka/lib/ui/phone/screens/message/message_screen.dart +++ b/firka/lib/ui/phone/screens/message/message_screen.dart @@ -1,12 +1,14 @@ import 'package:firka/core/extensions.dart'; import 'package:firka/app/app_state.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_html/flutter_html.dart'; import 'package:majesticons_flutter/majesticons_flutter.dart'; import 'package:kreta_api/kreta_api.dart'; import 'package:firka/core/firka_bundle.dart'; import 'package:firka/ui/theme/style.dart'; import 'package:firka/ui/shared/firka_icon.dart'; +import 'package:url_launcher/url_launcher_string.dart'; class MessageScreen extends StatelessWidget { final AppInitialization data; @@ -150,12 +152,18 @@ class MessageScreen extends StatelessWidget { child: Padding( padding: const EdgeInsets.all(12), child: SingleChildScrollView( - child: Text( - message.contentText, - style: appStyle.fonts.B_16R.apply( - color: appStyle.colors.textPrimary, - ), - textAlign: TextAlign.start, + child: Html( + data: message.contentHTML, + onLinkTap: (url, map, element) => { + if (url != null) launchUrlString(url), + }, + style: { + "*": Style.fromTextStyle( + appStyle.fonts.B_16R.apply( + color: appStyle.colors.textPrimary, + ), + ), + }, ), ), ),