Settings: Allow adding at least one account #3721
authorChristian Kamm <mail@ckamm.de>
Thu, 3 Sep 2015 04:14:49 +0000 (06:14 +0200)
committerChristian Kamm <mail@ckamm.de>
Thu, 3 Sep 2015 04:14:49 +0000 (06:14 +0200)
We always show the 'Add Account' button when no account exists,
even When the 'singleAccount' option is enabled.

src/gui/generalsettings.cpp
src/gui/generalsettings.h

index 71a421a64325c333d1f4c69e192c9db86c41e688..3951f1782261668b8c85d67779aa690e7084333f 100644 (file)
@@ -20,7 +20,7 @@
 #include "utility.h"
 #include "configfile.h"
 #include "owncloudsetupwizard.h"
-
+#include "accountmanager.h"
 
 #include "updater/updater.h"
 #include "updater/ocupdater.h"
@@ -78,9 +78,11 @@ GeneralSettings::GeneralSettings(QWidget *parent) :
     connect(_ui->ignoredFilesButton, SIGNAL(clicked()), SLOT(slotIgnoreFilesEditor()));
     connect(_ui->addAccountButton, SIGNAL(clicked()), SLOT(slotOpenAccountWizard()));
 
-    if (Theme::instance()->singleAccount()) {
-        _ui->addAccountButton->setVisible(false);
-    }
+    connect(AccountManager::instance(), SIGNAL(accountAdded(AccountState*)),
+            SLOT(slotAccountAddedOrRemoved()));
+    connect(AccountManager::instance(), SIGNAL(accountRemoved(AccountState*)),
+            SLOT(slotAccountAddedOrRemoved()));
+    slotAccountAddedOrRemoved();
 }
 
 GeneralSettings::~GeneralSettings()
@@ -160,5 +162,12 @@ void GeneralSettings::slotOpenAccountWizard()
     OwncloudSetupWizard::runWizard(qApp, SLOT(slotownCloudWizardDone(int)), 0);
 }
 
+void GeneralSettings::slotAccountAddedOrRemoved()
+{
+    _ui->addAccountButton->setVisible(
+        AccountManager::instance()->accounts().isEmpty()
+            || !Theme::instance()->singleAccount());
+}
+
 
 } // namespace OCC
index 0f3d8114a8f263296808d9857eca397ca1520676..e64c784efd0fff99aec02891de3e99f33e7fcc34 100644 (file)
@@ -44,6 +44,7 @@ private slots:
     void slotUpdateInfo();
     void slotIgnoreFilesEditor();
     void slotOpenAccountWizard();
+    void slotAccountAddedOrRemoved();
 
 
 private: