Room details: Check power level before showing add people button

This commit is contained in:
Florian Renaud 2021-09-06 16:23:40 +02:00
parent 24e2f1a8e0
commit e78aec5fcc
2 changed files with 5 additions and 2 deletions

View file

@ -206,6 +206,7 @@ class MergedHeaderItemFactory @Inject constructor(private val activeSessionHolde
callback = callback,
currentUserId = currentUserId,
roomSummary = partialState.roomSummary,
canInvite = powerLevelsHelper?.isUserAbleToInvite(currentUserId) ?: false,
canChangeAvatar = powerLevelsHelper?.isUserAllowedToSend(currentUserId, true, EventType.STATE_ROOM_AVATAR) ?: false,
canChangeTopic = powerLevelsHelper?.isUserAllowedToSend(currentUserId, true, EventType.STATE_ROOM_TOPIC) ?: false,
canChangeName = powerLevelsHelper?.isUserAllowedToSend(currentUserId, true, EventType.STATE_ROOM_NAME) ?: false

View file

@ -190,8 +190,9 @@ abstract class MergedRoomCreationItem : BasedMergedItem<MergedRoomCreationItem.H
}
}
holder.addPeopleButton.isVisible = !isDirect
if (!isDirect) {
val canInvite = attributes.canInvite && !isDirect
holder.addPeopleButton.isVisible = canInvite
if (canInvite) {
holder.addPeopleButton.onClick {
attributes.callback?.onTimelineItemAction(RoomDetailAction.QuickActionInvitePeople)
}
@ -228,6 +229,7 @@ abstract class MergedRoomCreationItem : BasedMergedItem<MergedRoomCreationItem.H
val hasEncryptionEvent: Boolean,
val isEncryptionAlgorithmSecure: Boolean,
val roomSummary: RoomSummary?,
val canInvite: Boolean = false,
val canChangeAvatar: Boolean = false,
val canChangeName: Boolean = false,
val canChangeTopic: Boolean = false