Readonly Room

Add readonly property to a room and use it to decide whether to show chatbar, replies and edits

BUG: 479590
This commit is contained in:
James Graham
2024-01-12 01:59:09 +00:00
parent c1d122a717
commit ec4aa73e37
4 changed files with 18 additions and 2 deletions

View File

@@ -89,7 +89,7 @@ QQC2.Control {
onTriggered: emojiDialog.open()
},
Kirigami.Action {
visible: root.delegate && root.delegate.author.isLocalUser && (root.delegate.delegateType === DelegateType.Emote || root.delegate.delegateType === DelegateType.Message)
visible: root.delegate && root.delegate.author.isLocalUser && (root.delegate.delegateType === DelegateType.Emote || root.delegate.delegateType === DelegateType.Message) && !root.currentRoom.readOnly
text: i18n("Edit")
icon.name: "document-edit"
onTriggered: {
@@ -98,6 +98,7 @@ QQC2.Control {
}
},
Kirigami.Action {
visible: !root.currentRoom.readOnly
text: i18n("Reply")
icon.name: "mail-replied-symbolic"
onTriggered: {
@@ -107,6 +108,7 @@ QQC2.Control {
}
},
Kirigami.Action {
visible: !root.currentRoom.readOnly
text: i18n("Reply in Thread")
icon.name: "dialog-messages"
onTriggered: {

View File

@@ -158,7 +158,7 @@ Kirigami.Page {
footer: Loader {
id: chatBarLoader
active: timelineViewLoader.active && root.currentRoom.canSendEvent("m.room.message") // TODO make this update in real time
active: timelineViewLoader.active && !root.currentRoom.readOnly
sourceComponent: ChatBar {
id: chatBar
width: parent.width