[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kbibtex/kbibtex/0.7] src/program/docklets: Disabling Zotero widget's tabs on incomplete credentials
From:       Thomas Fischer <fischer () unix-ag ! uni-kl ! de>
Date:       2016-11-26 21:53:24
Message-ID: E1cAkuS-0006Wb-0f () code ! kde ! org
[Download RAW message or body]

Git commit 984f59701f22718995df19021a8b17d938d49495 by Thomas Fischer.
Committed on 26/11/2016 at 21:36.
Pushed by thomasfischer into branch 'kbibtex/0.7'.

Disabling Zotero widget's tabs on incomplete credentials

M  +9    -4    src/program/docklets/zoterobrowser.cpp
M  +1    -1    src/program/docklets/zoterobrowser.h

https://commits.kde.org/kbibtex/984f59701f22718995df19021a8b17d938d49495

diff --git a/src/program/docklets/zoterobrowser.cpp \
b/src/program/docklets/zoterobrowser.cpp index 181472a..b8197c6 100644
--- a/src/program/docklets/zoterobrowser.cpp
+++ b/src/program/docklets/zoterobrowser.cpp
@@ -287,11 +287,12 @@ void ZoteroBrowser::updateButtons()
     d->needToApplyCredentials = true;
 }
 
-void ZoteroBrowser::applyCredentials()
+bool ZoteroBrowser::applyCredentials()
 {
     bool ok = false;
     const int userId = d->lineEditNumericUserId->text().toInt(&ok);
-    if (ok) {
+    const QString apiKey = d->lineEditApiKey->text();
+    if (ok && !apiKey.isEmpty()) {
         setCursor(Qt::WaitCursor);
         setEnabled(false);
 
@@ -329,8 +330,10 @@ void ZoteroBrowser::applyCredentials()
         connect(d->tags, SIGNAL(finishedLoading()), this, SLOT(reenableWidget()));
 
         d->needToApplyCredentials = false;
+
+        return true;
     } else
-        KMessageBox::information(this, i18n("Value '%1' is not a valid numeric \
identifier of a user or a group.", d->lineEditNumericUserId->text()), i18n("Invalid \
numeric identifier")); +        return false;
 }
 
 void ZoteroBrowser::radioButtonsToggled() {
@@ -443,6 +446,8 @@ void ZoteroBrowser::writeOAuthCredentials(bool ok) {
 
 void ZoteroBrowser::tabChanged(int newTabIndex) {
     if (newTabIndex > 0 /** tabs after credential tab*/ && \
                d->needToApplyCredentials) {
-        applyCredentials();
+        const bool success = applyCredentials();
+        for (int i = 1; i < d->tabWidget->count(); ++i)
+            d->tabWidget->widget(i)->setEnabled(success);
     }
 }
diff --git a/src/program/docklets/zoterobrowser.h \
b/src/program/docklets/zoterobrowser.h index d4574ed..65385d2 100644
--- a/src/program/docklets/zoterobrowser.h
+++ b/src/program/docklets/zoterobrowser.h
@@ -49,7 +49,7 @@ private slots:
     void showItem(QSharedPointer<Element>);
     void reenableWidget();
     void updateButtons();
-    void applyCredentials();
+    bool applyCredentials();
     void radioButtonsToggled();
     void groupListChanged();
     void retrieveGroupList();


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic