Skip to content

Commit f4f2a2c

Browse files
committed
update commons to 3.12.3
1 parent f6b6d4a commit f4f2a2c

File tree

6 files changed

+37
-43
lines changed

6 files changed

+37
-43
lines changed

app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ ext {
4545
}
4646

4747
dependencies {
48-
implementation 'com.simplemobiletools:commons:3.11.52'
48+
implementation 'com.simplemobiletools:commons:3.12.3'
4949

5050
implementation files('../libs/RootTools.jar')
5151

app/src/main/kotlin/com/simplemobiletools/filemanager/activities/MainActivity.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -300,7 +300,7 @@ class MainActivity : SimpleActivity() {
300300
fun pickedPath(path: String) {
301301
val resultIntent = Intent()
302302
val uri = getFilePublicUri(File(path), BuildConfig.APPLICATION_ID)
303-
val type = path.getMimeTypeFromPath()
303+
val type = path.getMimeType()
304304
resultIntent.setDataAndType(uri, type)
305305
resultIntent.flags = Intent.FLAG_GRANT_READ_URI_PERMISSION
306306
setResult(Activity.RESULT_OK, resultIntent)
@@ -310,7 +310,7 @@ class MainActivity : SimpleActivity() {
310310
fun pickedRingtone(path: String) {
311311
val resultIntent = Intent()
312312
val uri = getFilePublicUri(File(path), BuildConfig.APPLICATION_ID)
313-
val type = path.getMimeTypeFromPath()
313+
val type = path.getMimeType()
314314
resultIntent.setDataAndType(uri, type)
315315
resultIntent.flags = Intent.FLAG_GRANT_READ_URI_PERMISSION
316316
resultIntent.putExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI, uri)
@@ -319,10 +319,10 @@ class MainActivity : SimpleActivity() {
319319
}
320320

321321
fun pickedPaths(paths: ArrayList<String>) {
322-
val uris = paths.map { getFilePublicUri(File(it), BuildConfig.APPLICATION_ID) } as ArrayList
323-
val clipData = ClipData("Attachment", arrayOf(uris.getMimeType()), ClipData.Item(uris.removeAt(0)))
322+
val newPaths = paths.map { getFilePublicUri(File(it), BuildConfig.APPLICATION_ID).toString() } as ArrayList
323+
val clipData = ClipData("Attachment", arrayOf(newPaths.getMimeType()), ClipData.Item(newPaths.removeAt(0)))
324324

325-
uris.forEach {
325+
newPaths.forEach {
326326
clipData.addItem(ClipData.Item(it))
327327
}
328328

app/src/main/kotlin/com/simplemobiletools/filemanager/activities/ReadTextActivity.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ import com.simplemobiletools.commons.models.FileDirItem
99
import com.simplemobiletools.filemanager.R
1010
import com.simplemobiletools.filemanager.dialogs.SaveAsDialog
1111
import com.simplemobiletools.filemanager.extensions.config
12-
import com.simplemobiletools.filemanager.extensions.openFile
12+
import com.simplemobiletools.filemanager.extensions.openPath
1313
import kotlinx.android.synthetic.main.activity_read_text.*
1414
import java.io.File
1515

1616
class ReadTextActivity : SimpleActivity() {
17-
var filePath = ""
17+
private var filePath = ""
1818

1919
override fun onCreate(savedInstanceState: Bundle?) {
2020
super.onCreate(savedInstanceState)
@@ -39,7 +39,7 @@ class ReadTextActivity : SimpleActivity() {
3939
override fun onOptionsItemSelected(item: MenuItem): Boolean {
4040
when (item.itemId) {
4141
R.id.menu_save -> saveText()
42-
R.id.menu_open_with -> openFile(intent.data, true)
42+
R.id.menu_open_with -> openPath(intent.dataString, true)
4343
else -> return super.onOptionsItemSelected(item)
4444
}
4545
return true

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

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import android.content.ClipboardManager
55
import android.content.Context
66
import android.content.pm.PackageManager
77
import android.graphics.drawable.Drawable
8-
import android.net.Uri
98
import android.view.Menu
109
import android.view.View
1110
import android.view.ViewGroup
@@ -142,21 +141,27 @@ class ItemsAdapter(activity: SimpleActivity, var fileDirItems: MutableList<FileD
142141

143142
private fun shareFiles() {
144143
val selectedItems = getSelectedMedia()
145-
val uris = ArrayList<Uri>(selectedItems.size)
144+
val paths = ArrayList<String>(selectedItems.size)
146145
selectedItems.forEach {
147-
addFileUris(File(it.path), uris)
146+
addFileUris(it.path, paths)
148147
}
149-
activity.shareUris(uris)
148+
activity.sharePaths(paths)
150149
}
151150

152-
private fun addFileUris(file: File, uris: ArrayList<Uri>) {
153-
if (file.isDirectory) {
151+
private fun addFileUris(path: String, paths: ArrayList<String>) {
152+
if (activity.getIsPathDirectory(path)) {
154153
val shouldShowHidden = activity.config.shouldShowHidden
155-
file.listFiles()?.filter { if (shouldShowHidden) true else !it.isHidden }?.forEach {
156-
addFileUris(it, uris)
154+
if (activity.isPathOnOTG(path)) {
155+
activity.getDocumentFile(path)?.listFiles()?.filter { if (shouldShowHidden) true else !it.name.startsWith(".") }?.forEach {
156+
addFileUris(it.uri.toString(), paths)
157+
}
158+
} else {
159+
File(path).listFiles()?.filter { if (shouldShowHidden) true else !it.isHidden }?.forEach {
160+
addFileUris(it.absolutePath, paths)
161+
}
157162
}
158163
} else {
159-
uris.add(Uri.fromFile(file))
164+
paths.add(path)
160165
}
161166
}
162167

@@ -169,13 +174,11 @@ class ItemsAdapter(activity: SimpleActivity, var fileDirItems: MutableList<FileD
169174
}
170175

171176
private fun setAs() {
172-
val file = File(getSelectedMedia().first().path)
173-
activity.setAs(Uri.fromFile(file))
177+
activity.setAs(getSelectedMedia().first().path)
174178
}
175179

176180
private fun openWith() {
177-
val file = File(getSelectedMedia().first().path)
178-
activity.openFile(file, true)
181+
activity.tryOpenPathIntent(getSelectedMedia().first().path, true)
179182
}
180183

181184
private fun copyMoveTo(isCopyOperation: Boolean) {

app/src/main/kotlin/com/simplemobiletools/filemanager/extensions/Activity.kt

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,40 +2,32 @@ package com.simplemobiletools.filemanager.extensions
22

33
import android.app.Activity
44
import android.content.Intent
5-
import android.net.Uri
6-
import android.support.v4.content.FileProvider
75
import com.simplemobiletools.commons.extensions.*
86
import com.simplemobiletools.filemanager.BuildConfig
9-
import java.io.File
107
import java.util.*
118

12-
fun Activity.shareUris(uris: ArrayList<Uri>) {
13-
shareUris(uris, BuildConfig.APPLICATION_ID)
9+
fun Activity.sharePaths(paths: ArrayList<String>) {
10+
sharePathsIntent(paths, BuildConfig.APPLICATION_ID)
1411
}
1512

16-
fun Activity.openFile(file: File, forceChooser: Boolean) {
17-
if (!forceChooser && file.absolutePath.endsWith(".apk", true)) {
18-
val uri = if (isNougatPlus()) {
19-
FileProvider.getUriForFile(this, "${BuildConfig.APPLICATION_ID}.provider", file)
20-
} else {
21-
Uri.fromFile(file)
22-
}
23-
13+
fun Activity.tryOpenPathIntent(path: String, forceChooser: Boolean) {
14+
if (!forceChooser && path.endsWith(".apk", true)) {
15+
val uri = getFinalUriFromPath(path, BuildConfig.APPLICATION_ID) ?: return
2416
Intent().apply {
2517
action = Intent.ACTION_VIEW
2618
setDataAndType(uri, getMimeTypeFromUri(uri))
2719
addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
2820
startActivity(this)
2921
}
3022
} else {
31-
openFile(Uri.fromFile(file), forceChooser)
23+
openPath(path, forceChooser)
3224
}
3325
}
3426

35-
fun Activity.openFile(uri: Uri, forceChooser: Boolean) {
36-
openFile(uri, forceChooser, BuildConfig.APPLICATION_ID)
27+
fun Activity.openPath(path: String, forceChooser: Boolean) {
28+
openPathIntent(path, forceChooser, BuildConfig.APPLICATION_ID)
3729
}
3830

39-
fun Activity.setAs(uri: Uri) {
40-
setAs(uri, BuildConfig.APPLICATION_ID)
31+
fun Activity.setAs(path: String) {
32+
setAsIntent(path, BuildConfig.APPLICATION_ID)
4133
}

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

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import com.simplemobiletools.filemanager.adapters.ItemsAdapter
2121
import com.simplemobiletools.filemanager.dialogs.CreateNewItemDialog
2222
import com.simplemobiletools.filemanager.extensions.config
2323
import com.simplemobiletools.filemanager.extensions.isPathOnRoot
24-
import com.simplemobiletools.filemanager.extensions.openFile
24+
import com.simplemobiletools.filemanager.extensions.tryOpenPathIntent
2525
import com.simplemobiletools.filemanager.helpers.PATH
2626
import com.simplemobiletools.filemanager.helpers.RootHelpers
2727
import com.simplemobiletools.filemanager.interfaces.ItemOperationsListener
@@ -227,8 +227,7 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb
227227
activity?.toast(R.string.select_audio_file)
228228
}
229229
} else {
230-
val file = File(path)
231-
activity!!.openFile(file, false)
230+
activity!!.tryOpenPathIntent(path, false)
232231
}
233232
}
234233
}

0 commit comments

Comments
 (0)