diff options
Diffstat (limited to 'mobile-widgets/qmlmanager.cpp')
-rw-r--r-- | mobile-widgets/qmlmanager.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/mobile-widgets/qmlmanager.cpp b/mobile-widgets/qmlmanager.cpp index d030f5a72..3d478178d 100644 --- a/mobile-widgets/qmlmanager.cpp +++ b/mobile-widgets/qmlmanager.cpp @@ -213,6 +213,10 @@ void QMLManager::saveCloudCredentials() cloudCredentialsChanged |= !same_string(prefs.cloud_storage_password, qPrintable(cloudPassword())); + if (!cloudCredentialsChanged) { + // just go back to the dive list + setCredentialStatus(oldStatus()); + } if (!same_string(prefs.cloud_storage_password, qPrintable(cloudPassword()))) { free(prefs.cloud_storage_password); prefs.cloud_storage_password = strdup(qPrintable(cloudPassword())); @@ -1014,6 +1018,19 @@ void QMLManager::setCredentialStatus(const credentialStatus_t value) } } +QMLManager::credentialStatus_t QMLManager::oldStatus() const +{ + return m_oldStatus; +} + +void QMLManager::setOldStatus(const credentialStatus_t value) +{ + if (m_oldStatus != value) { + m_oldStatus = value; + emit oldStatusChanged(); + } +} + // where in the QML dive list is that dive? int QMLManager::getIndex(const QString &diveId) { |