diff options
author | Joseph Donofry <joedonofry@gmail.com> | 2020-05-14 20:53:01 -0400 |
---|---|---|
committer | Joseph Donofry <joedonofry@gmail.com> | 2020-05-14 20:53:01 -0400 |
commit | 6d2789f4d5ffcd4e3e6ad8dfaae6925b0bf7d6ae (patch) | |
tree | 2ce43f344f002d2747f5f68b9d87b81873ed87ce /resources/qml/delegates | |
parent | Update emoji picker and translations (diff) | |
parent | Merge branch 'master' of ssh://github.com/Nheko-Reborn/nheko (diff) | |
download | nheko-6d2789f4d5ffcd4e3e6ad8dfaae6925b0bf7d6ae.tar.xz |
Merge master into reactions
Diffstat (limited to 'resources/qml/delegates')
-rw-r--r-- | resources/qml/delegates/ImageMessage.qml | 7 | ||||
-rw-r--r-- | resources/qml/delegates/MessageDelegate.qml | 2 | ||||
-rw-r--r-- | resources/qml/delegates/NoticeMessage.qml | 2 | ||||
-rw-r--r-- | resources/qml/delegates/PlayableMediaMessage.qml | 10 | ||||
-rw-r--r-- | resources/qml/delegates/Reply.qml | 1 | ||||
-rw-r--r-- | resources/qml/delegates/TextMessage.qml | 2 |
6 files changed, 19 insertions, 5 deletions
diff --git a/resources/qml/delegates/ImageMessage.qml b/resources/qml/delegates/ImageMessage.qml index c7e6d127..62d9de60 100644 --- a/resources/qml/delegates/ImageMessage.qml +++ b/resources/qml/delegates/ImageMessage.qml @@ -6,10 +6,11 @@ Item { property double tempWidth: Math.min(parent ? parent.width : undefined, model.data.width < 1 ? parent.width : model.data.width) property double tempHeight: tempWidth * model.data.proportionalHeight - property bool tooHigh: tempHeight > timelineRoot.height / 2 + property double divisor: model.isReply ? 4 : 2 + property bool tooHigh: tempHeight > timelineRoot.height / divisor - height: tooHigh ? timelineRoot.height / 2 : tempHeight - width: tooHigh ? (timelineRoot.height / 2) / model.data.proportionalHeight : tempWidth + height: tooHigh ? timelineRoot.height / divisor : tempHeight + width: tooHigh ? (timelineRoot.height / divisor) / model.data.proportionalHeight : tempWidth Image { id: blurhash diff --git a/resources/qml/delegates/MessageDelegate.qml b/resources/qml/delegates/MessageDelegate.qml index ff103459..17fe7360 100644 --- a/resources/qml/delegates/MessageDelegate.qml +++ b/resources/qml/delegates/MessageDelegate.qml @@ -6,9 +6,11 @@ Item { Item { id: model property var data; + property bool isReply: false } property alias modelData: model.data + property alias isReply: model.isReply height: chooser.childrenRect.height property real implicitWidth: (chooser.child && chooser.child.implicitWidth) ? chooser.child.implicitWidth : width diff --git a/resources/qml/delegates/NoticeMessage.qml b/resources/qml/delegates/NoticeMessage.qml index 62ada6d1..be348329 100644 --- a/resources/qml/delegates/NoticeMessage.qml +++ b/resources/qml/delegates/NoticeMessage.qml @@ -1,4 +1,6 @@ TextMessage { font.italic: true color: colors.buttonText + height: isReply ? Math.min(chat.height / 8, implicitHeight) : undefined + clip: true } diff --git a/resources/qml/delegates/PlayableMediaMessage.qml b/resources/qml/delegates/PlayableMediaMessage.qml index 20177a04..bab524eb 100644 --- a/resources/qml/delegates/PlayableMediaMessage.qml +++ b/resources/qml/delegates/PlayableMediaMessage.qml @@ -20,8 +20,14 @@ Rectangle { Rectangle { id: videoContainer visible: model.data.type == MtxEvent.VideoMessage - width: Math.min(parent.width, model.data.width ? model.data.width : 400) // some media has 0 as size... - height: width*model.data.proportionalHeight + property double tempWidth: Math.min(parent ? parent.width : undefined, model.data.width < 1 ? 400 : model.data.width) + property double tempHeight: tempWidth * model.data.proportionalHeight + + property double divisor: model.isReply ? 4 : 2 + property bool tooHigh: tempHeight > timelineRoot.height / divisor + + height: tooHigh ? timelineRoot.height / divisor : tempHeight + width: tooHigh ? (timelineRoot.height / divisor) / model.data.proportionalHeight : tempWidth Image { anchors.fill: parent source: model.data.thumbnailUrl.replace("mxc://", "image://MxcImage/") diff --git a/resources/qml/delegates/Reply.qml b/resources/qml/delegates/Reply.qml index 90013de9..f9fd3f11 100644 --- a/resources/qml/delegates/Reply.qml +++ b/resources/qml/delegates/Reply.qml @@ -51,6 +51,7 @@ Item { MessageDelegate { id: reply width: parent.width + isReply: true } } diff --git a/resources/qml/delegates/TextMessage.qml b/resources/qml/delegates/TextMessage.qml index 7e4b1f29..bef4f76d 100644 --- a/resources/qml/delegates/TextMessage.qml +++ b/resources/qml/delegates/TextMessage.qml @@ -4,4 +4,6 @@ MatrixText { property string formatted: model.data.formattedBody text: "<style type=\"text/css\">a { color:"+colors.link+";}</style>" + formatted.replace("<pre>", "<pre style='white-space: pre-wrap'>") width: parent ? parent.width : undefined + height: isReply ? Math.min(chat.height / 8, implicitHeight) : undefined + clip: true } |