mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-03 16:10:00 +00:00
fix(timeline) : dispatch timeline creations trying to avoid ANRs
This commit is contained in:
+6
-6
@@ -191,8 +191,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,
|
||||||
@@ -209,8 +209,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,
|
||||||
@@ -225,8 +225,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(
|
||||||
|
|||||||
Reference in New Issue
Block a user