From 10ab22508f2a01d730d4d9295c9c27df33d145be Mon Sep 17 00:00:00 2001 From: tibbi Date: Thu, 29 Oct 2020 23:01:25 +0100 Subject: [PATCH] properley handle grid/list view initialization --- .../filemanager/pro/activities/MainActivity.kt | 4 ++-- .../filemanager/pro/adapters/ItemsAdapter.kt | 2 +- .../filemanager/pro/fragments/ItemsFragment.kt | 15 +++++++++------ 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/activities/MainActivity.kt index 73f73da9..6be8a4c1 100644 --- a/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/activities/MainActivity.kt @@ -97,8 +97,8 @@ class MainActivity : SimpleActivity() { findItem(R.id.temporarily_show_hidden).isVisible = !config.shouldShowHidden findItem(R.id.stop_showing_hidden).isVisible = config.temporarilyShowHidden - findItem(R.id.increase_column_count).isVisible = config.viewType == VIEW_TYPE_GRID && config.fileColumnCnt < MAX_COLUMN_COUNT - findItem(R.id.reduce_column_count).isVisible = config.viewType == VIEW_TYPE_GRID && config.fileColumnCnt > 1 + findItem(R.id.increase_column_count).isVisible = config.getFolderViewType(fragment.currentPath) == VIEW_TYPE_GRID && config.fileColumnCnt < MAX_COLUMN_COUNT + findItem(R.id.reduce_column_count).isVisible = config.getFolderViewType(fragment.currentPath) == VIEW_TYPE_GRID && config.fileColumnCnt > 1 } return true diff --git a/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/adapters/ItemsAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/adapters/ItemsAdapter.kt index 4bf31cbe..c2748289 100644 --- a/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/adapters/ItemsAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/adapters/ItemsAdapter.kt @@ -72,7 +72,7 @@ class ItemsAdapter(activity: SimpleActivity, var listItems: MutableList() private var zoomListener: MyRecyclerView.MyZoomListener? = null @@ -71,7 +69,6 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb breadcrumbs.listener = this@ItemsFragment breadcrumbs.updateFontSize(context!!.getTextSize()) } - setupLayoutManager(false) initZoomListener() } @@ -159,6 +156,10 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb activity?.runOnUiThread { activity?.invalidateOptionsMenu() addItems(listItems, forceRefresh) + val curr = context?.config?.getFolderViewType(currentPath) + if (currentViewType != context?.config?.getFolderViewType(currentPath)) { + setupLayoutManager(true) + } } } } @@ -413,8 +414,10 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb fun setupLayoutManager(resetAdapter: Boolean) { if (context!!.config.getFolderViewType(currentPath) == VIEW_TYPE_GRID) { + currentViewType = VIEW_TYPE_GRID setupGridLayoutManager() } else { + currentViewType = VIEW_TYPE_LIST setupListLayoutManager() } @@ -436,7 +439,7 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb } private fun initZoomListener() { - if (context?.config?.viewType == VIEW_TYPE_GRID) { + if (context?.config?.getFolderViewType(currentPath) == VIEW_TYPE_GRID) { val layoutManager = mView.items_list.layoutManager as MyGridLayoutManager zoomListener = object : MyRecyclerView.MyZoomListener { override fun zoomIn() {