2019-09-08 13:44:46 +03:00
|
|
|
import QtQuick 2.6
|
|
|
|
|
2019-11-30 03:43:39 +03:00
|
|
|
import im.nheko 1.0
|
2019-10-06 02:44:02 +03:00
|
|
|
|
2019-09-08 13:44:46 +03:00
|
|
|
Item {
|
2020-01-11 16:07:51 +03:00
|
|
|
property double tempWidth: Math.min(parent ? parent.width : undefined, model.data.width)
|
|
|
|
property double tempHeight: tempWidth * model.data.proportionalHeight
|
2019-12-13 04:16:12 +03:00
|
|
|
|
2020-01-28 19:08:49 +03:00
|
|
|
property bool tooHigh: tempHeight > timelineRoot.height / 2
|
2019-12-13 04:16:12 +03:00
|
|
|
|
2020-01-28 19:08:49 +03:00
|
|
|
height: tooHigh ? timelineRoot.height / 2 : tempHeight
|
|
|
|
width: tooHigh ? (timelineRoot.height / 2) / model.data.proportionalHeight : tempWidth
|
2019-09-08 13:44:46 +03:00
|
|
|
|
2020-03-01 21:55:43 +03:00
|
|
|
Image {
|
|
|
|
id: blurhash
|
|
|
|
anchors.fill: parent
|
|
|
|
visible: img.status != Image.Ready
|
|
|
|
|
|
|
|
source: model.data.blurhash ? ("image://blurhash/" + model.data.blurhash) : ("image://colorimage/:/icons/icons/ui/do-not-disturb-rounded-sign@2x.png?"+colors.buttonText)
|
|
|
|
asynchronous: true
|
|
|
|
fillMode: Image.PreserveAspectFit
|
|
|
|
|
|
|
|
sourceSize.width: parent.width
|
|
|
|
sourceSize.height: parent.height
|
|
|
|
}
|
|
|
|
|
2019-09-08 13:44:46 +03:00
|
|
|
Image {
|
2019-09-28 12:07:58 +03:00
|
|
|
id: img
|
2019-09-08 13:44:46 +03:00
|
|
|
anchors.fill: parent
|
|
|
|
|
2020-01-11 16:07:51 +03:00
|
|
|
source: model.data.url.replace("mxc://", "image://MxcImage/")
|
2019-09-08 13:44:46 +03:00
|
|
|
asynchronous: true
|
|
|
|
fillMode: Image.PreserveAspectFit
|
2019-09-28 12:07:58 +03:00
|
|
|
|
|
|
|
MouseArea {
|
2020-01-11 16:07:51 +03:00
|
|
|
enabled: model.data.type == MtxEvent.ImageMessage
|
2019-09-28 12:07:58 +03:00
|
|
|
anchors.fill: parent
|
2020-01-11 16:07:51 +03:00
|
|
|
onClicked: timelineManager.openImageOverlay(model.data.url, model.data.id)
|
2019-09-28 12:07:58 +03:00
|
|
|
}
|
2019-09-08 13:44:46 +03:00
|
|
|
}
|
|
|
|
}
|