diff options
Diffstat (limited to 'src/ui')
-rw-r--r-- | src/ui/CMakeLists.txt | 3 | ||||
-rw-r--r-- | src/ui/dialog/controller/ModuleControllerDialog.cpp | 4 | ||||
-rw-r--r-- | src/ui/function/RaisePinentry.cpp | 112 | ||||
-rw-r--r-- | src/ui/function/RaisePinentry.h | 60 | ||||
-rw-r--r-- | src/ui/main_window/MainWindow.cpp | 4 | ||||
-rw-r--r-- | src/ui/main_window/MainWindow.h | 5 | ||||
-rw-r--r-- | src/ui/main_window/MainWindowSlotUI.cpp | 7 |
7 files changed, 4 insertions, 191 deletions
diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt index bb201390..0363f3bd 100644 --- a/src/ui/CMakeLists.txt +++ b/src/ui/CMakeLists.txt @@ -67,9 +67,6 @@ endif() # link gpgfrontend_core target_link_libraries(gpgfrontend_ui gpgfrontend_core) -# link buddled pinentry -target_link_libraries(gpgfrontend_ui gpgfrontend_pinentry) - # set up pch target_precompile_headers(gpgfrontend_ui PUBLIC GpgFrontendUI.h) diff --git a/src/ui/dialog/controller/ModuleControllerDialog.cpp b/src/ui/dialog/controller/ModuleControllerDialog.cpp index 6c0e6d0a..8f1df81c 100644 --- a/src/ui/dialog/controller/ModuleControllerDialog.cpp +++ b/src/ui/dialog/controller/ModuleControllerDialog.cpp @@ -93,6 +93,10 @@ ModuleControllerDialog::ModuleControllerDialog(QWidget* parent) Module::TriggerEvent(event_id); }); + connect(ui_->pushButton_4, &QPushButton::clicked, this, []() { + + }); + connect(ui_->showModsDirButton, &QPushButton::clicked, this, [=]() { QDesktopServices::openUrl(QUrl::fromLocalFile( GlobalSettingStation::GetInstance().GetModulesDir())); diff --git a/src/ui/function/RaisePinentry.cpp b/src/ui/function/RaisePinentry.cpp deleted file mode 100644 index b119c5f8..00000000 --- a/src/ui/function/RaisePinentry.cpp +++ /dev/null @@ -1,112 +0,0 @@ -/** - * Copyright (C) 2021 Saturneric <[email protected]> - * - * This file is part of GpgFrontend. - * - * GpgFrontend is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GpgFrontend is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GpgFrontend. If not, see <https://www.gnu.org/licenses/>. - * - * The initial version of the source code is inherited from - * the gpg4usb project, which is under GPL-3.0-or-later. - * - * All the source code of GpgFrontend was modified and released by - * Saturneric <[email protected]> starting on May 12, 2021. - * - * SPDX-License-Identifier: GPL-3.0-or-later - * - */ - -#include "RaisePinentry.h" - -#include "core/function/CoreSignalStation.h" -#include "core/model/GpgPassphraseContext.h" -#include "core/utils/CacheUtils.h" -#include "pinentry/pinentrydialog.h" - -namespace GpgFrontend::UI { - -auto FindTopMostWindow(QWidget* fallback) -> QWidget* { - QList<QWidget*> top_widgets = QApplication::topLevelWidgets(); - foreach (QWidget* widget, top_widgets) { - if (widget->isActiveWindow()) { - return widget; - } - } - return fallback; -} - -RaisePinentry::RaisePinentry(QWidget* parent, - QSharedPointer<GpgPassphraseContext> context) - : QWidget(parent), context_(std::move(context)) {} - -auto RaisePinentry::Exec() -> int { - bool ask_for_new = context_->IsAskForNew() && - context_->GetPassphraseInfo().isEmpty() && - context_->GetUidsInfo().isEmpty(); - - auto* pinentry = - new PinEntryDialog(FindTopMostWindow(this), 0, 15, true, ask_for_new, - ask_for_new ? tr("Repeat Passphrase:") : QString(), - tr("Show passphrase"), tr("Hide passphrase")); - - if (context_->IsPreWasBad()) { - pinentry->setError(tr("Given Passphrase was wrong. Please retry.")); - } - - pinentry->setPrompt(tr("Passphrase:")); - - if (!context_->GetUidsInfo().isEmpty()) { - pinentry->setDescription(QString("Please provide Passphrase of Key:\n%1\n") - .arg(context_->GetUidsInfo())); - } - - struct pinentry pinentry_info; - pinentry->setPinentryInfo(pinentry_info); - - pinentry->setRepeatErrorText(tr("Passphrases do not match")); - pinentry->setGenpinLabel(QString("")); - pinentry->setGenpinTT(QString("")); - pinentry->setCapsLockHint(tr("Caps Lock is on")); - pinentry->setFormattedPassphrase({false, QString()}); - pinentry->setConstraintsOptions({false, QString(), QString(), QString()}); - - pinentry->setWindowTitle(tr("Bundled Pinentry")); - - /* If we reuse the same dialog window. */ - pinentry->setPin(QString()); - pinentry->setOkText(tr("Confirm")); - pinentry->setCancelText(tr("Cancel")); - - connect(pinentry, &PinEntryDialog::finished, this, - [pinentry, this](int result) { - bool ret = result != 0; - - if (!ret) { - emit CoreSignalStation::GetInstance() - -> SignalUserInputPassphraseCallback({}); - return -1; - } - - auto pin = pinentry->pin().toUtf8(); - - context_->SetPassphrase(pin); - emit CoreSignalStation::GetInstance() - -> SignalUserInputPassphraseCallback(context_); - return 0; - }); - connect(pinentry, &PinEntryDialog::finished, this, &QWidget::deleteLater); - - pinentry->open(); - return 0; -} -} // namespace GpgFrontend::UI diff --git a/src/ui/function/RaisePinentry.h b/src/ui/function/RaisePinentry.h deleted file mode 100644 index 40175dfd..00000000 --- a/src/ui/function/RaisePinentry.h +++ /dev/null @@ -1,60 +0,0 @@ -/** - * Copyright (C) 2021 Saturneric <[email protected]> - * - * This file is part of GpgFrontend. - * - * GpgFrontend is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GpgFrontend is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GpgFrontend. If not, see <https://www.gnu.org/licenses/>. - * - * The initial version of the source code is inherited from - * the gpg4usb project, which is under GPL-3.0-or-later. - * - * All the source code of GpgFrontend was modified and released by - * Saturneric <[email protected]> starting on May 12, 2021. - * - * SPDX-License-Identifier: GPL-3.0-or-later - * - */ - -#pragma once - -#include "ui/GpgFrontendUI.h" - -namespace GpgFrontend { -class GpgPassphraseContext; -} - -namespace GpgFrontend::UI { - -class RaisePinentry : public QWidget { - Q_OBJECT - public: - /** - * @brief Construct a new Raise Pinentry object - * - * @param parent - */ - explicit RaisePinentry(QWidget *parent, QSharedPointer<GpgPassphraseContext>); - - /** - * @brief - * - * @return int - */ - auto Exec() -> int; - - private: - QSharedPointer<GpgPassphraseContext> context_; -}; - -} // namespace GpgFrontend::UI
\ No newline at end of file diff --git a/src/ui/main_window/MainWindow.cpp b/src/ui/main_window/MainWindow.cpp index 1e795325..1b9329c7 100644 --- a/src/ui/main_window/MainWindow.cpp +++ b/src/ui/main_window/MainWindow.cpp @@ -45,10 +45,6 @@ namespace GpgFrontend::UI { MainWindow::MainWindow() : GeneralMainWindow("main_window") { this->setMinimumSize(1200, 700); this->setWindowTitle(qApp->applicationName()); - - connect(CoreSignalStation::GetInstance(), - &CoreSignalStation::SignalNeedUserInputPassphrase, this, - &MainWindow::SlotRaisePinentry); } void MainWindow::Init() noexcept { diff --git a/src/ui/main_window/MainWindow.h b/src/ui/main_window/MainWindow.h index f53a4a03..b253a667 100644 --- a/src/ui/main_window/MainWindow.h +++ b/src/ui/main_window/MainWindow.h @@ -233,11 +233,6 @@ class MainWindow : public GeneralMainWindow { */ void SlotSetRestartNeeded(int); - /** - * @details Open a new tab for path - */ - void SlotRaisePinentry(QSharedPointer<GpgPassphraseContext>); - private slots: /** diff --git a/src/ui/main_window/MainWindowSlotUI.cpp b/src/ui/main_window/MainWindowSlotUI.cpp index d2b39ee7..809a4af9 100644 --- a/src/ui/main_window/MainWindowSlotUI.cpp +++ b/src/ui/main_window/MainWindowSlotUI.cpp @@ -33,7 +33,6 @@ #include "core/model/SettingsObject.h" #include "ui/UserInterfaceUtils.h" #include "ui/dialog/Wizard.h" -#include "ui/function/RaisePinentry.h" #include "ui/main_window/KeyMgmt.h" #include "ui/struct/settings_object/AppearanceSO.h" #include "ui/widgets/TextEdit.h" @@ -212,10 +211,4 @@ void MainWindow::SlotUpdateCryptoMenuStatus(unsigned int type) { } } -void MainWindow::SlotRaisePinentry( - QSharedPointer<GpgPassphraseContext> context) { - auto* function = new RaisePinentry(this, context); - function->Exec(); -} - } // namespace GpgFrontend::UI |