aboutsummaryrefslogtreecommitdiffstats
path: root/src/ui/widgets/KeyTable.cpp
diff options
context:
space:
mode:
authorsaturneric <[email protected]>2024-07-28 15:24:14 +0000
committersaturneric <[email protected]>2024-07-28 15:24:14 +0000
commitcb15c1a06a033a6cf34be1baf9c48f6dade05e04 (patch)
tree90d24ace99d1a175b04ffbf33b66d1da68f34590 /src/ui/widgets/KeyTable.cpp
parentfeat: log pattern should be different at release mode (diff)
downloadGpgFrontend-cb15c1a06a033a6cf34be1baf9c48f6dade05e04.tar.gz
GpgFrontend-cb15c1a06a033a6cf34be1baf9c48f6dade05e04.zip
feat: double-click key table row wil show detail dialog
Diffstat (limited to 'src/ui/widgets/KeyTable.cpp')
-rw-r--r--src/ui/widgets/KeyTable.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/ui/widgets/KeyTable.cpp b/src/ui/widgets/KeyTable.cpp
index 0254840e..1ba44232 100644
--- a/src/ui/widgets/KeyTable.cpp
+++ b/src/ui/widgets/KeyTable.cpp
@@ -28,7 +28,9 @@
#include "ui/widgets/KeyTable.h"
+#include "core/function/gpg/GpgKeyGetter.h"
#include "ui/UserInterfaceUtils.h"
+#include "ui/dialog/keypair_details/KeyDetailsDialog.h"
namespace GpgFrontend::UI {
@@ -73,6 +75,16 @@ KeyTable::KeyTable(QWidget* parent, QSharedPointer<GpgKeyTableModel> model,
emit(&proxy_model_)
->SignalColumnTypeChange(column_filter_ & global_column_filter);
});
+ connect(this, &QTableView::doubleClicked, this,
+ [this](const QModelIndex& index) {
+ auto key =
+ GpgKeyGetter::GetInstance().GetKey(GetKeyIdByRow(index.row()));
+ if (!key.IsGood()) {
+ QMessageBox::critical(this, tr("Error"), tr("Key Not Found."));
+ return;
+ }
+ new KeyDetailsDialog(key, this);
+ });
}
void KeyTable::SetFilterKeyword(const QString& keyword) {