|
|
@ -40,7 +40,6 @@ import io.element.android.libraries.matrix.api.room.StateEventType |
|
|
|
import io.element.android.libraries.matrix.api.room.location.AssetType |
|
|
|
import io.element.android.libraries.matrix.api.room.location.AssetType |
|
|
|
import io.element.android.libraries.matrix.api.room.roomMembers |
|
|
|
import io.element.android.libraries.matrix.api.room.roomMembers |
|
|
|
import io.element.android.libraries.matrix.api.room.roomNotificationSettings |
|
|
|
import io.element.android.libraries.matrix.api.room.roomNotificationSettings |
|
|
|
import io.element.android.libraries.matrix.api.timeline.MatrixTimeline |
|
|
|
|
|
|
|
import io.element.android.libraries.matrix.api.widget.MatrixWidgetDriver |
|
|
|
import io.element.android.libraries.matrix.api.widget.MatrixWidgetDriver |
|
|
|
import io.element.android.libraries.matrix.api.widget.MatrixWidgetSettings |
|
|
|
import io.element.android.libraries.matrix.api.widget.MatrixWidgetSettings |
|
|
|
import io.element.android.libraries.matrix.impl.core.toProgressWatcher |
|
|
|
import io.element.android.libraries.matrix.impl.core.toProgressWatcher |
|
|
@ -126,23 +125,19 @@ class RustMatrixRoom( |
|
|
|
private val _roomNotificationSettingsStateFlow = MutableStateFlow<MatrixRoomNotificationSettingsState>(MatrixRoomNotificationSettingsState.Unknown) |
|
|
|
private val _roomNotificationSettingsStateFlow = MutableStateFlow<MatrixRoomNotificationSettingsState>(MatrixRoomNotificationSettingsState.Unknown) |
|
|
|
override val roomNotificationSettingsStateFlow: StateFlow<MatrixRoomNotificationSettingsState> = _roomNotificationSettingsStateFlow |
|
|
|
override val roomNotificationSettingsStateFlow: StateFlow<MatrixRoomNotificationSettingsState> = _roomNotificationSettingsStateFlow |
|
|
|
|
|
|
|
|
|
|
|
private val _timeline by lazy { |
|
|
|
override val timeline = RustMatrixTimeline( |
|
|
|
RustMatrixTimeline( |
|
|
|
matrixRoom = this, |
|
|
|
matrixRoom = this, |
|
|
|
innerRoom = innerRoom, |
|
|
|
innerRoom = innerRoom, |
|
|
|
roomCoroutineScope = roomCoroutineScope, |
|
|
|
roomCoroutineScope = roomCoroutineScope, |
|
|
|
dispatcher = roomDispatcher, |
|
|
|
dispatcher = roomDispatcher, |
|
|
|
lastLoginTimestamp = sessionData.loginTimestamp, |
|
|
|
lastLoginTimestamp = sessionData.loginTimestamp, |
|
|
|
onNewSyncedEvent = { _syncUpdateFlow.value = systemClock.epochMillis() } |
|
|
|
onNewSyncedEvent = { _syncUpdateFlow.value = systemClock.epochMillis() } |
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
override val membersStateFlow: StateFlow<MatrixRoomMembersState> = _membersStateFlow.asStateFlow() |
|
|
|
override val membersStateFlow: StateFlow<MatrixRoomMembersState> = _membersStateFlow.asStateFlow() |
|
|
|
|
|
|
|
|
|
|
|
override val syncUpdateFlow: StateFlow<Long> = _syncUpdateFlow.asStateFlow() |
|
|
|
override val syncUpdateFlow: StateFlow<Long> = _syncUpdateFlow.asStateFlow() |
|
|
|
|
|
|
|
|
|
|
|
override val timeline: MatrixTimeline = _timeline |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
override suspend fun subscribeToSync() = roomSyncSubscriber.subscribe(roomId) |
|
|
|
override suspend fun subscribeToSync() = roomSyncSubscriber.subscribe(roomId) |
|
|
|
|
|
|
|
|
|
|
|
override suspend fun unsubscribeFromSync() = roomSyncSubscriber.unsubscribe(roomId) |
|
|
|
override suspend fun unsubscribeFromSync() = roomSyncSubscriber.unsubscribe(roomId) |
|
|
|