diff options
| author | Osmium Sorcerer <os@sof.beauty> | 2026-09-23 21:49:39 +0000 |
|---|---|---|
| committer | Osmium Sorcerer <os@sof.beauty> | 2026-09-23 21:49:39 +0000 |
| commit | 9b1903f4b902a4e9d1aa16888f82d8268c2cf4ef (patch) | |
| tree | 4840f09cff2b5d43435eedc28d96dccc5daff374 /src/widgets/aooptionsdialog.cpp | |
| parent | 05db351e119beb53ffc0046509a022ae9c471f15 (diff) | |
Add dialogs for hardware key generation UI
The key creation is handed off to the platform implementation. Windows
will show its own Windows Security UI. On Unix, the application itself
provides the PIN directly, enforcing a minimum of six characters.
Diffstat (limited to 'src/widgets/aooptionsdialog.cpp')
| -rw-r--r-- | src/widgets/aooptionsdialog.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/widgets/aooptionsdialog.cpp b/src/widgets/aooptionsdialog.cpp index d9cbcb8..95b7420 100644 --- a/src/widgets/aooptionsdialog.cpp +++ b/src/widgets/aooptionsdialog.cpp @@ -8,8 +8,8 @@ #include "networkmanager.h" #include "options.h" -// Hopefully temporary. #include "widgets/key_generate_dialog.h" +#include "widgets/hardware_key_generate_dialog.h" #include <QCollator> #include <QDoubleSpinBox> @@ -607,7 +607,7 @@ void AOOptionsDialog::setupUI() KeyGenerateDialog keygen_dialog(this); if (keygen_dialog.exec() == QDialog::Accepted) { - int err = generate_key(keygen_dialog.key_name(), keygen_dialog.key_password()); + int err = generate_software_key(keygen_dialog.key_name(), keygen_dialog.key_password()); if (err) { QMessageBox::warning(this, "Error", QString("Key generation failed, code %1").arg(err)); @@ -615,6 +615,17 @@ void AOOptionsDialog::setupUI() ao_app->keyring_model.load_keys(); } }); + FROM_UI(QPushButton, key_generate_hw); + connect(ui_key_generate_hw, &QPushButton::clicked, this, [=, this] { + HardwareKeyDialog hw_keygen_dialog(this); + if (hw_keygen_dialog.exec() == QDialog::Accepted) + { + ao_app->keyring_model.load_keys(); + } + }); + + ui_key_generate_hw->setEnabled(keyring_hardware_available()); + FROM_UI(QPushButton, key_delete); FROM_UI(QTableView, keyring_table); |
