From b84375749b12d511cff05ac092f7eb2f88970da3 Mon Sep 17 00:00:00 2001 From: Arnav Rawat Date: Wed, 10 Feb 2021 10:33:35 +0000 Subject: [PATCH] Close menu after selecting a reaction Fixes #256 --- imports/NeoChat/Dialog/EmojiDialog.qml | 2 +- imports/NeoChat/Dialog/UserDetailDialog.qml | 22 +++++++++++++++++++-- imports/NeoChat/Panel/RoomDrawer.qml | 2 +- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/imports/NeoChat/Dialog/EmojiDialog.qml b/imports/NeoChat/Dialog/EmojiDialog.qml index 65eeccff4..bde56c21b 100644 --- a/imports/NeoChat/Dialog/EmojiDialog.qml +++ b/imports/NeoChat/Dialog/EmojiDialog.qml @@ -24,7 +24,7 @@ QQC2.Popup { implicitHeight: Kirigami.Units.gridUnit * 20 contentItem: EmojiPicker { - onChosen: react(emoji); + onChosen: react(emoji) emojiModel: EmojiModel {} } } diff --git a/imports/NeoChat/Dialog/UserDetailDialog.qml b/imports/NeoChat/Dialog/UserDetailDialog.qml index 9200016e0..be5c7fb25 100644 --- a/imports/NeoChat/Dialog/UserDetailDialog.qml +++ b/imports/NeoChat/Dialog/UserDetailDialog.qml @@ -9,6 +9,8 @@ import QtQuick.Controls 2.12 as QQC2 import QtQuick.Layouts 1.12 import org.kde.kirigami 2.13 as Kirigami +import org.kde.neochat 1.0 + import NeoChat.Component 1.0 import NeoChat.Setting 1.0 @@ -109,7 +111,10 @@ Kirigami.OverlaySheet { action: Kirigami.Action { text: i18n("Kick this user") icon.name: "im-kick-user" - onTriggered: room.kickMember(user.id) + onTriggered: { + room.kickMember(user.id) + root.close() + } } } Kirigami.BasicListItem { @@ -119,7 +124,20 @@ Kirigami.OverlaySheet { text: i18n("Ban this user") icon.name: "im-ban-user" icon.color: Kirigami.Theme.negativeTextColor - onTriggered: room.banMember(user.id) + onTriggered: { + room.banMember(user.id) + root.close() + } + } + } + Kirigami.BasicListItem { + action: Kirigami.Action { + text: i18n("Open a private chat") + icon.name: "document-send" + onTriggered: { + Controller.activeConnection.requestDirectChat(user) + root.close() + } } } Component { diff --git a/imports/NeoChat/Panel/RoomDrawer.qml b/imports/NeoChat/Panel/RoomDrawer.qml index 9593046a8..e6085f49c 100644 --- a/imports/NeoChat/Panel/RoomDrawer.qml +++ b/imports/NeoChat/Panel/RoomDrawer.qml @@ -237,7 +237,7 @@ Kirigami.OverlayDrawer { } action: Kirigami.Action { - onTriggered: userDetailDialog.createObject(ApplicationWindow.overlay, {"room": room, "user": user}).open() + onTriggered: userDetailDialog.createObject(ApplicationWindow.overlay, {"room": room, "user": user, "displayName": name, "avatarMediaId": avatar}).open() } } }