diff --git a/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptFragment.kt b/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptFragment.kt index 3a1c65a..fe8d3db 100644 --- a/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptFragment.kt +++ b/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptFragment.kt @@ -26,6 +26,8 @@ import android.view.View import android.view.ViewGroup import android.widget.Toast import androidx.core.content.FileProvider +import androidx.core.view.ViewCompat +import androidx.core.view.WindowInsetsCompat import androidx.fragment.app.Fragment import androidx.lifecycle.lifecycleScope import com.google.android.material.button.MaterialButton @@ -111,6 +113,32 @@ class TransferReceiptFragment : Fragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { receiptCard.setOnClickListener { showFullScreenReceipt() } + val btnRow = view.findViewById(R.id.btnRow) + val basePaddingBottom = btnRow.paddingBottom + ViewCompat.setOnApplyWindowInsetsListener(btnRow) { v, insets -> + val isBottomNav = requireContext().getSharedPreferences("prefs", Context.MODE_PRIVATE).getBoolean("bottom_nav", false) + val navBar = insets.getInsets(WindowInsetsCompat.Type.systemBars()) + v.setPadding(v.paddingLeft, v.paddingTop, v.paddingRight, basePaddingBottom + if (isBottomNav) 0 else navBar.bottom) + insets + } + + val receiptContainer = view.findViewById(R.id.receiptContainer) + receiptContainer.setOnTouchListener { _, _ -> true } + receiptContainer.viewTreeObserver.addOnGlobalLayoutListener(object : android.view.ViewTreeObserver.OnGlobalLayoutListener { + override fun onGlobalLayout() { + receiptContainer.viewTreeObserver.removeOnGlobalLayoutListener(this) + val available = receiptContainer.height + val natural = receiptCard.height + if (natural > available && available > 0) { + val scale = available.toFloat() / natural + receiptCard.scaleX = scale + receiptCard.scaleY = scale + receiptCard.pivotX = receiptCard.width / 2f + receiptCard.pivotY = 0f + } + } + }) + view.findViewById(R.id.btnDone).setOnClickListener { parentFragmentManager.popBackStack() } diff --git a/app/src/main/res/layout/fragment_receipt_bml.xml b/app/src/main/res/layout/fragment_receipt_bml.xml index 9dc9125..41e77e8 100644 --- a/app/src/main/res/layout/fragment_receipt_bml.xml +++ b/app/src/main/res/layout/fragment_receipt_bml.xml @@ -7,6 +7,14 @@ android:orientation="vertical" android:background="?attr/colorSurface"> + + @@ -207,10 +215,13 @@ + + + + + +