From 67ff580f3f110a7c706f8c42bcfc2f51a495c533 Mon Sep 17 00:00:00 2001
From: yansans <66671259+yansans@users.noreply.github.com>
Date: Thu, 4 Apr 2024 14:08:35 +0700
Subject: [PATCH] style: progress bar when upload scan

---
 .../example/bondoyap/ui/scanner/ScannerFragment.kt  |  6 ++++++
 app/src/main/res/layout/fragment_scanner.xml        | 13 +++++++++++++
 2 files changed, 19 insertions(+)

diff --git a/app/src/main/java/com/example/bondoyap/ui/scanner/ScannerFragment.kt b/app/src/main/java/com/example/bondoyap/ui/scanner/ScannerFragment.kt
index 94353b0..9d0ede0 100644
--- a/app/src/main/java/com/example/bondoyap/ui/scanner/ScannerFragment.kt
+++ b/app/src/main/java/com/example/bondoyap/ui/scanner/ScannerFragment.kt
@@ -103,6 +103,7 @@ class ScannerFragment : Fragment() {
                     }
 
                     uploadPhoto(tempFile)
+
                 } catch (e: Exception) {
                     Log.e("ImageInput", "Image Input Failed:", e)
                 }
@@ -219,6 +220,9 @@ class ScannerFragment : Fragment() {
 
     private fun uploadPhoto(photo: File) {
         try {
+            val progressBar = binding.loading
+            progressBar.visibility = View.VISIBLE
+
             val requestFile = photo.asRequestBody("image/*".toMediaTypeOrNull())
             val requestBody = MultipartBody.Part.createFormData("file", photo.name, requestFile)
             val apiCall = apiClient.getApiService(requireContext()).getBill(requestBody)
@@ -227,6 +231,8 @@ class ScannerFragment : Fragment() {
                     call: Call<BillResponse>, response: Response<BillResponse>
                 ) {
                     if (response.isSuccessful) {
+                        progressBar.visibility = View.GONE
+
                         val billResponse =
                             response.body() ?: throw Exception("Bill Response is Empty")
                         Log.d("BillUpload", "Server Response: $billResponse")
diff --git a/app/src/main/res/layout/fragment_scanner.xml b/app/src/main/res/layout/fragment_scanner.xml
index 4caebe4..9c7aedd 100644
--- a/app/src/main/res/layout/fragment_scanner.xml
+++ b/app/src/main/res/layout/fragment_scanner.xml
@@ -47,4 +47,17 @@
         app:layout_constraintLeft_toLeftOf="parent"
         app:layout_constraintRight_toRightOf="parent"
         app:layout_constraintTop_toBottomOf="@id/capture_button" />
+
+    <ProgressBar
+        android:id="@+id/loading"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
+        android:visibility="gone"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="@+id/upload_button"
+        app:layout_constraintHorizontal_bias="0.498"
+        app:layout_constraintStart_toStartOf="@+id/upload_button"
+        app:layout_constraintTop_toTopOf="parent"
+        app:layout_constraintVertical_bias="0.775" />
 </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
-- 
GitLab