mirror of
https://github.com/status-im/status-desktop.git
synced 2025-01-09 13:56:10 +00:00
f9f860a215
LinksMessageView component will receive the urls from nim as string and it will only forward the string to getLinkPreviewData slot implemented in nim together with some settings (supported img extensions and unfurling preferences) On nim side the urls will be parsed and validated using the settings received from qml. Images are now validated before sending them to the UI using the HEAD request.
89 lines
2.6 KiB
QML
89 lines
2.6 KiB
QML
import QtQuick 2.13
|
|
import QtGraphicalEffects 1.13
|
|
import QtQuick.Layouts 1.13
|
|
|
|
import utils 1.0
|
|
import shared 1.0
|
|
|
|
Item {
|
|
id: root
|
|
property bool isCurrentUser: false
|
|
readonly property int smallCorner: Style.current.radius / 2
|
|
readonly property int bigCorner: Style.current.radius * 2
|
|
readonly property int fakeCornerSize: bigCorner * 2
|
|
|
|
Rectangle {
|
|
width: parent.width + 2
|
|
height: parent.height + 2
|
|
anchors.top: parent.top
|
|
anchors.left: parent.left
|
|
anchors.topMargin: -1
|
|
anchors.leftMargin: -1
|
|
radius: root.bigCorner
|
|
border.width: 2
|
|
border.color: Style.current.border
|
|
}
|
|
Rectangle {
|
|
anchors.bottom: parent.bottom
|
|
anchors.left: parent.left
|
|
anchors.bottomMargin: -1
|
|
anchors.leftMargin: -1
|
|
width: root.fakeCornerSize
|
|
height: root.fakeCornerSize
|
|
radius: root.smallCorner
|
|
visible: !root.isCurrentUser
|
|
border.width: 2
|
|
border.color: Style.current.border
|
|
}
|
|
Rectangle {
|
|
anchors.bottom: parent.bottom
|
|
anchors.right: parent.right
|
|
anchors.bottomMargin: -1
|
|
anchors.rightMargin: -1
|
|
width: root.fakeCornerSize
|
|
height: root.fakeCornerSize
|
|
radius: root.smallCorner
|
|
visible: root.isCurrentUser
|
|
border.width: 2
|
|
border.color: Style.current.border
|
|
}
|
|
|
|
Rectangle {
|
|
anchors.fill: parent
|
|
color: Style.current.background
|
|
|
|
layer.enabled: true
|
|
layer.effect: OpacityMask {
|
|
maskSource: Item {
|
|
width: root.width
|
|
height: root.height
|
|
|
|
Rectangle {
|
|
anchors.top: parent.top
|
|
anchors.left: parent.left
|
|
width: parent.width
|
|
height: parent.height
|
|
radius: root.bigCorner
|
|
}
|
|
|
|
Rectangle {
|
|
anchors.bottom: parent.bottom
|
|
anchors.left: parent.left
|
|
width: root.fakeCornerSize
|
|
height: root.fakeCornerSize
|
|
radius: root.smallCorner
|
|
visible: !root.isCurrentUser
|
|
}
|
|
Rectangle {
|
|
anchors.bottom: parent.bottom
|
|
anchors.right: parent.right
|
|
width: root.fakeCornerSize
|
|
height: root.fakeCornerSize
|
|
radius: root.smallCorner
|
|
visible: root.isCurrentUser
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|