From 28d3e0b57392b0be1387021694b88c5336363628 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Mon, 27 Nov 2017 22:51:47 +0100 Subject: Encrypt to all keys if we find multiple --- framework/src/domain/composercontroller.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/framework/src/domain/composercontroller.cpp b/framework/src/domain/composercontroller.cpp index 91d40c29..d5ee984c 100644 --- a/framework/src/domain/composercontroller.cpp +++ b/framework/src/domain/composercontroller.cpp @@ -159,12 +159,12 @@ public: [this, addressee](const std::vector &keys) { if (!keys.empty()) { if (keys.size() > 1 ) { - SinkWarning() << "Found more than one key, picking first one."; + SinkWarning() << "Found more than one key, encrypting to all of them."; } SinkLog() << "Found key: " << keys.front().primaryFingerprint(); for (auto item : findItems(addressee)) { item->setData(true, ComposerController::KeyFoundRole); - item->setData(QVariant::fromValue(keys.front()), ComposerController::KeyRole); + item->setData(QVariant::fromValue(keys), ComposerController::KeyRole); } } else { SinkWarning() << "Failed to find key for recipient."; @@ -200,7 +200,8 @@ public: { std::vector keys; traverse(this, [&] (QStandardItem *item) { - keys.push_back(item->data(ComposerController::KeyRole).value()); + auto l = item->data(ComposerController::KeyRole).value>(); + keys.insert(std::end(keys), std::begin(l), std::end(l)); }); return keys; } -- cgit v1.2.3