From c5cd9accb93ce65b1329585f856f1c850a92af10 Mon Sep 17 00:00:00 2001 From: tobiasKaminsky Date: Tue, 27 Mar 2018 09:06:17 +0200 Subject: [PATCH] move scroll/switchGrid/List to onActivityCreated check if adapter is already set Signed-off-by: tobiasKaminsky --- .../ui/fragment/ExtendedListFragment.java | 28 ++++++------------- .../ui/fragment/OCFileListFragment.java | 9 +++--- 2 files changed, 12 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/owncloud/android/ui/fragment/ExtendedListFragment.java b/src/main/java/com/owncloud/android/ui/fragment/ExtendedListFragment.java index 8e301b8995..4c5abe6f10 100644 --- a/src/main/java/com/owncloud/android/ui/fragment/ExtendedListFragment.java +++ b/src/main/java/com/owncloud/android/ui/fragment/ExtendedListFragment.java @@ -385,16 +385,6 @@ public class ExtendedListFragment extends Fragment return false; }); - if (savedInstanceState != null) { - int referencePosition = savedInstanceState.getInt(KEY_SAVED_LIST_POSITION); - - if (mRecyclerView != null) { - Log_OC.v(TAG, "Setting and centering around list position " + referencePosition); - - mRecyclerView.getLayoutManager().scrollToPosition(referencePosition); - } - } - // Pull-down to refresh layout mRefreshListLayout = v.findViewById(R.id.swipe_containing_list); onCreateSwipeToRefresh(mRefreshListLayout); @@ -420,16 +410,6 @@ public class ExtendedListFragment extends Fragment layoutParams.setMargins(0, 0, pixel / 2, bottomNavigationView.getMeasuredHeight() + pixel * 2); } - if (savedInstanceState != null) { - if (savedInstanceState.getBoolean(KEY_IS_GRID_VISIBLE, false)) { - switchToGridView(); - } - int referencePosition = savedInstanceState.getInt(KEY_SAVED_LIST_POSITION); - - Log_OC.v(TAG, "Setting grid position " + referencePosition); - scrollToPosition(referencePosition); - } - return v; } @@ -483,6 +463,14 @@ public class ExtendedListFragment extends Fragment mTops = savedInstanceState.getIntegerArrayList(KEY_TOPS); mHeightCell = savedInstanceState.getInt(KEY_HEIGHT_CELL); setMessageForEmptyList(savedInstanceState.getString(KEY_EMPTY_LIST_MESSAGE)); + + if (savedInstanceState.getBoolean(KEY_IS_GRID_VISIBLE, false) && getRecyclerView().getAdapter() != null) { + switchToGridView(); + } + + int referencePosition = savedInstanceState.getInt(KEY_SAVED_LIST_POSITION); + Log_OC.v(TAG, "Setting grid position " + referencePosition); + scrollToPosition(referencePosition); } else { mIndexes = new ArrayList<>(); mFirstPositions = new ArrayList<>(); diff --git a/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java b/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java index c691189cb9..32f67cca3d 100644 --- a/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java +++ b/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java @@ -200,10 +200,6 @@ public class OCFileListFragment extends ExtendedListFragment implements OCFileLi } searchFragment = currentSearchType != null; - - if (isGridViewPreferred(getCurrentFile())) { - switchToGridView(); - } } /** @@ -352,8 +348,11 @@ public class OCFileListFragment extends ExtendedListFragment implements OCFileLi onMessageEvent(searchEvent); } - setTitle(); + if (isGridViewPreferred(getCurrentFile())) { + switchToGridView(); + } + setTitle(); } private void prepareCurrentSearch(SearchEvent event) {