moment/src/gui/Pages/Chat/Timeline/EventFile.qml

64 lines
1.5 KiB
QML
Raw Normal View History

2019-12-19 07:46:16 -04:00
// SPDX-License-Identifier: LGPL-3.0-or-later
2019-09-14 17:48:53 -04:00
import QtQuick 2.12
import QtQuick.Layouts 1.12
2019-12-27 08:58:24 -04:00
import CppUtils 0.1
import "../../.."
2019-12-18 04:53:08 -04:00
import "../../../Base"
import "../../../Base/HTile"
2019-09-14 17:48:53 -04:00
HTile {
2019-12-16 18:05:09 -04:00
id: file
property EventMediaLoader loader
width: Math.min(
eventDelegate.width,
eventContent.maxMessageWidth,
Math.max(theme.chat.message.fileMinWidth, implicitWidth),
2019-11-11 05:34:46 -04:00
)
height: Math.max(theme.chat.message.avatarSize, implicitHeight)
2019-11-11 05:34:46 -04:00
contentItem: ContentRow {
tile: file
2019-09-14 17:48:53 -04:00
HIcon {
svgName: "download"
}
HColumnLayout {
TitleLabel {
elide: Text.ElideMiddle
text: loader.singleMediaInfo.media_title ||
qsTr("Untitled file")
}
SubtitleLabel {
tile: file
text: CppUtils.formattedBytes(
loader.singleMediaInfo.media_size,
)
}
}
2019-09-14 17:48:53 -04:00
}
2019-12-16 18:05:09 -04:00
onMiddleClicked: leftClicked()
2019-12-16 18:05:09 -04:00
onRightClicked: eventDelegate.openContextMenu()
onLeftClicked:
eventList.selectedCount ?
eventDelegate.toggleChecked() :
loader.isMedia ?
eventList.openMediaExternally(singleMediaInfo) :
Qt.openUrlExternally(loader.mediaUrl)
2019-12-16 18:05:09 -04:00
Binding on backgroundColor {
2020-03-26 21:01:36 -04:00
value: theme.chat.message.checkedBackground
when: eventDelegate.checked
}
2020-03-26 21:01:36 -04:00
Behavior on backgroundColor { HColorAnimation {} }
2019-09-14 17:48:53 -04:00
}