diff --git a/android/build/reports/problems/problems-report.html b/android/build/reports/problems/problems-report.html
index e923c4a..2e4e670 100644
--- a/android/build/reports/problems/problems-report.html
+++ b/android/build/reports/problems/problems-report.html
@@ -650,7 +650,7 @@ code + .copy-button {
diff --git a/lib/config/routes.dart b/lib/config/routes.dart
index 4ba6ab2..ed84b31 100644
--- a/lib/config/routes.dart
+++ b/lib/config/routes.dart
@@ -151,17 +151,23 @@ abstract class AppRoutes {
redirect: loggedOutRedirect,
routes: [
GoRoute(
- path: ':threadroot',
- pageBuilder: (context, state) => defaultPageBuilder(
- context,
- state,
- ThreadPage(
- roomId: state.pathParameters['roomid']!,
- threadRootEventId:
- state.pathParameters['threadroot']!,
- eventId: state.uri.queryParameters['event'],
+ path: 'threads',
+ redirect: loggedOutRedirect,
+ routes: [
+ GoRoute(
+ path: ':threadroot',
+ pageBuilder: (context, state) => defaultPageBuilder(
+ context,
+ state,
+ ThreadPage(
+ roomId: state.pathParameters['roomid']!,
+ threadRootEventId:
+ state.pathParameters['threadroot']!,
+ eventId: state.uri.queryParameters['event'],
+ ),
+ ),
),
- ),
+ ],
),
],
),
@@ -369,16 +375,23 @@ abstract class AppRoutes {
redirect: loggedOutRedirect,
routes: [
GoRoute(
- path: ':threadroot',
- pageBuilder: (context, state) => defaultPageBuilder(
- context,
- state,
- ThreadPage(
- roomId: state.pathParameters['roomid']!,
- threadRootEventId: state.pathParameters['threadroot']!,
- eventId: state.uri.queryParameters['event'],
+ path: 'threads',
+ redirect: loggedOutRedirect,
+ routes: [
+ GoRoute(
+ path: ':threadroot',
+ pageBuilder: (context, state) => defaultPageBuilder(
+ context,
+ state,
+ ThreadPage(
+ roomId: state.pathParameters['roomid']!,
+ threadRootEventId:
+ state.pathParameters['threadroot']!,
+ eventId: state.uri.queryParameters['event'],
+ ),
+ ),
),
- ),
+ ],
),
GoRoute(
path: 'search',
diff --git a/lib/pages/chat/chat.dart b/lib/pages/chat/chat.dart
index 9934dcd..96d7fc3 100644
--- a/lib/pages/chat/chat.dart
+++ b/lib/pages/chat/chat.dart
@@ -957,10 +957,12 @@ class ChatController extends State
client: room.client,
currentUserParticipated: false,
count: 0,
+ highlightCount: 0,
+ notificationCount: 0,
);
}
- context.go('/rooms/$roomId/${event.eventId}');
+ context.go('/rooms/$roomId/threads/${event.eventId}');
selectedEvents.clear();
}
diff --git a/lib/pages/chat/events/message.dart b/lib/pages/chat/events/message.dart
index faefe7d..06d2c17 100644
--- a/lib/pages/chat/events/message.dart
+++ b/lib/pages/chat/events/message.dart
@@ -703,7 +703,7 @@ class Message extends StatelessWidget {
mainAxisSize: MainAxisSize.min,
children: [
Icon(
- Icons.chat_bubble_outline,
+ (thread?.hasNewMessages ?? false) ? Icons.mark_chat_unread_outlined : Icons.chat_bubble_outline,
color: Colors.grey[200],
size: 20,
),
@@ -738,7 +738,7 @@ class Message extends StatelessWidget {
],
),
onTap: () => context.go(
- '/rooms/${event.roomId}/${event.eventId}',
+ '/rooms/${event.roomId}/threads/${event.eventId}',
),
),
),