diff --git a/app/build.gradle b/app/build.gradle index b94058c33..b31ee9a6c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -57,7 +57,7 @@ android { } dependencies { - implementation 'com.simplemobiletools:commons:5.6.2' + implementation 'com.simplemobiletools:commons:5.6.3' implementation 'com.theartofdev.edmodo:android-image-cropper:2.8.0' implementation 'androidx.multidex:multidex:2.0.1' implementation 'it.sephiroth.android.exif:library:1.0.1' diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/PhotoVideoActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/PhotoVideoActivity.kt index 6ab3b2478..ec1e4ebf1 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/PhotoVideoActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/PhotoVideoActivity.kt @@ -16,6 +16,7 @@ import com.simplemobiletools.commons.helpers.IS_FROM_GALLERY import com.simplemobiletools.commons.helpers.PERMISSION_WRITE_STORAGE import com.simplemobiletools.commons.helpers.REAL_FILE_PATH import com.simplemobiletools.commons.helpers.isPiePlus +import com.simplemobiletools.gallery.pro.BuildConfig import com.simplemobiletools.gallery.pro.R import com.simplemobiletools.gallery.pro.extensions.* import com.simplemobiletools.gallery.pro.fragments.PhotoFragment @@ -63,6 +64,12 @@ open class PhotoVideoActivity : SimpleActivity(), ViewPagerFragment.FragmentList private fun checkIntent(savedInstanceState: Bundle? = null) { mUri = intent.data ?: return var filename = getFilenameFromUri(mUri!!) + mIsFromGallery = intent.getBooleanExtra(IS_FROM_GALLERY, false) + if (mIsFromGallery && filename.isVideoFast()) { + launchVideoPlayer() + return + } + if (intent.extras?.containsKey(REAL_FILE_PATH) == true) { val realPath = intent.extras.getString(REAL_FILE_PATH) if (realPath != null) { @@ -76,7 +83,6 @@ open class PhotoVideoActivity : SimpleActivity(), ViewPagerFragment.FragmentList } } - mIsFromGallery = intent.getBooleanExtra(IS_FROM_GALLERY, false) if (mUri!!.scheme == "file") { if (filename.contains('.')) { scanPathRecursively(mUri!!.path) @@ -134,6 +140,21 @@ open class PhotoVideoActivity : SimpleActivity(), ViewPagerFragment.FragmentList initBottomActions() } + private fun launchVideoPlayer() { + val newUri = getFinalUriFromPath(mUri.toString(), BuildConfig.APPLICATION_ID) + if (newUri == null) { + toast(R.string.unknown_error_occurred) + return + } + + val mimeType = getUriMimeType(mUri.toString(), newUri) + Intent(this, VideoPlayerActivity::class.java).apply { + setDataAndType(newUri, mimeType) + startActivity(this) + } + finish() + } + override fun onConfigurationChanged(newConfig: Configuration?) { super.onConfigurationChanged(newConfig) initBottomActionsLayout() diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/VideoFragment.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/VideoFragment.kt index b3169a277..ec58f51d5 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/VideoFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/VideoFragment.kt @@ -8,14 +8,9 @@ import android.view.View import android.view.ViewGroup import com.bumptech.glide.Glide import com.simplemobiletools.commons.extensions.* -import com.simplemobiletools.gallery.pro.BuildConfig import com.simplemobiletools.gallery.pro.R import com.simplemobiletools.gallery.pro.activities.PanoramaVideoActivity -import com.simplemobiletools.gallery.pro.activities.VideoPlayerActivity -import com.simplemobiletools.gallery.pro.extensions.config -import com.simplemobiletools.gallery.pro.extensions.navigationBarWidth -import com.simplemobiletools.gallery.pro.extensions.portrait -import com.simplemobiletools.gallery.pro.extensions.realScreenSize +import com.simplemobiletools.gallery.pro.extensions.* import com.simplemobiletools.gallery.pro.helpers.IsoTypeReader import com.simplemobiletools.gallery.pro.helpers.MEDIUM import com.simplemobiletools.gallery.pro.helpers.PATH @@ -142,17 +137,7 @@ class VideoFragment : ViewPagerFragment() { } private fun launchVideoPlayer() { - val newUri = activity!!.getFinalUriFromPath(medium.path, BuildConfig.APPLICATION_ID) - if (newUri == null) { - context!!.toast(R.string.unknown_error_occurred) - return - } - - val mimeType = activity!!.getUriMimeType(medium.path, newUri) - Intent(activity, VideoPlayerActivity::class.java).apply { - setDataAndType(newUri, mimeType) - context!!.startActivity(this) - } + activity!!.openPath(medium.path, false) } private fun toggleFullscreen() {