Skip to content
Snippets Groups Projects
Commit f8806a5b authored by Taras's avatar Taras
Browse files

Add room info

parent 9715a115
No related branches found
No related tags found
No related merge requests found
......@@ -9,6 +9,7 @@ import org.futo.circles.R
import org.futo.circles.core.extensions.isCurrentUserAbleToChangeSettings
import org.futo.circles.core.extensions.isCurrentUserAbleToInvite
import org.futo.circles.core.extensions.isCurrentUserOnlyAdmin
import org.futo.circles.core.extensions.loadProfileIcon
import org.futo.circles.core.extensions.observeData
import org.futo.circles.core.extensions.observeResponse
import org.futo.circles.core.extensions.onBackPressed
......@@ -106,6 +107,12 @@ class TimelineOptionsDialogFragment :
tvDelete.setIsVisible(groupPowerLevelsContent.isCurrentUserOnlyAdmin(args.roomId))
}
}
viewModel.roomSummaryLiveData?.observeData(this) {
it.getOrNull()?.let { room ->
binding.ivCover.loadProfileIcon(room.avatarUrl, room.displayName)
binding.toolbar.title = room.displayName
}
}
}
......
package org.futo.circles.feature.timeline.options
import androidx.lifecycle.SavedStateHandle
import androidx.lifecycle.ViewModel
import androidx.lifecycle.asLiveData
import dagger.hilt.android.lifecycle.HiltViewModel
import org.futo.circles.core.SingleEventLiveData
import org.futo.circles.core.extensions.Response
import org.futo.circles.core.extensions.getOrThrow
import org.futo.circles.core.extensions.launchBg
import org.futo.circles.core.provider.MatrixSessionProvider
import org.futo.circles.core.room.leave.LeaveRoomDataSource
import org.futo.circles.feature.room.RoomNotificationsDataSource
import org.futo.circles.feature.timeline.data_source.AccessLevelDataSource
import org.matrix.android.sdk.api.session.getRoom
import javax.inject.Inject
@HiltViewModel
class TimelineOptionsViewModel @Inject constructor(
savedStateHandle: SavedStateHandle,
private val roomNotificationsDataSource: RoomNotificationsDataSource,
private val leaveRoomDataSource: LeaveRoomDataSource,
accessLevelDataSource: AccessLevelDataSource,
......@@ -21,6 +26,11 @@ class TimelineOptionsViewModel @Inject constructor(
val leaveDeleteEventLiveData = SingleEventLiveData<Response<Unit?>>()
val accessLevelLiveData = accessLevelDataSource.accessLevelFlow.asLiveData()
private val roomId: String = savedStateHandle.getOrThrow("roomId")
val roomSummaryLiveData =
MatrixSessionProvider.getSessionOrThrow().getRoom(roomId)?.getRoomSummaryLive()
fun delete(isGroup: Boolean) {
launchBg {
val result = if (isGroup) leaveRoomDataSource.deleteGroup()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment