aboutsummaryrefslogtreecommitdiff
path: root/qml/ChatlistItem.qml
diff options
context:
space:
mode:
Diffstat (limited to 'qml/ChatlistItem.qml')
-rw-r--r--qml/ChatlistItem.qml31
1 files changed, 22 insertions, 9 deletions
diff --git a/qml/ChatlistItem.qml b/qml/ChatlistItem.qml
index 284f9d2..d087f4b 100644
--- a/qml/ChatlistItem.qml
+++ b/qml/ChatlistItem.qml
@@ -1,11 +1,10 @@
+import DeltaChat 1.0
+import QtQml.Models 2.1
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Layouts 1.12
-import QtQml.Models 2.1
import org.kde.kirigami 2.13 as Kirigami
-import DeltaChat 1.0
-
Kirigami.AbstractListItem {
id: root
@@ -23,12 +22,14 @@ Kirigami.AbstractListItem {
source: root.avatarSource
name: root.chatName
color: root.context.getChat(root.chatId).getColor()
+
MouseArea {
anchors.fill: parent
acceptedButtons: Qt.RightButton
onClicked: {
if (mouse.button === Qt.RightButton)
- contextMenu.popup()
+ contextMenu.popup();
+
}
Menu {
@@ -39,25 +40,32 @@ Kirigami.AbstractListItem {
text: "Pin chat"
onTriggered: root.context.setChatVisibility(root.chatId, 2)
}
+
Action {
text: "Unpin chat"
onTriggered: root.context.setChatVisibility(root.chatId, 0)
}
+
Action {
text: "Archive chat"
onTriggered: root.context.setChatVisibility(root.chatId, 1)
}
+
Action {
text: "Unarchive chat"
onTriggered: root.context.setChatVisibility(root.chatId, 0)
}
+
Action {
icon.name: "delete"
text: "Delete chat"
onTriggered: root.context.deleteChat(root.chatId)
}
+
}
+
}
+
}
ColumnLayout {
@@ -68,28 +76,29 @@ Kirigami.AbstractListItem {
font.weight: Font.Bold
Layout.fillWidth: true
}
+
Label {
text: root.username
font: Kirigami.Theme.smallFont
Layout.fillWidth: true
}
+
}
Label {
text: root.isContactRequest ? "NEW" : root.freshMsgCnt
visible: root.freshMsgCnt > 0 || root.isContactRequest
-
// Align label in the center of a badge.
verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter
-
// Make sure badge is not too narrow.
Layout.minimumWidth: height
background: Rectangle {
- color: Kirigami.Theme.alternateBackgroundColor
- radius: 0.25 * height
+ color: Kirigami.Theme.alternateBackgroundColor
+ radius: 0.25 * height
}
+
}
// "Pinned" badge
@@ -99,11 +108,15 @@ Kirigami.AbstractListItem {
width: Kirigami.Units.gridUnit
height: Kirigami.Units.gridUnit
radius: 0.25 * height
- Kirigami.Icon {
+
+ Kirigami.Icon {
source: "pin"
height: Kirigami.Units.gridUnit
width: Kirigami.Units.gridUnit
}
+
}
+
}
+
}