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}', ), ), ),