From 5814c6c02a6616c850d34da90ca9d1390e1de90a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= Date: Sun, 15 Apr 2018 01:35:29 +0300 Subject: [PATCH] Allow setting KAuth parent widget. --- src/util/externalcommand.cpp | 3 +++ src/util/externalcommand.h | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/src/util/externalcommand.cpp b/src/util/externalcommand.cpp index c62cc15..a165913 100644 --- a/src/util/externalcommand.cpp +++ b/src/util/externalcommand.cpp @@ -58,6 +58,8 @@ KAuth::ExecuteJob* ExternalCommand::m_job; QCA::PrivateKey* ExternalCommand::privateKey; QCA::Initializer* ExternalCommand::init; bool ExternalCommand::helperStarted = false; +QWidget* ExternalCommand::parent; + /** Creates a new ExternalCommand instance without Report. @param cmd the command to run @@ -368,6 +370,7 @@ bool ExternalCommand::startHelper() KAuth::Action action = KAuth::Action(QStringLiteral("org.kde.kpmcore.externalcommand.init")); action.setHelperId(QStringLiteral("org.kde.kpmcore.externalcommand")); action.setTimeout(10 * 24 * 3600 * 1000); // 10 days + action.setParentWidget(parent); QVariantMap arguments; arguments.insert(QStringLiteral("pubkey"), pubkey.toDER()); action.setArguments(arguments); diff --git a/src/util/externalcommand.h b/src/util/externalcommand.h index c56d84e..b260b10 100644 --- a/src/util/externalcommand.h +++ b/src/util/externalcommand.h @@ -99,6 +99,13 @@ public: /**< stop ExternalCommand Helper */ static void stopHelper(); + /**< Sets a parent widget for the authentication dialog. + * @param p parent widget + */ + static void setParentWidget(QWidget *p) { + parent = p; + } + Q_SIGNALS: void progress(int); void reportSignal(const QVariantMap&); @@ -122,6 +129,7 @@ private: static QCA::Initializer *init; static QCA::PrivateKey *privateKey; static bool helperStarted; + static QWidget *parent; }; #endif