From 4ee9dd7c49f12d107fd677fe952d64c8dd1158c8 Mon Sep 17 00:00:00 2001 From: ggurdin <46800240+ggurdin@users.noreply.github.com> Date: Thu, 20 Nov 2025 13:00:11 -0500 Subject: [PATCH] chore: allow users in un-started activities to leave (#4714) --- .../activity_session_start_page.dart | 14 +++++++++++--- .../widgets/chat_context_menu_action.dart | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/pangea/activity_sessions/activity_session_start/activity_session_start_page.dart b/lib/pangea/activity_sessions/activity_session_start/activity_session_start_page.dart index afd13bc35..468a166cd 100644 --- a/lib/pangea/activity_sessions/activity_session_start/activity_session_start_page.dart +++ b/lib/pangea/activity_sessions/activity_session_start/activity_session_start_page.dart @@ -116,13 +116,21 @@ class ActivitySessionStartController extends State false; SessionState get state { - if (activityRoom?.hasPickedRole == true) return SessionState.confirmedRole; - if (_selectedRoleId != null) return SessionState.selectedRole; - if (activityRoom == null) { + if (activityRoom?.membership == Membership.join && + activityRoom?.hasPickedRole == true) { + return SessionState.confirmedRole; + } + + if (_selectedRoleId != null) { + return SessionState.selectedRole; + } + + if (activityRoom == null || activityRoom!.membership != Membership.join) { return widget.roomId != null || widget.launch ? SessionState.notSelectedRole : SessionState.notStarted; } + return SessionState.notSelectedRole; } diff --git a/lib/pangea/chat_settings/widgets/chat_context_menu_action.dart b/lib/pangea/chat_settings/widgets/chat_context_menu_action.dart index c00d209c8..281311ff7 100644 --- a/lib/pangea/chat_settings/widgets/chat_context_menu_action.dart +++ b/lib/pangea/chat_settings/widgets/chat_context_menu_action.dart @@ -161,7 +161,7 @@ void chatContextMenuAction( ], ), ), - if (!room.isActivitySession || room.ownRole == null) + if (!room.isActivitySession || !room.isActivityStarted) PopupMenuItem( value: ChatContextAction.leave, child: Row(