mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-03 16:10:00 +00:00
create room : override invite power level for knockable rooms
This commit is contained in:
+9
-1
@@ -33,6 +33,7 @@ import io.element.android.libraries.matrix.api.pusher.PushersService
|
|||||||
import io.element.android.libraries.matrix.api.room.CurrentUserMembership
|
import io.element.android.libraries.matrix.api.room.CurrentUserMembership
|
||||||
import io.element.android.libraries.matrix.api.room.MatrixRoom
|
import io.element.android.libraries.matrix.api.room.MatrixRoom
|
||||||
import io.element.android.libraries.matrix.api.room.PendingRoom
|
import io.element.android.libraries.matrix.api.room.PendingRoom
|
||||||
|
import io.element.android.libraries.matrix.api.room.RoomMember
|
||||||
import io.element.android.libraries.matrix.api.room.RoomMembershipObserver
|
import io.element.android.libraries.matrix.api.room.RoomMembershipObserver
|
||||||
import io.element.android.libraries.matrix.api.room.alias.ResolvedRoomAlias
|
import io.element.android.libraries.matrix.api.room.alias.ResolvedRoomAlias
|
||||||
import io.element.android.libraries.matrix.api.room.preview.RoomPreview
|
import io.element.android.libraries.matrix.api.room.preview.RoomPreview
|
||||||
@@ -320,7 +321,14 @@ class RustMatrixClient(
|
|||||||
},
|
},
|
||||||
invite = createRoomParams.invite?.map { it.value },
|
invite = createRoomParams.invite?.map { it.value },
|
||||||
avatar = createRoomParams.avatar,
|
avatar = createRoomParams.avatar,
|
||||||
powerLevelContentOverride = defaultRoomCreationPowerLevels,
|
powerLevelContentOverride = defaultRoomCreationPowerLevels.copy(
|
||||||
|
invite = if (createRoomParams.joinRuleOverride == JoinRuleOverride.Knock) {
|
||||||
|
// override the invite power level so it's the same as kick.
|
||||||
|
RoomMember.Role.MODERATOR.powerLevel.toInt()
|
||||||
|
} else {
|
||||||
|
null
|
||||||
|
}
|
||||||
|
),
|
||||||
joinRuleOverride = when (createRoomParams.joinRuleOverride) {
|
joinRuleOverride = when (createRoomParams.joinRuleOverride) {
|
||||||
JoinRuleOverride.Knock -> RustJoinRule.Knock
|
JoinRuleOverride.Knock -> RustJoinRule.Knock
|
||||||
JoinRuleOverride.None -> null
|
JoinRuleOverride.None -> null
|
||||||
|
|||||||
Reference in New Issue
Block a user