The app goes directly to root folder when the current folder does not exist anymore...
authorDavid A. Velasco <dvelasco@solidgear.es>
Tue, 8 Oct 2013 13:06:20 +0000 (15:06 +0200)
committerDavid A. Velasco <dvelasco@solidgear.es>
Tue, 8 Oct 2013 13:06:20 +0000 (15:06 +0200)
src/com/owncloud/android/ui/activity/FileDisplayActivity.java

index febcd59..d86feb5 100644 (file)
@@ -881,7 +881,7 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa
                                     String.format(getString(R.string.sync_current_folder_was_removed), mDirectories.getItem(0)), 
                                     Toast.LENGTH_LONG)
                         .show();
                                     String.format(getString(R.string.sync_current_folder_was_removed), mDirectories.getItem(0)), 
                                     Toast.LENGTH_LONG)
                         .show();
-                    onBackPressed();
+                    jumpToRoot();
                     
                 } else {
                     if (currentFile == null && !getFile().isDirectory()) {
                     
                 } else {
                     if (currentFile == null && !getFile().isDirectory()) {
@@ -978,6 +978,21 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa
     }
 
 
     }
 
 
+    public void jumpToRoot() {
+        OCFileListFragment listOfFiles = getListOfFilesFragment(); 
+        if (listOfFiles != null) {  // should never be null, indeed
+            while (mDirectories.getCount() > 1) {
+                popDirname();
+            }
+            OCFile root = mStorageManager.getFileByPath(OCFile.PATH_SEPARATOR);
+            listOfFiles.listDirectory(root);
+            setFile(listOfFiles.getCurrentFile());
+            startSyncFolderOperation(root);
+        }
+        cleanSecondFragment();
+    }
+
+
     /**
      * {@inheritDoc}
      * 
     /**
      * {@inheritDoc}
      *