Naming convention
This commit is contained in:
parent
36564f0c75
commit
2cf2233643
@ -19,8 +19,8 @@ package im.vector.app.features.roomprofile.banned
|
||||
import im.vector.app.core.platform.VectorViewModelAction
|
||||
import org.matrix.android.sdk.api.session.room.model.RoomMemberSummary
|
||||
|
||||
sealed class RoomBannedListMemberAction : VectorViewModelAction {
|
||||
data class QueryInfo(val roomMemberSummary: RoomMemberSummary) : RoomBannedListMemberAction()
|
||||
data class UnBanUser(val roomMemberSummary: RoomMemberSummary) : RoomBannedListMemberAction()
|
||||
data class Filter(val filter: String) : RoomBannedListMemberAction()
|
||||
sealed class RoomBannedMemberListAction : VectorViewModelAction {
|
||||
data class QueryInfo(val roomMemberSummary: RoomMemberSummary) : RoomBannedMemberListAction()
|
||||
data class UnBanUser(val roomMemberSummary: RoomMemberSummary) : RoomBannedMemberListAction()
|
||||
data class Filter(val filter: String) : RoomBannedMemberListAction()
|
||||
}
|
@ -37,18 +37,18 @@ import org.matrix.android.sdk.api.util.toMatrixItem
|
||||
import javax.inject.Inject
|
||||
|
||||
class RoomBannedMemberListFragment @Inject constructor(
|
||||
val viewModelFactory: RoomBannedListMemberViewModel.Factory,
|
||||
val viewModelFactory: RoomBannedMemberListViewModel.Factory,
|
||||
private val roomMemberListController: RoomBannedMemberListController,
|
||||
private val avatarRenderer: AvatarRenderer
|
||||
) : VectorBaseFragment(), RoomBannedMemberListController.Callback {
|
||||
|
||||
private val viewModel: RoomBannedListMemberViewModel by fragmentViewModel()
|
||||
private val viewModel: RoomBannedMemberListViewModel by fragmentViewModel()
|
||||
private val roomProfileArgs: RoomProfileArgs by args()
|
||||
|
||||
override fun getLayoutResId() = R.layout.fragment_room_setting_generic
|
||||
|
||||
override fun onUnbanClicked(roomMember: RoomMemberSummary) {
|
||||
viewModel.handle(RoomBannedListMemberAction.QueryInfo(roomMember))
|
||||
viewModel.handle(RoomBannedMemberListAction.QueryInfo(roomMember))
|
||||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
@ -60,7 +60,7 @@ class RoomBannedMemberListFragment @Inject constructor(
|
||||
|
||||
viewModel.observeViewEvents {
|
||||
when (it) {
|
||||
is RoomBannedViewEvents.ShowBannedInfo -> {
|
||||
is RoomBannedMemberListViewEvents.ShowBannedInfo -> {
|
||||
val canBan = withState(viewModel) { state -> state.canUserBan }
|
||||
AlertDialog.Builder(requireActivity())
|
||||
.setTitle(getString(R.string.member_banned_by, it.bannedByUserId))
|
||||
@ -69,13 +69,13 @@ class RoomBannedMemberListFragment @Inject constructor(
|
||||
.apply {
|
||||
if (canBan) {
|
||||
setNegativeButton(R.string.room_participants_action_unban) { _, _ ->
|
||||
viewModel.handle(RoomBannedListMemberAction.UnBanUser(it.roomMemberSummary))
|
||||
viewModel.handle(RoomBannedMemberListAction.UnBanUser(it.roomMemberSummary))
|
||||
}
|
||||
}
|
||||
}
|
||||
.show()
|
||||
}
|
||||
is RoomBannedViewEvents.ToastError -> {
|
||||
is RoomBannedMemberListViewEvents.ToastError -> {
|
||||
requireActivity().toast(it.info)
|
||||
}
|
||||
}
|
||||
@ -96,7 +96,7 @@ class RoomBannedMemberListFragment @Inject constructor(
|
||||
}
|
||||
|
||||
override fun onQueryTextChange(newText: String): Boolean {
|
||||
viewModel.handle(RoomBannedListMemberAction.Filter(newText))
|
||||
viewModel.handle(RoomBannedMemberListAction.Filter(newText))
|
||||
return true
|
||||
}
|
||||
})
|
||||
|
@ -19,7 +19,7 @@ package im.vector.app.features.roomprofile.banned
|
||||
import im.vector.app.core.platform.VectorViewEvents
|
||||
import org.matrix.android.sdk.api.session.room.model.RoomMemberSummary
|
||||
|
||||
sealed class RoomBannedViewEvents : VectorViewEvents {
|
||||
data class ShowBannedInfo(val bannedByUserId: String, val banReason: String, val roomMemberSummary: RoomMemberSummary) : RoomBannedViewEvents()
|
||||
data class ToastError(val info: String) : RoomBannedViewEvents()
|
||||
sealed class RoomBannedMemberListViewEvents : VectorViewEvents {
|
||||
data class ShowBannedInfo(val bannedByUserId: String, val banReason: String, val roomMemberSummary: RoomMemberSummary) : RoomBannedMemberListViewEvents()
|
||||
data class ToastError(val info: String) : RoomBannedMemberListViewEvents()
|
||||
}
|
@ -42,14 +42,14 @@ import org.matrix.android.sdk.internal.util.awaitCallback
|
||||
import org.matrix.android.sdk.rx.rx
|
||||
import org.matrix.android.sdk.rx.unwrap
|
||||
|
||||
class RoomBannedListMemberViewModel @AssistedInject constructor(@Assisted initialState: RoomBannedMemberListViewState,
|
||||
class RoomBannedMemberListViewModel @AssistedInject constructor(@Assisted initialState: RoomBannedMemberListViewState,
|
||||
private val stringProvider: StringProvider,
|
||||
private val session: Session)
|
||||
: VectorViewModel<RoomBannedMemberListViewState, RoomBannedListMemberAction, RoomBannedViewEvents>(initialState) {
|
||||
: VectorViewModel<RoomBannedMemberListViewState, RoomBannedMemberListAction, RoomBannedMemberListViewEvents>(initialState) {
|
||||
|
||||
@AssistedInject.Factory
|
||||
interface Factory {
|
||||
fun create(initialState: RoomBannedMemberListViewState): RoomBannedListMemberViewModel
|
||||
fun create(initialState: RoomBannedMemberListViewState): RoomBannedMemberListViewModel
|
||||
}
|
||||
|
||||
private val room = session.getRoom(initialState.roomId)!!
|
||||
@ -78,24 +78,24 @@ class RoomBannedListMemberViewModel @AssistedInject constructor(@Assisted initia
|
||||
}.disposeOnClear()
|
||||
}
|
||||
|
||||
companion object : MvRxViewModelFactory<RoomBannedListMemberViewModel, RoomBannedMemberListViewState> {
|
||||
companion object : MvRxViewModelFactory<RoomBannedMemberListViewModel, RoomBannedMemberListViewState> {
|
||||
|
||||
@JvmStatic
|
||||
override fun create(viewModelContext: ViewModelContext, state: RoomBannedMemberListViewState): RoomBannedListMemberViewModel? {
|
||||
override fun create(viewModelContext: ViewModelContext, state: RoomBannedMemberListViewState): RoomBannedMemberListViewModel? {
|
||||
val fragment: RoomBannedMemberListFragment = (viewModelContext as FragmentViewModelContext).fragment()
|
||||
return fragment.viewModelFactory.create(state)
|
||||
}
|
||||
}
|
||||
|
||||
override fun handle(action: RoomBannedListMemberAction) {
|
||||
override fun handle(action: RoomBannedMemberListAction) {
|
||||
when (action) {
|
||||
is RoomBannedListMemberAction.QueryInfo -> onQueryBanInfo(action.roomMemberSummary)
|
||||
is RoomBannedListMemberAction.UnBanUser -> unBanUser(action.roomMemberSummary)
|
||||
is RoomBannedListMemberAction.Filter -> handleFilter(action)
|
||||
is RoomBannedMemberListAction.QueryInfo -> onQueryBanInfo(action.roomMemberSummary)
|
||||
is RoomBannedMemberListAction.UnBanUser -> unBanUser(action.roomMemberSummary)
|
||||
is RoomBannedMemberListAction.Filter -> handleFilter(action)
|
||||
}.exhaustive
|
||||
}
|
||||
|
||||
private fun handleFilter(action: RoomBannedListMemberAction.Filter) {
|
||||
private fun handleFilter(action: RoomBannedMemberListAction.Filter) {
|
||||
setState {
|
||||
copy(
|
||||
filter = action.filter
|
||||
@ -114,7 +114,7 @@ class RoomBannedListMemberViewModel @AssistedInject constructor(@Assisted initia
|
||||
val reason = content.reason
|
||||
val bannedBy = bannedEvent?.senderId ?: return
|
||||
|
||||
_viewEvents.post(RoomBannedViewEvents.ShowBannedInfo(bannedBy, reason ?: "", roomMemberSummary))
|
||||
_viewEvents.post(RoomBannedMemberListViewEvents.ShowBannedInfo(bannedBy, reason ?: "", roomMemberSummary))
|
||||
}
|
||||
|
||||
private fun unBanUser(roomMemberSummary: RoomMemberSummary) {
|
||||
@ -127,7 +127,7 @@ class RoomBannedListMemberViewModel @AssistedInject constructor(@Assisted initia
|
||||
room.unban(roomMemberSummary.userId, null, it)
|
||||
}
|
||||
} catch (failure: Throwable) {
|
||||
_viewEvents.post(RoomBannedViewEvents.ToastError(stringProvider.getString(R.string.failed_to_unban)))
|
||||
_viewEvents.post(RoomBannedMemberListViewEvents.ToastError(stringProvider.getString(R.string.failed_to_unban)))
|
||||
} finally {
|
||||
setState {
|
||||
copy(
|
Loading…
x
Reference in New Issue
Block a user