diff --git a/app/src/main/java/com/example/abe/ui/scanner/ScannerFragment.kt b/app/src/main/java/com/example/abe/ui/scanner/ScannerFragment.kt index ad99bb79fbc88fa37d4d9d039c91edc8a3ad817c..7cb0c5939b78919aa33c6c742989ba3acf70c8d7 100644 --- a/app/src/main/java/com/example/abe/ui/scanner/ScannerFragment.kt +++ b/app/src/main/java/com/example/abe/ui/scanner/ScannerFragment.kt @@ -114,14 +114,11 @@ class ScannerFragment : Fragment(), UploadResultCallback { val imageUri = result.data?.data if (imageUri != null) { val imageFile = uriToFile(imageUri) + isProcessingPhoto = true attemptUpload(imageFile) - - val msg = "Uploading photo, please wait" - Toast.makeText(requireContext(), msg, Toast.LENGTH_SHORT).show() } else { val msg = "Failed to fetch image from gallery" Toast.makeText(requireContext(), msg, Toast.LENGTH_SHORT).show() - isProcessingPhoto = false } } } @@ -206,6 +203,13 @@ class ScannerFragment : Fragment(), UploadResultCallback { } private fun attemptUpload(imageFile: File) { + val activity = activity as MainActivity + if (!isConnected(activity.getNetworkState())) { + binding.scanLayout.visibility = View.GONE + binding.noNetworkLayout.visibility = View.VISIBLE + isProcessingPhoto = false + return + } waitingUploadDialog.show() lifecycleScope.launch { @@ -214,6 +218,8 @@ class ScannerFragment : Fragment(), UploadResultCallback { PreferenceDataStoreConstants.TOKEN, "" ) + val msg = "Uploading photo, please wait" + Toast.makeText(requireContext(), msg, Toast.LENGTH_LONG).show() retrofit.upload(token, imageFile, this@ScannerFragment) } } @@ -235,26 +241,14 @@ class ScannerFragment : Fragment(), UploadResultCallback { val cancelButton = dialog.findViewById<Button>(R.id.cancel_button) confirmButton.setOnClickListener { - val activity = activity as MainActivity - if (!isConnected(activity.getNetworkState())) { + val filePath = imageUri.path + if (filePath != null) { + val imageFile = File(filePath) + attemptUpload(imageFile) dialog.dismiss() - binding.scanLayout.visibility = View.GONE - binding.noNetworkLayout.visibility = View.VISIBLE - isProcessingPhoto = false } else { - val filePath = imageUri.path - if (filePath != null) { - val imageFile = File(filePath) - attemptUpload(imageFile) - - val msg = "Uploading photo, please wait" - Toast.makeText(requireContext(), msg, Toast.LENGTH_LONG).show() - - dialog.dismiss() - } else { - isProcessingPhoto = false - dialog.dismiss() - } + isProcessingPhoto = false + dialog.dismiss() } } @@ -423,7 +417,6 @@ class ScannerFragment : Fragment(), UploadResultCallback { val intent = Intent(Intent.ACTION_PICK) intent.type = "image/*" - isProcessingPhoto = true openGalleryLauncher.launch(intent) }