mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-02 21:32:34 +00:00
change (member moderation) : allow disabled action and render unban too
This commit is contained in:
+1
-1
@@ -11,5 +11,5 @@ import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
|
||||
interface RoomMemberModerationEvents {
|
||||
data class ShowActionsForUser(val user: MatrixUser) : RoomMemberModerationEvents
|
||||
data class ProcessAction(val action: ModerationAction) : RoomMemberModerationEvents
|
||||
data class ProcessAction(val action: ModerationAction, val targetUser: MatrixUser) : RoomMemberModerationEvents
|
||||
}
|
||||
|
||||
+2
-1
@@ -9,12 +9,13 @@ package io.element.android.features.roommembermoderation.api
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
|
||||
interface RoomMemberModerationRenderer {
|
||||
@Composable
|
||||
fun Render(
|
||||
state: RoomMemberModerationState,
|
||||
onSelectAction: (ModerationAction) -> Unit,
|
||||
onSelectAction: (ModerationAction, MatrixUser) -> Unit,
|
||||
modifier: Modifier,
|
||||
)
|
||||
}
|
||||
|
||||
+9
-6
@@ -7,17 +7,20 @@
|
||||
|
||||
package io.element.android.features.roommembermoderation.api
|
||||
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
|
||||
interface RoomMemberModerationState {
|
||||
val canKick: Boolean
|
||||
val canBan: Boolean
|
||||
val eventSink: (RoomMemberModerationEvents) -> Unit
|
||||
}
|
||||
|
||||
data class ModerationActionState(
|
||||
val action: ModerationAction,
|
||||
val isEnabled: Boolean,
|
||||
)
|
||||
|
||||
sealed interface ModerationAction {
|
||||
data class DisplayProfile(val user: MatrixUser) : ModerationAction
|
||||
data class KickUser(val user: MatrixUser) : ModerationAction
|
||||
data class BanUser(val user: MatrixUser) : ModerationAction
|
||||
data class UnbanUser(val user: MatrixUser) : ModerationAction
|
||||
data object DisplayProfile : ModerationAction
|
||||
data object KickUser : ModerationAction
|
||||
data object BanUser : ModerationAction
|
||||
data object UnbanUser : ModerationAction
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user