95 lines
3.3 KiB
QML
95 lines
3.3 KiB
QML
import QtQuick 2.15
|
|
import QtQuick.Controls 2.15
|
|
import QtQuick.Layouts 1.15
|
|
import QtGraphicalEffects 1.15
|
|
|
|
import Storybook 1.0
|
|
import Models 1.0
|
|
|
|
import StatusQ.Core.Theme 0.1
|
|
import shared.controls.chat 1.0
|
|
|
|
SplitView {
|
|
|
|
Logs { id: logs }
|
|
orientation: Qt.Vertical
|
|
|
|
SplitView {
|
|
|
|
SplitView.fillWidth: true
|
|
SplitView.fillHeight: true
|
|
|
|
Pane {
|
|
SplitView.fillWidth: true
|
|
Rectangle {
|
|
id: wrapper
|
|
anchors.fill: parent
|
|
color: Theme.palette.statusChatInput.secondaryBackgroundColor
|
|
|
|
ChatInputLinksPreviewArea {
|
|
id: chatInputLinkPreviewsArea
|
|
anchors.centerIn: parent
|
|
width: parent.width
|
|
imagePreviewArray: ["https://picsum.photos/200/300?random=1", "https://picsum.photos/200/300?random=1"]
|
|
linkPreviewModel: showLinkPreviewSettings ? emptyModel : mockedLinkPreviewModel
|
|
paymentRequestModel: mockedPaymentRequestModel
|
|
showLinkPreviewSettings: !linkPreviewEnabledSwitch.checked
|
|
visible: hasContent
|
|
|
|
onImageRemoved: (index) => logs.logEvent("ChatInputLinksPreviewArea::onImageRemoved: " + index)
|
|
onImageClicked: (chatImage) => logs.logEvent("ChatInputLinksPreviewArea::onImageClicked: " + chatImage)
|
|
onLinkReload: (link) => logs.logEvent("ChatInputLinksPreviewArea::onLinkReload: " + link)
|
|
onLinkClicked: (link) => logs.logEvent("ChatInputLinksPreviewArea::onLinkClicked: " + link)
|
|
|
|
onEnableLinkPreview: () => {
|
|
linkPreviewEnabledSwitch.checked = true
|
|
logs.logEvent("ChatInputLinksPreviewArea::onEnableLinkPreview")
|
|
}
|
|
onEnableLinkPreviewForThisMessage: () => logs.logEvent("ChatInputLinksPreviewArea::onEnableLinkPreviewForThisMessage")
|
|
onDisableLinkPreview: () => logs.logEvent("ChatInputLinksPreviewArea::onDisableLinkPreview")
|
|
onDismissLinkPreviewSettings: () => logs.logEvent("ChatInputLinksPreviewArea::onDismissLinkPreviewSettings")
|
|
onDismissLinkPreview: (index) => logs.logEvent("ChatInputLinksPreviewArea::onDismissLinkPreview: " + index)
|
|
}
|
|
}
|
|
}
|
|
|
|
Pane {
|
|
SplitView.preferredWidth: 300
|
|
SplitView.fillHeight: true
|
|
ColumnLayout {
|
|
Label {
|
|
text: "Links preview enabled"
|
|
}
|
|
Switch {
|
|
id: linkPreviewEnabledSwitch
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
LogsAndControlsPanel {
|
|
id: logsAndControlsPanel
|
|
|
|
SplitView.minimumHeight: 100
|
|
SplitView.preferredHeight: 200
|
|
|
|
logsView.logText: logs.logText
|
|
}
|
|
|
|
ListModel {
|
|
id: emptyModel
|
|
}
|
|
|
|
LinkPreviewModel {
|
|
id: mockedLinkPreviewModel
|
|
}
|
|
|
|
PaymentRequestModel {
|
|
id: mockedPaymentRequestModel
|
|
}
|
|
}
|
|
|
|
// category: Panels
|
|
|
|
// https://www.figma.com/file/Mr3rqxxgKJ2zMQ06UAKiWL/💬-Chat⎜Desktop?type=design&node-id=22341-184809&mode=design&t=VWBVK4DOUxr1BmTp-0
|