[Pkg-owncloud-commits] [owncloud-client] 365/470: SocketAPI: Return NOP state if folder is diconnected or paused.
Sandro Knauß
hefee-guest at moszumanska.debian.org
Thu May 12 16:25:26 UTC 2016
This is an automated email from the git hooks/post-receive script.
hefee-guest pushed a commit to branch master
in repository owncloud-client.
commit b56919d0c43c8393bc505b39e712eaf025a0bbab
Author: Klaas Freitag <freitag at owncloud.com>
Date: Wed Apr 20 17:14:12 2016 +0200
SocketAPI: Return NOP state if folder is diconnected or paused.
Later, we can send a specific state for that.
---
src/gui/socketapi.cpp | 22 +++++++++++++++++++---
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git a/src/gui/socketapi.cpp b/src/gui/socketapi.cpp
index ede3614..bcf2dfa 100644
--- a/src/gui/socketapi.cpp
+++ b/src/gui/socketapi.cpp
@@ -274,6 +274,8 @@ void SocketApi::command_RETRIEVE_FOLDER_STATUS(const QString& argument, QIODevic
void SocketApi::command_RETRIEVE_FILE_STATUS(const QString& argument, QIODevice* socket)
{
+ const QString nopString("NOP");
+
if( !socket ) {
qDebug() << "No valid socket object.";
return;
@@ -286,12 +288,26 @@ void SocketApi::command_RETRIEVE_FILE_STATUS(const QString& argument, QIODevice*
Folder* syncFolder = FolderMan::instance()->folderForPath( argument );
if (!syncFolder) {
// this can happen in offline mode e.g.: nothing to worry about
- statusString = QLatin1String("NOP");
+ statusString = nopString;
} else {
const QString file = QDir::cleanPath(argument).mid(syncFolder->cleanPath().length()+1);
- SyncFileStatus fileStatus = syncFolder->syncEngine().syncFileStatusTracker().fileStatus(file);
- statusString = fileStatus.toSocketAPIString();
+ // future: Send more specific states for paused, disconnected etc.
+ if( syncFolder->syncPaused() ){
+ statusString = nopString;
+ } else if( !syncFolder->accountState()->isConnected() ) {
+ if( file.isEmpty() || file == QLatin1String("/") ) {
+ // only the root folder
+ statusString = nopString;
+ } else {
+ // all other files and dirs in unconnected sync
+ statusString = nopString;
+ }
+ } else {
+ SyncFileStatus fileStatus = syncFolder->syncEngine().syncFileStatusTracker().fileStatus(file);
+
+ statusString = fileStatus.toSocketAPIString();
+ }
}
const QString message = QLatin1String("STATUS:") % statusString % QLatin1Char(':') % QDir::toNativeSeparators(argument);
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/owncloud-client.git
More information about the Pkg-owncloud-commits
mailing list