Merge pull request #4076 from element-hq/feature/fga/dispatch_timeline_creations

fix(timeline) : dispatch timeline creations trying to avoid ANRs
This commit is contained in:
ganfra 2024-12-20 11:50:30 +01:00 committed by GitHub
commit e71692a79b

View file

@ -204,8 +204,8 @@ class RustMatrixRoom(
override suspend fun subscribeToSync() = roomSyncSubscriber.subscribe(roomId) override suspend fun subscribeToSync() = roomSyncSubscriber.subscribe(roomId)
override suspend fun timelineFocusedOnEvent(eventId: EventId): Result<Timeline> { override suspend fun timelineFocusedOnEvent(eventId: EventId): Result<Timeline> = withContext(roomDispatcher) {
return runCatching { runCatching {
innerRoom.timelineFocusedOnEvent( innerRoom.timelineFocusedOnEvent(
eventId = eventId.value, eventId = eventId.value,
numContextEvents = 50u, numContextEvents = 50u,
@ -222,8 +222,8 @@ class RustMatrixRoom(
} }
} }
override suspend fun pinnedEventsTimeline(): Result<Timeline> { override suspend fun pinnedEventsTimeline(): Result<Timeline> = withContext(roomDispatcher) {
return runCatching { runCatching {
innerRoom.pinnedEventsTimeline( innerRoom.pinnedEventsTimeline(
internalIdPrefix = "pinned_events", internalIdPrefix = "pinned_events",
maxEventsToLoad = 100u, maxEventsToLoad = 100u,
@ -238,8 +238,8 @@ class RustMatrixRoom(
} }
} }
override suspend fun mediaTimeline(): Result<Timeline> { override suspend fun mediaTimeline(): Result<Timeline> = withContext(roomDispatcher) {
return runCatching { runCatching {
innerRoom.messageFilteredTimeline( innerRoom.messageFilteredTimeline(
internalIdPrefix = "MediaGallery_", internalIdPrefix = "MediaGallery_",
allowedMessageTypes = listOf( allowedMessageTypes = listOf(