@@ -49,6 +49,7 @@ class ItemsAdapter(activity: SimpleActivity, var listItems: MutableList<ListItem
4949 private lateinit var fileDrawable: Drawable
5050 private var currentItemsHash = listItems.hashCode()
5151 private var textToHighlight = " "
52+ private val hasOTGConnected = activity.hasOTGConnected()
5253 var adjustedPrimaryColor = activity.getAdjustedPrimaryColor()
5354
5455 init {
@@ -594,7 +595,7 @@ class ItemsAdapter(activity: SimpleActivity, var listItems: MutableList<ListItem
594595 .error(fileDrawable)
595596 .centerCrop()
596597
597- val itemToLoad = if (listItem.name.endsWith(" .apk" , true )) {
598+ var itemToLoad = if (listItem.name.endsWith(" .apk" , true )) {
598599 val packageInfo = context.packageManager.getPackageArchiveInfo(path, PackageManager .GET_ACTIVITIES )
599600 if (packageInfo != null ) {
600601 val appInfo = packageInfo.applicationInfo
@@ -608,6 +609,11 @@ class ItemsAdapter(activity: SimpleActivity, var listItems: MutableList<ListItem
608609 path
609610 }
610611
612+
613+ if (hasOTGConnected && itemToLoad is String && activity.isPathOnOTG(itemToLoad) && baseConfig.OTGTreeUri .isNotEmpty() && baseConfig.OTGPartition .isNotEmpty()) {
614+ itemToLoad = getOTGPublicPath(itemToLoad)
615+ }
616+
611617 if (! activity.isDestroyed) {
612618 Glide .with (activity).load(itemToLoad).transition(DrawableTransitionOptions .withCrossFade()).apply (options).into(item_icon)
613619 }
@@ -620,4 +626,6 @@ class ItemsAdapter(activity: SimpleActivity, var listItems: MutableList<ListItem
620626 val children = item.children
621627 return activity.resources.getQuantityString(R .plurals.items, children, children)
622628 }
629+
630+ private fun getOTGPublicPath (itemToLoad : String ) = " ${baseConfig.OTGTreeUri } /document/${baseConfig.OTGPartition } %3A${itemToLoad.substring(baseConfig.OTGPath .length).replace(" /" , " %2F" )} "
623631}
0 commit comments