Differentiate between E2EE not being enabled at all vs. E2EE being enabled already...
authorClaudio Cambra <claudio.cambra@nextcloud.com>
Tue, 15 Nov 2022 14:31:27 +0000 (15:31 +0100)
committerClaudio Cambra <claudio.cambra@gmail.com>
Thu, 1 Dec 2022 10:50:18 +0000 (11:50 +0100)
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
src/gui/accountsettings.cpp

index 221aaa9ca273e533032d72a6a08692ba2e110a82..bf00276c6b08f657f2f67a77a485d55451f2d3c2 100644 (file)
@@ -1486,6 +1486,16 @@ void AccountSettings::initializeE2eEncryption()
 
         auto *const actionEnableE2e = addActionToEncryptionMessage(tr("Set up encryption"), e2EeUiActionEnableEncryptionId);
         connect(actionEnableE2e, &QAction::triggered, this, &AccountSettings::slotE2eEncryptionGenerateKeys);
+
+        connect(_accountState->account()->e2e(), &ClientSideEncryption::initializationFinished, this, [this] {
+            if (!_accountState->account()->e2e()->_publicKey.isNull()) {
+                _ui->encryptionMessage->setText(tr("End-to-End encryption has been enabled on this account with another device."
+                                                   "<br>"
+                                                   "It can be enabled on this device by entering your mnemonic."));
+            }
+        });
+        _accountState->account()->setE2eEncryptionKeysGenerationAllowed(false);
+        _accountState->account()->e2e()->initialize(_accountState->account());
     }
 }