From c9e3ad185021b4ac1849e4fd2c2908808260cae7 Mon Sep 17 00:00:00 2001 From: Loren Burkholder Date: Thu, 16 Feb 2023 23:18:12 -0500 Subject: Animate transition to blurhash --- resources/qml/delegates/ImageMessage.qml | 44 ++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'resources') diff --git a/resources/qml/delegates/ImageMessage.qml b/resources/qml/delegates/ImageMessage.qml index bb22d0ee..1e2674ae 100644 --- a/resources/qml/delegates/ImageMessage.qml +++ b/resources/qml/delegates/ImageMessage.qml @@ -66,6 +66,50 @@ AbstractButton { fillMode: Image.PreserveAspectFit sourceSize.width: parent.width * Screen.devicePixelRatio sourceSize.height: parent.height * Screen.devicePixelRatio + state: img.status != Image.Ready ? "Visible" : (timeline.privacyScreen.active ? "Visible" : "Invisible") + + states: [ + State { + name: "Visible" + + PropertyChanges { + target: blurhash_ + opacity: 1 + } + }, + State { + name: "Invisible" + + PropertyChanges { + target: blurhash_ + opacity: 0 + } + } + ] + transitions: [ + Transition { + from: "Visible" + to: "Invisible" + + NumberAnimation { + target: blurhash_ + property: "opacity" + duration: 250 + easing.type: Easing.InQuad + } + }, + Transition { + from: "Invisible" + to: "Visible" + + NumberAnimation { + target: blurhash_ + property: "opacity" + duration: 500 + easing.type: Easing.InQuad + } + } + ] } onClicked: Settings.openImageExternal ? room.openMedia(eventId) : TimelineManager.openImageOverlay(room, url, eventId, originalWidth, proportionalHeight); -- cgit 1.4.1