diff --git a/core/src/main/java/org/futo/circles/core/extensions/MatrixSessionExtensions.kt b/core/src/main/java/org/futo/circles/core/extensions/MatrixSessionExtensions.kt index 6f57401d67d6b27a49fefcf85462d97677ca3a4b..1953352d6474d106271a9bd187a1dfa0cbb7b301 100644 --- a/core/src/main/java/org/futo/circles/core/extensions/MatrixSessionExtensions.kt +++ b/core/src/main/java/org/futo/circles/core/extensions/MatrixSessionExtensions.kt @@ -6,7 +6,7 @@ import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.SupervisorJob import kotlinx.coroutines.flow.mapLatest -import org.futo.circles.core.utils.getAllCirclesRoomsLiveData +import org.futo.circles.core.utils.getAllRoomsLiveData import org.matrix.android.sdk.api.session.Session import org.matrix.android.sdk.api.session.content.ContentUrlResolver import org.matrix.android.sdk.api.session.getRoom @@ -52,7 +52,7 @@ fun Session.getServerDomain() = myUserId.substringAfter(":") fun Session.getKnownUsersFlow() = - getAllCirclesRoomsLiveData(listOf(Membership.JOIN)).asFlow().mapLatest { roomSummaries -> + getAllRoomsLiveData(listOf(Membership.JOIN)).asFlow().mapLatest { roomSummaries -> val knowUsers = mutableSetOf<User>() roomSummaries.forEach { summary -> val joinedMembersIds = getRoom(summary.roomId)?.membershipService() diff --git a/core/src/main/java/org/futo/circles/core/feature/notifications/ShortcutsHandler.kt b/core/src/main/java/org/futo/circles/core/feature/notifications/ShortcutsHandler.kt index d4b375cd59688e60c37bf3a84dae5b7f8033c304..0a79c8b253f3667e9c3d58c2bd21ed2be53e685f 100644 --- a/core/src/main/java/org/futo/circles/core/feature/notifications/ShortcutsHandler.kt +++ b/core/src/main/java/org/futo/circles/core/feature/notifications/ShortcutsHandler.kt @@ -12,7 +12,7 @@ import kotlinx.coroutines.flow.flowOn import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.onEach import org.futo.circles.core.R -import org.futo.circles.core.utils.getAllCirclesRoomsLiveData +import org.futo.circles.core.utils.getAllRoomsLiveData import org.matrix.android.sdk.api.session.room.model.Membership import org.matrix.android.sdk.api.session.room.model.RoomSummary import javax.inject.Inject @@ -30,7 +30,7 @@ class ShortcutsHandler @Inject constructor( fun observeRoomsAndBuildShortcuts(coroutineScope: CoroutineScope): Job { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N_MR1) return Job() - return getAllCirclesRoomsLiveData(listOf(Membership.JOIN)).asFlow().onEach { rooms -> + return getAllRoomsLiveData(listOf(Membership.JOIN)).asFlow().onEach { rooms -> removeDeadShortcuts(rooms.map { it.roomId }) createShortcuts(rooms) } diff --git a/core/src/main/java/org/futo/circles/core/feature/room/invites/InvitesDataSource.kt b/core/src/main/java/org/futo/circles/core/feature/room/invites/InvitesDataSource.kt index 0769c4b6f7fef51279b5429fa71d403b4f5bfd22..e5a27e7fda3ae88d5f7498ac090daf6b92a32dbd 100644 --- a/core/src/main/java/org/futo/circles/core/feature/room/invites/InvitesDataSource.kt +++ b/core/src/main/java/org/futo/circles/core/feature/room/invites/InvitesDataSource.kt @@ -8,7 +8,6 @@ import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.update import kotlinx.coroutines.withContext -import org.futo.circles.core.extensions.createResult import org.futo.circles.core.extensions.getKnownUsersFlow import org.futo.circles.core.model.GALLERY_TYPE import org.futo.circles.core.model.GROUP_TYPE @@ -18,8 +17,7 @@ import org.futo.circles.core.model.TIMELINE_TYPE import org.futo.circles.core.model.convertToCircleRoomType import org.futo.circles.core.model.toRoomInviteListItem import org.futo.circles.core.provider.MatrixSessionProvider -import org.futo.circles.core.utils.getAllCirclesRoomsLiveData -import org.matrix.android.sdk.api.session.getRoom +import org.futo.circles.core.utils.getAllRoomsLiveData import org.matrix.android.sdk.api.session.room.model.Membership import org.matrix.android.sdk.api.session.room.model.RoomSummary import javax.inject.Inject @@ -31,7 +29,7 @@ class InvitesDataSource @Inject constructor() { fun getRoomInvitesFlow( inviteType: InviteTypeArg ): Flow<List<RoomInviteListItem>> = combine( - getAllCirclesRoomsLiveData(listOf(Membership.INVITE)).asFlow(), + getAllRoomsLiveData(listOf(Membership.INVITE)).asFlow(), MatrixSessionProvider.getSessionOrThrow().getKnownUsersFlow(), roomIdsToUnblurProfile ) { roomSummaries, knownUsers, roomIdsToUnblur -> diff --git a/core/src/main/java/org/futo/circles/core/feature/select_users/SearchUserDataSource.kt b/core/src/main/java/org/futo/circles/core/feature/select_users/SearchUserDataSource.kt index 27320dc7b35f95e3127ab1283dc80b8fe5862ea5..9c8a02a31d9e9c4cccf219911f88451d33eea73e 100644 --- a/core/src/main/java/org/futo/circles/core/feature/select_users/SearchUserDataSource.kt +++ b/core/src/main/java/org/futo/circles/core/feature/select_users/SearchUserDataSource.kt @@ -10,7 +10,7 @@ import org.futo.circles.core.extensions.createResult import org.futo.circles.core.extensions.getKnownUsersFlow import org.futo.circles.core.extensions.getServerDomain import org.futo.circles.core.provider.MatrixSessionProvider -import org.futo.circles.core.utils.getAllCirclesRooms +import org.futo.circles.core.utils.getAllRooms import org.matrix.android.sdk.api.session.getRoom import org.matrix.android.sdk.api.session.user.model.User import javax.inject.Inject @@ -20,7 +20,7 @@ class SearchUserDataSource @Inject constructor() { private val session = MatrixSessionProvider.currentSession suspend fun loadAllRoomMembersIfNeeded() { - getAllCirclesRooms().forEach { + getAllRooms().forEach { session?.getRoom(it.roomId)?.membershipService()?.loadRoomMembersIfNeeded() } } diff --git a/core/src/main/java/org/futo/circles/core/utils/MatrixUtils.kt b/core/src/main/java/org/futo/circles/core/utils/MatrixUtils.kt index 1add9d8ea62384afdc80699b69d77b0a0ad11554..9ae60b3e381247af34cef450caad10646dd4be85 100644 --- a/core/src/main/java/org/futo/circles/core/utils/MatrixUtils.kt +++ b/core/src/main/java/org/futo/circles/core/utils/MatrixUtils.kt @@ -78,11 +78,11 @@ private fun getAllRoomsFiler(membershipFilter: List<Membership>) = roomSummaryQu memberships = membershipFilter } -fun getAllCirclesRoomsLiveData(membershipFilter: List<Membership> = Membership.activeMemberships()) = +fun getAllRoomsLiveData(membershipFilter: List<Membership> = Membership.activeMemberships()) = MatrixSessionProvider.getSessionOrThrow().roomService() .getRoomSummariesLive(getAllRoomsFiler(membershipFilter)) -fun getAllCirclesRooms(membershipFilter: List<Membership> = Membership.activeMemberships()) = +fun getAllRooms(membershipFilter: List<Membership> = Membership.activeMemberships()) = MatrixSessionProvider.getSessionOrThrow().roomService() .getRoomSummaries(getAllRoomsFiler(membershipFilter))