From 0d2175d67782a130e796886a200cdda9512ead0a Mon Sep 17 00:00:00 2001 From: ggurdin <46800240+ggurdin@users.noreply.github.com> Date: Thu, 20 Nov 2025 09:49:46 -0500 Subject: [PATCH] fix: if user is in activity room, use room info to populate activity roles (#4702) --- .../activity_session_start_page.dart | 8 ++++++++ .../activity_sessions_start_view.dart | 7 +------ 2 files changed, 9 insertions(+), 6 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 c9c3ecb54..afd13bc35 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 @@ -8,6 +8,7 @@ import 'package:matrix/matrix.dart'; import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_model.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_role_model.dart'; import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; import 'package:fluffychat/pangea/activity_sessions/activity_session_start/activity_sessions_start_view.dart'; import 'package:fluffychat/pangea/activity_sessions/activity_session_start/bot_join_error_dialog.dart'; @@ -147,6 +148,13 @@ class ActivitySessionStartController extends State SessionState.selectedRole, ].contains(state); + Map get assignedRoles { + if (activityRoom != null && activityRoom!.membership == Membership.join) { + return activityRoom!.assignedRoles ?? {}; + } + return roomSummaries?[widget.roomId]?.activityRoles.roles ?? {}; + } + bool canSelectParticipant(String id) { if (state == SessionState.confirmedRole || state == SessionState.notStarted) { diff --git a/lib/pangea/activity_sessions/activity_session_start/activity_sessions_start_view.dart b/lib/pangea/activity_sessions/activity_session_start/activity_sessions_start_view.dart index 4e84a0655..a8d8eeaa3 100644 --- a/lib/pangea/activity_sessions/activity_session_start/activity_sessions_start_view.dart +++ b/lib/pangea/activity_sessions/activity_session_start/activity_sessions_start_view.dart @@ -151,12 +151,7 @@ class ActivitySessionStartView extends StatelessWidget { controller.isParticipantSelected, canSelectParticipant: controller.canSelectParticipant, - assignedRoles: controller - .roomSummaries?[ - controller.widget.roomId] - ?.activityRoles - .roles ?? - {}, + assignedRoles: controller.assignedRoles, ), ], ),