From 92e520632661715d7dc79c9cc2c4aa0ae12067ce Mon Sep 17 00:00:00 2001 From: Henry-Hiles Date: Sun, 29 Mar 2026 11:39:43 -0400 Subject: [PATCH] Workaround for c10y 779 --- lib/controllers/client_controller.dart | 10 +++++++--- lib/models/requests/get_room_state_request.dart | 1 + 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/controllers/client_controller.dart b/lib/controllers/client_controller.dart index 0f6fc60..56f606f 100644 --- a/lib/controllers/client_controller.dart +++ b/lib/controllers/client_controller.dart @@ -183,9 +183,13 @@ class ClientController extends AsyncNotifier { // })); Future> getRoomState(GetRoomStateRequest request) async { - final response = - (await _sendCommand("get_room_state", request.toJson())) as List? ?? []; - return response.map((event) => Event.fromJson(event)).toIList(); + Future getState(GetRoomStateRequest request) => + _sendCommand("get_room_state", request.toJson()) as Future; + final response = await getState(request); + + return (response ?? await getState(request.copyWith(refetch: true)) ?? []) + .map((event) => Event.fromJson(event)) + .toIList(); } Future?> getRelatedEvents( diff --git a/lib/models/requests/get_room_state_request.dart b/lib/models/requests/get_room_state_request.dart index de66b72..8ee05f0 100644 --- a/lib/models/requests/get_room_state_request.dart +++ b/lib/models/requests/get_room_state_request.dart @@ -6,6 +6,7 @@ part "get_room_state_request.g.dart"; abstract class GetRoomStateRequest with _$GetRoomStateRequest { const factory GetRoomStateRequest({ required String roomId, + @Default(false) bool refetch, @Default(false) bool fetchMembers, @Default(false) bool includeMembers, }) = _GetRoomStateRequest;