fix: chat settings not opening

feat: unread marker on thread cards
This commit is contained in:
OfficialDakari 2025-10-26 15:00:42 +05:00
parent ae3c2d84d4
commit 22209b03f2
4 changed files with 38 additions and 23 deletions

File diff suppressed because one or more lines are too long

View File

@ -151,17 +151,23 @@ abstract class AppRoutes {
redirect: loggedOutRedirect, redirect: loggedOutRedirect,
routes: [ routes: [
GoRoute( GoRoute(
path: ':threadroot', path: 'threads',
pageBuilder: (context, state) => defaultPageBuilder( redirect: loggedOutRedirect,
context, routes: [
state, GoRoute(
ThreadPage( path: ':threadroot',
roomId: state.pathParameters['roomid']!, pageBuilder: (context, state) => defaultPageBuilder(
threadRootEventId: context,
state.pathParameters['threadroot']!, state,
eventId: state.uri.queryParameters['event'], ThreadPage(
roomId: state.pathParameters['roomid']!,
threadRootEventId:
state.pathParameters['threadroot']!,
eventId: state.uri.queryParameters['event'],
),
),
), ),
), ],
), ),
], ],
), ),
@ -369,16 +375,23 @@ abstract class AppRoutes {
redirect: loggedOutRedirect, redirect: loggedOutRedirect,
routes: [ routes: [
GoRoute( GoRoute(
path: ':threadroot', path: 'threads',
pageBuilder: (context, state) => defaultPageBuilder( redirect: loggedOutRedirect,
context, routes: [
state, GoRoute(
ThreadPage( path: ':threadroot',
roomId: state.pathParameters['roomid']!, pageBuilder: (context, state) => defaultPageBuilder(
threadRootEventId: state.pathParameters['threadroot']!, context,
eventId: state.uri.queryParameters['event'], state,
ThreadPage(
roomId: state.pathParameters['roomid']!,
threadRootEventId:
state.pathParameters['threadroot']!,
eventId: state.uri.queryParameters['event'],
),
),
), ),
), ],
), ),
GoRoute( GoRoute(
path: 'search', path: 'search',

View File

@ -957,10 +957,12 @@ class ChatController extends State<ChatPageWithRoom>
client: room.client, client: room.client,
currentUserParticipated: false, currentUserParticipated: false,
count: 0, count: 0,
highlightCount: 0,
notificationCount: 0,
); );
} }
context.go('/rooms/$roomId/${event.eventId}'); context.go('/rooms/$roomId/threads/${event.eventId}');
selectedEvents.clear(); selectedEvents.clear();
} }

View File

@ -703,7 +703,7 @@ class Message extends StatelessWidget {
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
children: [ children: [
Icon( Icon(
Icons.chat_bubble_outline, (thread?.hasNewMessages ?? false) ? Icons.mark_chat_unread_outlined : Icons.chat_bubble_outline,
color: Colors.grey[200], color: Colors.grey[200],
size: 20, size: 20,
), ),
@ -738,7 +738,7 @@ class Message extends StatelessWidget {
], ],
), ),
onTap: () => context.go( onTap: () => context.go(
'/rooms/${event.roomId}/${event.eventId}', '/rooms/${event.roomId}/threads/${event.eventId}',
), ),
), ),
), ),