mirror of
https://github.com/SimpleMobileTools/Simple-File-Manager.git
synced 2025-06-05 22:09:15 +02:00
use the helper function at deleting recyclerview items
This commit is contained in:
@ -46,7 +46,7 @@ ext {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation 'com.simplemobiletools:commons:3.0.5'
|
implementation 'com.simplemobiletools:commons:3.0.6'
|
||||||
|
|
||||||
implementation files('../libs/RootTools.jar')
|
implementation files('../libs/RootTools.jar')
|
||||||
|
|
||||||
|
@ -5,7 +5,6 @@ import android.content.ClipboardManager
|
|||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.graphics.drawable.Drawable
|
import android.graphics.drawable.Drawable
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.util.SparseArray
|
|
||||||
import android.view.Menu
|
import android.view.Menu
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
@ -340,7 +339,6 @@ class ItemsAdapter(activity: SimpleActivity, var fileDirItems: MutableList<FileD
|
|||||||
private fun askConfirmDelete() {
|
private fun askConfirmDelete() {
|
||||||
ConfirmationDialog(activity) {
|
ConfirmationDialog(activity) {
|
||||||
deleteFiles()
|
deleteFiles()
|
||||||
finishActMode()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -350,27 +348,18 @@ class ItemsAdapter(activity: SimpleActivity, var fileDirItems: MutableList<FileD
|
|||||||
|
|
||||||
val files = ArrayList<File>(selectedPositions.size)
|
val files = ArrayList<File>(selectedPositions.size)
|
||||||
val removeFiles = ArrayList<FileDirItem>(selectedPositions.size)
|
val removeFiles = ArrayList<FileDirItem>(selectedPositions.size)
|
||||||
|
val SAFFile = File(fileDirItems[selectedPositions.first()].path)
|
||||||
|
|
||||||
activity.handleSAFDialog(File(fileDirItems[selectedPositions.first()].path)) {
|
activity.handleSAFDialog(SAFFile) {
|
||||||
selectedPositions.sortedDescending().forEach {
|
selectedPositions.sortedDescending().forEach {
|
||||||
val file = fileDirItems[it]
|
val file = fileDirItems[it]
|
||||||
files.add(File(file.path))
|
files.add(File(file.path))
|
||||||
removeFiles.add(file)
|
removeFiles.add(file)
|
||||||
notifyItemRemoved(it)
|
|
||||||
itemViews.put(it, null)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fileDirItems.removeAll(removeFiles)
|
fileDirItems.removeAll(removeFiles)
|
||||||
selectedPositions.clear()
|
|
||||||
listener?.deleteFiles(files)
|
listener?.deleteFiles(files)
|
||||||
|
removeSelectedItems()
|
||||||
val newItems = SparseArray<View>()
|
|
||||||
(0 until itemViews.size())
|
|
||||||
.filter { itemViews[it] != null }
|
|
||||||
.forEachIndexed { curIndex, i -> newItems.put(curIndex, itemViews[i]) }
|
|
||||||
|
|
||||||
itemViews = newItems
|
|
||||||
selectableItemCount = fileDirItems.size
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
package com.simplemobiletools.filemanager.adapters
|
package com.simplemobiletools.filemanager.adapters
|
||||||
|
|
||||||
import android.util.SparseArray
|
|
||||||
import android.view.Menu
|
import android.view.Menu
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
@ -71,22 +70,11 @@ class ManageFavoritesAdapter(activity: BaseSimpleActivity, var favorites: ArrayL
|
|||||||
selectedPositions.sortedDescending().forEach {
|
selectedPositions.sortedDescending().forEach {
|
||||||
val favorite = favorites[it]
|
val favorite = favorites[it]
|
||||||
removeFavorites.add(favorite)
|
removeFavorites.add(favorite)
|
||||||
notifyItemRemoved(it)
|
|
||||||
itemViews.put(it, null)
|
|
||||||
config.removeFavorite(favorite)
|
config.removeFavorite(favorite)
|
||||||
}
|
}
|
||||||
|
|
||||||
favorites.removeAll(removeFavorites)
|
favorites.removeAll(removeFavorites)
|
||||||
selectedPositions.clear()
|
removeSelectedItems()
|
||||||
|
|
||||||
val newItems = SparseArray<View>()
|
|
||||||
(0 until itemViews.size())
|
|
||||||
.filter { itemViews[it] != null }
|
|
||||||
.forEachIndexed { curIndex, i -> newItems.put(curIndex, itemViews[i]) }
|
|
||||||
|
|
||||||
itemViews = newItems
|
|
||||||
selectableItemCount = favorites.size
|
|
||||||
finishActMode()
|
|
||||||
if (favorites.isEmpty()) {
|
if (favorites.isEmpty()) {
|
||||||
listener?.refreshItems()
|
listener?.refreshItems()
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user