diff --git a/lib/pages/chat/chat.dart b/lib/pages/chat/chat.dart index 248188d25..f7e7b98a8 100644 --- a/lib/pages/chat/chat.dart +++ b/lib/pages/chat/chat.dart @@ -330,6 +330,7 @@ class ChatController extends State WidgetsBinding.instance.addObserver(this); // #Pangea if (!mounted) return; + if (room.isSpace) context.go("/rooms"); Future.delayed(const Duration(seconds: 1), () async { if (!mounted) return; debugPrint( diff --git a/lib/pages/chat_list/chat_list.dart b/lib/pages/chat_list/chat_list.dart index 13b0d8cf2..01ed673ab 100644 --- a/lib/pages/chat_list/chat_list.dart +++ b/lib/pages/chat_list/chat_list.dart @@ -480,7 +480,7 @@ class ChatListController extends State ? setActiveSpace(event["activeSpaceId"]) : clearActiveSpace(); if (event["activeSpaceId"] != null) { - context.go("/rooms/${event["activeSpaceId"]}/details"); + context.push("/rooms/${event["activeSpaceId"]}/details"); } } }); diff --git a/lib/pages/invitation_selection/invitation_selection_view.dart b/lib/pages/invitation_selection/invitation_selection_view.dart index 4725105cd..d076ceb0f 100644 --- a/lib/pages/invitation_selection/invitation_selection_view.dart +++ b/lib/pages/invitation_selection/invitation_selection_view.dart @@ -1,7 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/l10n.dart'; -import 'package:go_router/go_router.dart'; import 'package:matrix/matrix.dart'; import 'package:fluffychat/pages/invitation_selection/invitation_selection.dart'; @@ -37,14 +36,7 @@ class InvitationSelectionView extends StatelessWidget { final theme = Theme.of(context); return Scaffold( appBar: AppBar( - // #Pangea - // leading: const Center(child: BackButton()), - leading: Center( - child: BackButton( - onPressed: () => context.go("/rooms/${controller.roomId}/details"), - ), - ), -// Pangea# + leading: const Center(child: BackButton()), titleSpacing: 0, title: Text(L10n.of(context).inviteContact), ), diff --git a/lib/pangea/chat_settings/pages/pangea_chat_details.dart b/lib/pangea/chat_settings/pages/pangea_chat_details.dart index ab9cad82d..c3c87d63e 100644 --- a/lib/pangea/chat_settings/pages/pangea_chat_details.dart +++ b/lib/pangea/chat_settings/pages/pangea_chat_details.dart @@ -287,7 +287,8 @@ class PangeaChatDetailsView extends StatelessWidget { Icons.person_add_outlined, ), ), - onTap: () => context.go('/rooms/${room.id}/invite'), + onTap: () => + context.push('/rooms/${room.id}/invite'), ), if (room.canInvite && !room.isDirectChat) Divider(color: theme.dividerColor, height: 1), diff --git a/lib/pangea/spaces/controllers/space_controller.dart b/lib/pangea/spaces/controllers/space_controller.dart index a8cee8101..ded4079e6 100644 --- a/lib/pangea/spaces/controllers/space_controller.dart +++ b/lib/pangea/spaces/controllers/space_controller.dart @@ -131,7 +131,7 @@ class ClassController extends BaseController { ); if (alreadyJoined.isNotEmpty || inFoundClass) { - context.go("/rooms/${alreadyJoined.first}/details"); + context.push("/rooms/${alreadyJoined.first}/details"); throw L10n.of(context).alreadyInClass; } @@ -179,7 +179,7 @@ class ClassController extends BaseController { await room.client.waitForRoomInSync(room.id, join: true); } - context.go("/rooms/${room.id}/details"); + context.push("/rooms/${room.id}/details"); } catch (e, s) { ErrorHandler.logError( e: e,