Allow set room join rule to knock
This commit is contained in:
@@ -14,6 +14,7 @@ Kirigami.ScrollablePage {
|
|||||||
id: root
|
id: root
|
||||||
|
|
||||||
property var room
|
property var room
|
||||||
|
property string needUpgradeRoom: i18n("You need to upgrade this room to a newer version to enable this setting.")
|
||||||
|
|
||||||
title: i18n("Security")
|
title: i18n("Security")
|
||||||
|
|
||||||
@@ -40,16 +41,25 @@ Kirigami.ScrollablePage {
|
|||||||
}
|
}
|
||||||
MobileForm.FormRadioDelegate {
|
MobileForm.FormRadioDelegate {
|
||||||
text: i18nc("@option:check", "Space members")
|
text: i18nc("@option:check", "Space members")
|
||||||
description: !["8", "9", "10"].includes(room.version)
|
description: i18n("Anyone in a space can find and join.") +
|
||||||
? i18n("Anyone in a space can find and join.") + '\n' +
|
(!["8", "9", "10"].includes(room.version) ? `\n${needUpgradeRoom}` : "")
|
||||||
i18n("You need to upgrade this room to a newer version to enable this setting.")
|
|
||||||
: i18n("Anyone in a space can find and join.")
|
|
||||||
checked: room.joinRule === "restricted"
|
checked: room.joinRule === "restricted"
|
||||||
enabled: room.canSendState("m.room.join_rules") && ["8", "9", "10"].includes(room.version) && false
|
enabled: room.canSendState("m.room.join_rules") && ["8", "9", "10"].includes(room.version) && false
|
||||||
onCheckedChanged: if (checked) {
|
onCheckedChanged: if (checked) {
|
||||||
room.joinRule = "restricted";
|
room.joinRule = "restricted";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
MobileForm.FormRadioDelegate {
|
||||||
|
text: i18nc("@option:check", "Knock")
|
||||||
|
description: i18n("People not in the room need to request an invite to join the room.") +
|
||||||
|
(!["7", "8", "9", "10"].includes(room.version) ? `\n${needUpgradeRoom}` : "")
|
||||||
|
checked: room.joinRule === "knock"
|
||||||
|
// https://spec.matrix.org/v1.4/rooms/#feature-matrix
|
||||||
|
enabled: room.canSendState("m.room.join_rules") && ["7", "8", "9", "10"].includes(room.version)
|
||||||
|
onCheckedChanged: if (checked) {
|
||||||
|
room.joinRule = "knock";
|
||||||
|
}
|
||||||
|
}
|
||||||
MobileForm.FormRadioDelegate {
|
MobileForm.FormRadioDelegate {
|
||||||
text: i18nc("@option:check", "Public")
|
text: i18nc("@option:check", "Public")
|
||||||
description: i18nc("@option:check", "Anyone can find and join.")
|
description: i18nc("@option:check", "Anyone can find and join.")
|
||||||
|
|||||||
Reference in New Issue
Block a user