mirror of
https://github.com/SimpleMobileTools/Simple-File-Manager.git
synced 2025-06-05 22:09:15 +02:00
use the helper function for querying recents cursor, show errors
This commit is contained in:
@ -1,7 +1,8 @@
|
|||||||
package com.simplemobiletools.filemanager.pro.fragments
|
package com.simplemobiletools.filemanager.pro.fragments
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.provider.MediaStore
|
import android.provider.MediaStore.Files
|
||||||
|
import android.provider.MediaStore.Files.FileColumns
|
||||||
import android.util.AttributeSet
|
import android.util.AttributeSet
|
||||||
import androidx.recyclerview.widget.GridLayoutManager
|
import androidx.recyclerview.widget.GridLayoutManager
|
||||||
import com.simplemobiletools.commons.extensions.*
|
import com.simplemobiletools.commons.extensions.*
|
||||||
@ -107,30 +108,26 @@ class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPage
|
|||||||
|
|
||||||
private fun getRecents(callback: (recents: ArrayList<ListItem>) -> Unit) {
|
private fun getRecents(callback: (recents: ArrayList<ListItem>) -> Unit) {
|
||||||
val showHidden = context?.config?.shouldShowHidden ?: return
|
val showHidden = context?.config?.shouldShowHidden ?: return
|
||||||
val uri = MediaStore.Files.getContentUri("external")
|
|
||||||
val projection = arrayOf(
|
|
||||||
MediaStore.Files.FileColumns.DATA,
|
|
||||||
MediaStore.Files.FileColumns.DISPLAY_NAME,
|
|
||||||
MediaStore.Files.FileColumns.DATE_MODIFIED,
|
|
||||||
MediaStore.Files.FileColumns.SIZE
|
|
||||||
)
|
|
||||||
|
|
||||||
val sortOrder = "${MediaStore.Files.FileColumns.DATE_MODIFIED} DESC LIMIT 50"
|
|
||||||
val cursor = context?.contentResolver?.query(uri, projection, null, null, sortOrder)
|
|
||||||
val listItems = arrayListOf<ListItem>()
|
val listItems = arrayListOf<ListItem>()
|
||||||
|
|
||||||
cursor?.use {
|
val uri = Files.getContentUri("external")
|
||||||
if (cursor.moveToFirst()) {
|
val projection = arrayOf(
|
||||||
do {
|
FileColumns.DATA,
|
||||||
val path = cursor.getStringValue(MediaStore.Files.FileColumns.DATA)
|
FileColumns.DISPLAY_NAME,
|
||||||
val name = cursor.getStringValue(MediaStore.Files.FileColumns.DISPLAY_NAME)
|
FileColumns.DATE_MODIFIED,
|
||||||
val size = cursor.getLongValue(MediaStore.Files.FileColumns.SIZE)
|
FileColumns.SIZE
|
||||||
val modified = cursor.getLongValue(MediaStore.Files.FileColumns.DATE_MODIFIED) * 1000
|
)
|
||||||
val fileDirItem = ListItem(path, name, false, 0, size, modified, false)
|
|
||||||
if ((showHidden || !name.startsWith(".")) && activity?.getDoesFilePathExist(path) == true) {
|
val sortOrder = "${FileColumns.DATE_MODIFIED} DESC LIMIT 50"
|
||||||
listItems.add(fileDirItem)
|
|
||||||
}
|
context?.queryCursor(uri, projection, sortOrder = sortOrder, showErrors = true) { cursor ->
|
||||||
} while (cursor.moveToNext())
|
val path = cursor.getStringValue(FileColumns.DATA)
|
||||||
|
val name = cursor.getStringValue(FileColumns.DISPLAY_NAME)
|
||||||
|
val size = cursor.getLongValue(FileColumns.SIZE)
|
||||||
|
val modified = cursor.getLongValue(FileColumns.DATE_MODIFIED) * 1000
|
||||||
|
val fileDirItem = ListItem(path, name, false, 0, size, modified, false)
|
||||||
|
if ((showHidden || !name.startsWith(".")) && activity?.getDoesFilePathExist(path) == true) {
|
||||||
|
listItems.add(fileDirItem)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user