matrixion/resources/qml/delegates/Reply.qml

68 lines
1.4 KiB
QML
Raw Normal View History

2020-01-28 21:08:16 +03:00
import QtQuick 2.6
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.2
import QtQuick.Window 2.2
2020-06-24 17:24:22 +03:00
import im.nheko 1.0
2020-04-09 01:10:08 +03:00
Item {
2020-01-28 21:08:16 +03:00
id: replyComponent
property alias modelData: reply.modelData
property color userColor: "red"
width: parent.width
height: replyContainer.height
MouseArea {
anchors.fill: parent
preventStealing: true
onClicked: chat.positionViewAtIndex(chat.model.idToIndex(modelData.id), ListView.Contain)
cursorShape: Qt.PointingHandCursor
}
2020-01-28 21:08:16 +03:00
Rectangle {
id: colorLine
anchors.top: replyContainer.top
anchors.bottom: replyContainer.bottom
width: 4
2020-06-24 17:24:22 +03:00
color: TimelineManager.userColor(reply.modelData.userId, colors.window)
2020-01-28 21:08:16 +03:00
}
Column {
id: replyContainer
anchors.left: colorLine.right
anchors.leftMargin: 4
width: parent.width - 8
Text {
id: userName
text: TimelineManager.escapeEmoji(reply.modelData.userName)
2020-01-28 21:08:16 +03:00
color: replyComponent.userColor
textFormat: Text.RichText
MouseArea {
anchors.fill: parent
onClicked: chat.model.openUserProfile(reply.modelData.userId)
cursorShape: Qt.PointingHandCursor
}
}
MessageDelegate {
id: reply
width: parent.width
isReply: true
2020-01-28 21:08:16 +03:00
}
}
2020-04-09 01:07:04 +03:00
Rectangle {
id: backgroundItem
z: -1
height: replyContainer.height
width: Math.min(Math.max(reply.implicitWidth, userName.implicitWidth) + 8 + 4, parent.width)
color: Qt.rgba(userColor.r, userColor.g, userColor.b, 0.2)
}
2020-01-28 21:08:16 +03:00
}