From 71b98aed56c248ad4523f4e888b80a4dc9e6b7e3 Mon Sep 17 00:00:00 2001 From: Ming Rui Zhang <mingrui.zhang@savoirfairelinux.com> Date: Mon, 4 Oct 2021 15:53:00 -0400 Subject: [PATCH] messagelistview: ui fixes 1. Add handler for DataTransferMessageDelegate MouseArea 2. Fix TextMessageDelegate crash caused by Loader 3. Fix SBSMessageBase padding when resizing 4. Use JamiListView for MessageListView 5. Fix ScrollToBottomButton DropShadow 6. Fix Typing indicator binding loop Change-Id: I59b97f3850fceb30f72c64f6cae54889fe4a18db --- src/commoncomponents/DataTransferMessageDelegate.qml | 7 ++++++- src/commoncomponents/ElidedTextLabel.qml | 5 ++++- src/commoncomponents/MaterialLineEdit.qml | 1 + src/commoncomponents/SBSMessageBase.qml | 2 +- src/commoncomponents/TextMessageDelegate.qml | 2 -- src/mainview/components/MessageListView.qml | 5 +---- src/mainview/components/ScrollToBottomButton.qml | 2 ++ 7 files changed, 15 insertions(+), 9 deletions(-) diff --git a/src/commoncomponents/DataTransferMessageDelegate.qml b/src/commoncomponents/DataTransferMessageDelegate.qml index 87b0dd464..7875e01dc 100644 --- a/src/commoncomponents/DataTransferMessageDelegate.qml +++ b/src/commoncomponents/DataTransferMessageDelegate.qml @@ -185,10 +185,15 @@ Loader { JamiTheme.messageInTxtColor MouseArea { anchors.fill: parent - propagateComposedEvents: true cursorShape: canOpen ? Qt.PointingHandCursor : Qt.ArrowCursor + onClicked: function (mouse) { + dataTransferItem.hoveredLink = canOpen ? + ("file:///" + Body) : "" + if (dataTransferItem.hoveredLink) + Qt.openUrlExternally(dataTransferItem.hoveredLink) + } } } Label { diff --git a/src/commoncomponents/ElidedTextLabel.qml b/src/commoncomponents/ElidedTextLabel.qml index b62670fff..eee8c000e 100644 --- a/src/commoncomponents/ElidedTextLabel.qml +++ b/src/commoncomponents/ElidedTextLabel.qml @@ -21,7 +21,7 @@ import QtQuick.Controls import net.jami.Constants 1.1 -Label { +TextEdit { id: root property string eText : "" @@ -38,6 +38,9 @@ Label { verticalAlignment: Text.AlignVCenter color: JamiTheme.textColor + readOnly: true + selectByMouse: true + TextMetrics { id: elided diff --git a/src/commoncomponents/MaterialLineEdit.qml b/src/commoncomponents/MaterialLineEdit.qml index 837b9482d..c9af9eb95 100644 --- a/src/commoncomponents/MaterialLineEdit.qml +++ b/src/commoncomponents/MaterialLineEdit.qml @@ -40,6 +40,7 @@ TextField { wrapMode: Text.Wrap readOnly: false selectByMouse: true + mouseSelectionMode: TextInput.SelectCharacters selectionColor: JamiTheme.placeholderTextColor font.pointSize: JamiTheme.materialLineEditPointSize diff --git a/src/commoncomponents/SBSMessageBase.qml b/src/commoncomponents/SBSMessageBase.qml index db09eaf35..80910de5a 100644 --- a/src/commoncomponents/SBSMessageBase.qml +++ b/src/commoncomponents/SBSMessageBase.qml @@ -61,7 +61,7 @@ Control { anchors.centerIn: parent - width: parent.width + width: parent.width - hPadding * 2 spacing: 2 diff --git a/src/commoncomponents/TextMessageDelegate.qml b/src/commoncomponents/TextMessageDelegate.qml index e8d496677..7cea43fe3 100644 --- a/src/commoncomponents/TextMessageDelegate.qml +++ b/src/commoncomponents/TextMessageDelegate.qml @@ -67,8 +67,6 @@ SBSMessageBase { }, Loader { id: extraContent - width: sourceComponent.width - height: sourceComponent.height anchors.right: isOutgoing ? parent.right : undefined property real minSize: 192 property real maxSize: 320 diff --git a/src/mainview/components/MessageListView.qml b/src/mainview/components/MessageListView.qml index 9aec8fa86..e82cbafc6 100644 --- a/src/mainview/components/MessageListView.qml +++ b/src/mainview/components/MessageListView.qml @@ -28,7 +28,7 @@ import net.jami.Constants 1.1 import "../../commoncomponents" -ListView { +JamiListView { id: root function getDistanceToBottom() { @@ -178,12 +178,9 @@ ListView { displayMarginEnd: 4096 maximumFlickVelocity: 2048 verticalLayoutDirection: ListView.BottomToTop - clip: true boundsBehavior: Flickable.StopAtBounds currentIndex: -1 - ScrollBar.vertical: ScrollBar {} - model: MessagesAdapter.messageListModel delegate: DelegateChooser { diff --git a/src/mainview/components/ScrollToBottomButton.qml b/src/mainview/components/ScrollToBottomButton.qml index 7f3c0245c..aabe10cff 100644 --- a/src/mainview/components/ScrollToBottomButton.qml +++ b/src/mainview/components/ScrollToBottomButton.qml @@ -120,10 +120,12 @@ Control { layer { enabled: true effect: DropShadow { + z: -1 horizontalOffset: 3.0 verticalOffset: 3.0 radius: 8.0 color: JamiTheme.shadowColor + transparentBorder: true } } } -- GitLab