use the copy function of the Commons library

This commit is contained in:
tibbi 2017-04-19 20:46:30 +02:00
parent 40ce55a55e
commit 69aacd57d3
3 changed files with 27 additions and 6 deletions

View File

@ -32,7 +32,7 @@ android {
} }
dependencies { dependencies {
compile 'com.simplemobiletools:commons:2.16.9' compile 'com.simplemobiletools:commons:2.17.2'
compile 'com.bignerdranch.android:recyclerview-multiselect:0.2' compile 'com.bignerdranch.android:recyclerview-multiselect:0.2'
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
} }

View File

@ -12,6 +12,7 @@ import com.bignerdranch.android.multiselector.SwappingHolder
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.simplemobiletools.commons.asynctasks.CopyMoveTask import com.simplemobiletools.commons.asynctasks.CopyMoveTask
import com.simplemobiletools.commons.dialogs.ConfirmationDialog import com.simplemobiletools.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.dialogs.FilePickerDialog
import com.simplemobiletools.commons.dialogs.PropertiesDialog import com.simplemobiletools.commons.dialogs.PropertiesDialog
import com.simplemobiletools.commons.dialogs.RenameItemDialog import com.simplemobiletools.commons.dialogs.RenameItemDialog
import com.simplemobiletools.commons.extensions.formatSize import com.simplemobiletools.commons.extensions.formatSize
@ -73,7 +74,8 @@ class ItemsAdapter(val activity: SimpleActivity, var mItems: MutableList<FileDir
R.id.cab_rename -> displayRenameDialog() R.id.cab_rename -> displayRenameDialog()
R.id.cab_properties -> showProperties() R.id.cab_properties -> showProperties()
R.id.cab_share -> shareFiles() R.id.cab_share -> shareFiles()
R.id.cab_copy_move -> displayCopyDialog() R.id.cab_copy_to -> copyMoveTo(true)
R.id.cab_move_to -> copyMoveTo(false)
R.id.cab_delete -> askConfirmDelete() R.id.cab_delete -> askConfirmDelete()
else -> return false else -> return false
} }
@ -162,6 +164,22 @@ class ItemsAdapter(val activity: SimpleActivity, var mItems: MutableList<FileDir
}) })
} }
private fun copyMoveTo(isCopyOperation: Boolean) {
val files = ArrayList<File>()
val positions = multiSelector.selectedPositions
positions.forEach { files.add(File(mItems[it].path)) }
val source = if (files[0].isFile) files[0].parent else files[0].absolutePath
FilePickerDialog(activity, source, false, config.showHidden, true) {
activity.copyMoveFilesTo(files, source, it, isCopyOperation, false) {
if (!isCopyOperation) {
listener?.refreshItems()
}
actMode?.finish()
}
}
}
private fun askConfirmDelete() { private fun askConfirmDelete() {
ConfirmationDialog(activity) { ConfirmationDialog(activity) {
actMode?.finish() actMode?.finish()

View File

@ -17,10 +17,13 @@
android:title="@string/share" android:title="@string/share"
app:showAsAction="ifRoom"/> app:showAsAction="ifRoom"/>
<item <item
android:id="@+id/cab_copy_move" android:id="@+id/cab_copy_to"
android:icon="@drawable/ic_copy" android:title="@string/copy_to"
android:title="@string/copy_move" app:showAsAction="never"/>
app:showAsAction="ifRoom"/> <item
android:id="@+id/cab_move_to"
android:title="@string/move_to"
app:showAsAction="never"/>
<item <item
android:id="@+id/cab_delete" android:id="@+id/cab_delete"
android:icon="@drawable/ic_delete" android:icon="@drawable/ic_delete"