Keep the E2EE info message around to allow displaying mnemonic
authorKevin Ottens <kevin.ottens@nextcloud.com>
Tue, 11 Aug 2020 12:55:51 +0000 (14:55 +0200)
committerKevin Ottens <kevin.ottens@nextcloud.com>
Tue, 11 Aug 2020 12:55:51 +0000 (14:55 +0200)
We lost the ability to display the E2EE mnemonic during the GUI
redesign and the info message wasn't displayed again on restart. So now
we display it every time, it still can be dismissed and the button text
is different in such a case to make the intent clearer.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
src/gui/accountsettings.cpp

index d625d7d2d2dab89595190372fbec684b26ce432e..2caf63b5092d57f7a8fd33de34fc608bca0e1462 100644 (file)
@@ -197,11 +197,15 @@ AccountSettings::AccountSettings(AccountState *accountState, QWidget *parent)
     connect(_accountState->account()->e2e(), &ClientSideEncryption::showMnemonic, this, &AccountSettings::slotShowMnemonic);
 
     connect(_accountState->account()->e2e(), &ClientSideEncryption::mnemonicGenerated, this, &AccountSettings::slotNewMnemonicGenerated);
-    if (_accountState->account()->e2e()->newMnemonicGenerated())
-    {
+    if (_accountState->account()->e2e()->newMnemonicGenerated()) {
         slotNewMnemonicGenerated();
     } else {
-        _ui->encryptionMessage->hide();
+        _ui->encryptionMessage->setText(tr("This account supports end-to-end encryption"));
+
+        auto *mnemonic = new QAction(tr("Display mnemonic"), this);
+        connect(mnemonic, &QAction::triggered, this, &AccountSettings::requesetMnemonic);
+        _ui->encryptionMessage->addAction(mnemonic);
+        _ui->encryptionMessage->show();
     }
 
     connect(UserModel::instance(), &UserModel::addAccount,