Skip to content

Commit 9b957a7

Browse files
committed
avoid loading folders twice at app start
1 parent acb4f63 commit 9b957a7

File tree

4 files changed

+28
-15
lines changed

4 files changed

+28
-15
lines changed

app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ ext {
4242
}
4343

4444
dependencies {
45-
implementation 'com.simplemobiletools:commons:3.8.3'
45+
implementation 'com.simplemobiletools:commons:3.8.7'
4646

4747
implementation files('../libs/RootTools.jar')
4848

app/src/main/kotlin/com/simplemobiletools/filemanager/adapters/ItemsAdapter.kt

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import com.simplemobiletools.filemanager.R
2626
import com.simplemobiletools.filemanager.activities.SimpleActivity
2727
import com.simplemobiletools.filemanager.dialogs.CompressAsDialog
2828
import com.simplemobiletools.filemanager.extensions.*
29+
import com.simplemobiletools.filemanager.interfaces.ItemOperationsListener
2930
import com.stericson.RootTools.RootTools
3031
import kotlinx.android.synthetic.main.list_item.view.*
3132
import java.io.Closeable
@@ -424,12 +425,4 @@ class ItemsAdapter(activity: SimpleActivity, var fileDirItems: MutableList<FileD
424425
val children = item.children
425426
return activity.resources.getQuantityString(R.plurals.items, children, children)
426427
}
427-
428-
interface ItemOperationsListener {
429-
fun refreshItems()
430-
431-
fun deleteFiles(files: ArrayList<File>)
432-
433-
fun selectedPaths(paths: ArrayList<String>)
434-
}
435428
}

app/src/main/kotlin/com/simplemobiletools/filemanager/fragments/ItemsFragment.kt

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,18 +23,20 @@ import com.simplemobiletools.filemanager.extensions.isPathOnRoot
2323
import com.simplemobiletools.filemanager.extensions.openFile
2424
import com.simplemobiletools.filemanager.helpers.PATH
2525
import com.simplemobiletools.filemanager.helpers.RootHelpers
26+
import com.simplemobiletools.filemanager.interfaces.ItemOperationsListener
2627
import com.stericson.RootTools.RootTools
2728
import kotlinx.android.synthetic.main.items_fragment.*
2829
import kotlinx.android.synthetic.main.items_fragment.view.*
2930
import java.io.File
3031
import java.util.HashMap
3132
import kotlin.collections.ArrayList
3233

33-
class ItemsFragment : Fragment(), ItemsAdapter.ItemOperationsListener, Breadcrumbs.BreadcrumbsListener {
34+
class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.BreadcrumbsListener {
3435
var currentPath = ""
3536
var isGetContentIntent = false
3637
var isGetRingtonePicker = false
3738
var isPickMultipleIntent = false
39+
var isFirstResume = true
3840

3941
private var showHidden = false
4042
private var skipItemUpdating = false
@@ -90,7 +92,10 @@ class ItemsFragment : Fragment(), ItemsAdapter.ItemOperationsListener, Breadcrum
9092

9193
items_fastscroller.updateBubbleColors()
9294
items_fastscroller.allowBubbleDisplay = context!!.config.showInfoBubble
93-
refreshItems()
95+
if (!isFirstResume) {
96+
refreshItems()
97+
}
98+
isFirstResume = false
9499
}
95100

96101
override fun onPause() {
@@ -110,15 +115,17 @@ class ItemsFragment : Fragment(), ItemsAdapter.ItemOperationsListener, Breadcrum
110115
}
111116

112117
var realPath = path.trimEnd('/')
113-
if (realPath.isEmpty())
118+
if (realPath.isEmpty()) {
114119
realPath = "/"
120+
}
115121

116-
scrollStates.put(currentPath, getScrollState())
122+
scrollStates[currentPath] = getScrollState()
117123
currentPath = realPath
118124
showHidden = context!!.config.shouldShowHidden
119125
getItems(currentPath) {
120-
if (!isAdded)
126+
if (!isAdded) {
121127
return@getItems
128+
}
122129

123130
FileDirItem.sorting = context!!.config.getFolderSorting(currentPath)
124131
it.sort()
@@ -183,8 +190,9 @@ class ItemsFragment : Fragment(), ItemsAdapter.ItemOperationsListener, Breadcrum
183190
for (file in files) {
184191
val curPath = file.absolutePath
185192
val curName = curPath.getFilenameFromPath()
186-
if (!showHidden && curName.startsWith("."))
193+
if (!showHidden && curName.startsWith(".")) {
187194
continue
195+
}
188196

189197
val children = getChildrenCount(file)
190198
val size = if (file.isDirectory && context?.config?.sorting == SORT_BY_SIZE) getDirectorySize(file) else file.length()
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package com.simplemobiletools.filemanager.interfaces
2+
3+
import java.io.File
4+
import java.util.*
5+
6+
interface ItemOperationsListener {
7+
fun refreshItems()
8+
9+
fun deleteFiles(files: ArrayList<File>)
10+
11+
fun selectedPaths(paths: ArrayList<String>)
12+
}

0 commit comments

Comments
 (0)