From ebe8641ec76eee234260e13a66fa148b43af805a Mon Sep 17 00:00:00 2001 From: MohitMali Date: Mon, 25 Apr 2022 14:50:24 +0530 Subject: [PATCH] seperate two method and chaning name --- .../library/LocalLibraryFragment.kt | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt index fde73d628..c5790905c 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt @@ -173,29 +173,34 @@ class LocalLibraryFragment : BaseFragment() { override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { when (requestCode) { FILE_SELECT_CODE -> { - data?.data - ?.let(::validateFileFromUriAndNavigateToReaderFragment) + data?.data?.let { uri -> + getZimFileFromUri(uri)?.let(::navigateToReaderFragment) + } } else -> super.onActivityResult(requestCode, resultCode, data) } } - private fun validateFileFromUriAndNavigateToReaderFragment( + private fun getZimFileFromUri( uri: Uri - ) { + ): File? { val filePath = FileUtils.getLocalFilePathByUri( requireActivity().applicationContext, uri ) if (filePath == null || !File(filePath).exists()) { activity.toast(R.string.error_file_not_found) - return + return null } val file = File(filePath) - if (!FileUtils.isValidZimFile(file.path)) { + return if (!FileUtils.isValidZimFile(file.path)) { activity.toast(R.string.error_file_invalid) - return + null + } else { + file } + } + private fun navigateToReaderFragment(file: File) { if (!file.canRead()) { activity.toast(R.string.unable_to_read_zim_file) } else {