diff --git a/src/qml/ImageDelegate.qml b/src/qml/ImageDelegate.qml index 07f050e6e..decf8819d 100644 --- a/src/qml/ImageDelegate.qml +++ b/src/qml/ImageDelegate.qml @@ -133,6 +133,7 @@ MessageDelegate { if (root.mediaInfo.animated) { imageContainer.imageItem.paused = true } + root.ListView.view.interactive = false // We need to make sure the index is that of the MediaMessageFilterModel. if (root.ListView.view.model instanceof MessageFilterModel) { RoomManager.maximizeMedia(RoomManager.mediaMessageFilterModel.getRowForSourceItem(root.index)) diff --git a/src/qml/RoomPage.qml b/src/qml/RoomPage.qml index 66d8c04ba..6bda95329 100644 --- a/src/qml/RoomPage.qml +++ b/src/qml/RoomPage.qml @@ -286,6 +286,7 @@ Kirigami.Page { initialIndex: index }) popup.closed.connect(() => { + timelineViewLoader.item.interactive = true popup.destroy() }) popup.open() diff --git a/src/qml/TimelineView.qml b/src/qml/TimelineView.qml index 32f3d7a01..84db50151 100644 --- a/src/qml/TimelineView.qml +++ b/src/qml/TimelineView.qml @@ -52,6 +52,8 @@ QQC2.ScrollView { readonly property bool atYEnd: messageListView.atYEnd + property alias interactive: messageListView.interactive + /// Used to determine if scrolling to the bottom should mark the message as unread property bool hasScrolledUpBefore: false; diff --git a/src/qml/VideoDelegate.qml b/src/qml/VideoDelegate.qml index 91ffc7da1..c3c301f5b 100644 --- a/src/qml/VideoDelegate.qml +++ b/src/qml/VideoDelegate.qml @@ -290,6 +290,7 @@ MessageDelegate { text: i18n("Maximize") icon.name: "view-fullscreen" onTriggered: { + root.ListView.view.interactive = false vid.pause() // We need to make sure the index is that of the MediaMessageFilterModel. if (root.ListView.view.model instanceof MessageFilterModel) {