Эх сурвалжийг харах

Merge pull request #11068 from nextcloud/fix/favorites-back-navigation

FileDisplayActivity: fix drawer menu item when browsing back from favorite folder
Álvaro Brey 2 жил өмнө
parent
commit
f797260f76

+ 14 - 7
app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java

@@ -98,6 +98,7 @@ import com.owncloud.android.ui.asynctasks.FetchRemoteFileTask;
 import com.owncloud.android.ui.dialog.SendShareDialog;
 import com.owncloud.android.ui.dialog.SendShareDialog;
 import com.owncloud.android.ui.dialog.SortingOrderDialogFragment;
 import com.owncloud.android.ui.dialog.SortingOrderDialogFragment;
 import com.owncloud.android.ui.dialog.StoragePermissionDialogFragment;
 import com.owncloud.android.ui.dialog.StoragePermissionDialogFragment;
+import com.owncloud.android.ui.events.ChangeMenuEvent;
 import com.owncloud.android.ui.events.SearchEvent;
 import com.owncloud.android.ui.events.SearchEvent;
 import com.owncloud.android.ui.events.SyncEventFinished;
 import com.owncloud.android.ui.events.SyncEventFinished;
 import com.owncloud.android.ui.events.TokenPushEvent;
 import com.owncloud.android.ui.events.TokenPushEvent;
@@ -1090,6 +1091,8 @@ public class FileDisplayActivity extends FileActivity
                 listOfFiles.registerFabListener();
                 listOfFiles.registerFabListener();
                 showSortListGroup(true);
                 showSortListGroup(true);
                 resetTitleBarAndScrolling();
                 resetTitleBarAndScrolling();
+                setDrawerAllFiles();
+                EventBus.getDefault().post(new ChangeMenuEvent()); // for OCFileListFragment to update sort menu
             }
             }
         } else if (leftFragment instanceof PreviewTextStringFragment) {
         } else if (leftFragment instanceof PreviewTextStringFragment) {
             createMinFragments(null);
             createMinFragments(null);
@@ -1177,13 +1180,7 @@ public class FileDisplayActivity extends FileActivity
         menuItemId = getIntent().getIntExtra(FileDisplayActivity.DRAWER_MENU_ID, -1);
         menuItemId = getIntent().getIntExtra(FileDisplayActivity.DRAWER_MENU_ID, -1);
 
 
         if (menuItemId == -1) {
         if (menuItemId == -1) {
-            if (MainApp.isOnlyOnDevice()) {
-                setDrawerMenuItemChecked(R.id.nav_on_device);
-                setupToolbar();
-            } else {
-                setDrawerMenuItemChecked(R.id.nav_all_files);
-                setupHomeSearchToolbarWithSortAndListButtons();
-            }
+            setDrawerAllFiles();
         } else {
         } else {
             if (menuItemId == R.id.nav_all_files) {
             if (menuItemId == R.id.nav_all_files) {
                 setupHomeSearchToolbarWithSortAndListButtons();
                 setupHomeSearchToolbarWithSortAndListButtons();
@@ -1200,6 +1197,16 @@ public class FileDisplayActivity extends FileActivity
         Log_OC.v(TAG, "onResume() end");
         Log_OC.v(TAG, "onResume() end");
     }
     }
 
 
+    private void setDrawerAllFiles() {
+        if (MainApp.isOnlyOnDevice()) {
+            setDrawerMenuItemChecked(R.id.nav_on_device);
+            setupToolbar();
+        } else {
+            setDrawerMenuItemChecked(R.id.nav_all_files);
+            setupHomeSearchToolbarWithSortAndListButtons();
+        }
+    }
+
     public void initSyncBroadcastReceiver() {
     public void initSyncBroadcastReceiver() {
         if (mSyncBroadcastReceiver == null) {
         if (mSyncBroadcastReceiver == null) {
             IntentFilter syncIntentFilter = new IntentFilter(FileSyncAdapter.EVENT_FULL_SYNC_START);
             IntentFilter syncIntentFilter = new IntentFilter(FileSyncAdapter.EVENT_FULL_SYNC_START);