From 6fa0c0fd318ffedee3ee80eff596ac213eaa7cc9 Mon Sep 17 00:00:00 2001 From: Taras Smakula <tarassmakula@gmail.com> Date: Fri, 29 Sep 2023 15:41:30 +0300 Subject: [PATCH] Improve shared spaces autoaccept --- .../circles/feature/home/HomeViewModel.kt | 20 ++++--------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/org/futo/circles/feature/home/HomeViewModel.kt b/app/src/main/java/org/futo/circles/feature/home/HomeViewModel.kt index a8fcde948..8431a4e25 100644 --- a/app/src/main/java/org/futo/circles/feature/home/HomeViewModel.kt +++ b/app/src/main/java/org/futo/circles/feature/home/HomeViewModel.kt @@ -1,7 +1,6 @@ package org.futo.circles.feature.home import androidx.lifecycle.ViewModel -import androidx.lifecycle.map import androidx.lifecycle.viewModelScope import dagger.hilt.android.lifecycle.HiltViewModel import org.futo.circles.auth.feature.workspace.data_source.ConfigureWorkspaceDataSource @@ -11,14 +10,12 @@ import org.futo.circles.core.extensions.Response import org.futo.circles.core.extensions.createResult import org.futo.circles.core.extensions.launchBg import org.futo.circles.core.model.GROUP_TYPE -import org.futo.circles.core.provider.MatrixSessionProvider +import org.futo.circles.core.workspace.SharedCircleDataSource import org.futo.circles.feature.notifications.PushersManager import org.futo.circles.feature.notifications.ShortcutsHandler import org.futo.circles.gallery.feature.backup.RoomAccountDataSource import org.matrix.android.sdk.api.session.room.model.Membership import org.matrix.android.sdk.api.session.room.model.RoomSummary -import org.matrix.android.sdk.api.session.room.model.RoomType -import org.matrix.android.sdk.api.session.room.roomSummaryQueryParams import javax.inject.Inject @HiltViewModel @@ -27,19 +24,16 @@ class HomeViewModel @Inject constructor( private val workspaceTasksProvider: WorkspaceTasksProvider, private val workspaceDataSource: ConfigureWorkspaceDataSource, roomAccountDataSource: RoomAccountDataSource, - shortcutsHandler: ShortcutsHandler + shortcutsHandler: ShortcutsHandler, + sharedCircleDataSource: SharedCircleDataSource ) : ViewModel() { val validateWorkspaceResultLiveData = SingleEventLiveData<Response<Unit>>() val mediaBackupSettingsLiveData = roomAccountDataSource.getMediaBackupSettingsLive() - val inviteIntoSharedSpaceLiveData = MatrixSessionProvider.currentSession?.roomService() - ?.getRoomSummariesLive(roomSummaryQueryParams { - excludeType = null - memberships = listOf(Membership.INVITE) - })?.map { it.filter { it.roomType == RoomType.SPACE }.map { it.roomId } } init { shortcutsHandler.observeRoomsAndBuildShortcuts(viewModelScope) + sharedCircleDataSource.observeAndAutoAcceptSharedSpaceInvites(viewModelScope) validateWorkspace() } @@ -71,10 +65,4 @@ class HomeViewModel @Inject constructor( summary.spaceParents?.firstOrNull { it.roomSummary?.membership == Membership.JOIN } ?.roomSummary?.roomId - - fun autoAcceptInviteOnKnock(roomIds: List<String>) { - MatrixSessionProvider.currentSession?.let { session -> - roomIds.forEach { launchBg { session.roomService().joinRoom(it) } } - } - } } \ No newline at end of file -- GitLab