From e9afd1c41b297f4cbdfb63b156b5648a844ff846 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 23 Oct 2018 16:03:00 +0200 Subject: [PATCH] adding a couple changes related to handling GET_CONTENT intent with multiple files --- app/build.gradle | 2 +- .../filemanager/activities/MainActivity.kt | 2 +- .../filemanager/adapters/ItemsAdapter.kt | 8 ++++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 7801fc39..d8cd8547 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -42,7 +42,7 @@ android { } dependencies { - implementation 'com.simplemobiletools:commons:5.0.18' + implementation 'com.simplemobiletools:commons:5.2.1' implementation files('../libs/RootTools.jar') } diff --git a/app/src/main/kotlin/com/simplemobiletools/filemanager/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/filemanager/activities/MainActivity.kt index e26bfbad..e889384f 100644 --- a/app/src/main/kotlin/com/simplemobiletools/filemanager/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/filemanager/activities/MainActivity.kt @@ -318,7 +318,7 @@ class MainActivity : SimpleActivity() { fun pickedPaths(paths: ArrayList) { val newPaths = paths.map { getFilePublicUri(File(it), BuildConfig.APPLICATION_ID).toString() } as ArrayList - val clipData = ClipData("Attachment", arrayOf(newPaths.getMimeType()), ClipData.Item(newPaths.removeAt(0))) + val clipData = ClipData("Attachment", arrayOf(paths.getMimeType()), ClipData.Item(newPaths.removeAt(0))) newPaths.forEach { clipData.addItem(ClipData.Item(it)) diff --git a/app/src/main/kotlin/com/simplemobiletools/filemanager/adapters/ItemsAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/filemanager/adapters/ItemsAdapter.kt index c3dc26c4..bff7eed5 100644 --- a/app/src/main/kotlin/com/simplemobiletools/filemanager/adapters/ItemsAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/filemanager/adapters/ItemsAdapter.kt @@ -143,8 +143,12 @@ class ItemsAdapter(activity: SimpleActivity, var fileDirItems: MutableList - listener?.selectedPaths(paths) + val paths = getSelectedFileDirItems().asSequence().filter { !it.isDirectory }.map { it.path }.toMutableList() as ArrayList + if (paths.isEmpty()) { + finishActMode() + } else { + listener?.selectedPaths(paths) + } } }