X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/19fdc5b67990bb75009a1fc511619bd449d559d7..bdb098c0f829d10ef0dcd587c63af65d3cf59658:/src/admin/workerintegration.cpp diff --git a/src/admin/workerintegration.cpp b/src/admin/workerintegration.cpp index 0b95ec782..a66357498 100644 --- a/src/admin/workerintegration.cpp +++ b/src/admin/workerintegration.cpp @@ -122,7 +122,9 @@ WorkerIntegration::WorkerIntegration(DolphinMainWindow *parent, QAction *actAsAd void WorkerIntegration::createActAsAdminAction(KActionCollection *actionCollection, DolphinMainWindow *dolphinMainWindow) { - Q_ASSERT(!instance); + Q_ASSERT(!instance /* We never want to construct more than one instance, + however in automatic testing sometimes multiple DolphinMainWindows are created, so this assert is diluted to accommodate for that: */ + || instance->parent() != dolphinMainWindow); if (isWorkerInstalled()) { QAction *actAsAdminAction = actionCollection->addAction(QStringLiteral("act_as_admin")); actAsAdminAction->setText(actionName()); @@ -134,6 +136,11 @@ void WorkerIntegration::createActAsAdminAction(KActionCollection *actionCollecti } } +QAction *WorkerIntegration::FriendAccess::actAsAdminAction() +{ + return instance->m_actAsAdminAction; +} + void WorkerIntegration::toggleActAsAdmin() { auto dolphinMainWindow = static_cast(parent()); @@ -157,7 +164,7 @@ void WorkerIntegration::toggleActAsAdmin() KStandardGuiItem::cancel()); warningDialog.setDontAskAgainText(i18nc("@option:check", "Do not warn me about these risks again")); - risksAccepted = warningDialog.exec() != 4 /* Cancel */; + risksAccepted = warningDialog.exec() == KMessageDialog::PrimaryAction; if (warningDialog.isDontAskAgainChecked()) { KMessageBox::saveDontShowAgainContinue(warningDontShowAgainName); } @@ -188,7 +195,4 @@ void WorkerIntegration::updateActAsAdminAction() } } -QAction *WorkerIntegration::actAsAdminAction() -{ - return instance->m_actAsAdminAction; -} +#include "moc_workerintegration.cpp"