diff --git a/app/src/main/java/com/example/nerbos/fragments/twibbon/TwibbonFragment.kt b/app/src/main/java/com/example/nerbos/fragments/twibbon/TwibbonFragment.kt index 1cd5e7ecadeb8b0dd4bae53fe2eae5887b9444f4..d447536d67788e9a2a9ec90089516d3e689ed16e 100644 --- a/app/src/main/java/com/example/nerbos/fragments/twibbon/TwibbonFragment.kt +++ b/app/src/main/java/com/example/nerbos/fragments/twibbon/TwibbonFragment.kt @@ -170,13 +170,17 @@ class TwibbonFragment : Fragment() { val top = (cameraBitmap.height - sideLength) / 2 // Crop or resize the camera image to make it square - val croppedCameraBitmap = Bitmap.createBitmap(cameraBitmap, 0, 0, sideLength, sideLength) + val croppedCameraBitmap = if (cameraBitmap.width > cameraBitmap.height) { + Bitmap.createBitmap(cameraBitmap, (cameraBitmap.width - sideLength) / 2, 0, sideLength, sideLength) + } else { + Bitmap.createBitmap(cameraBitmap, 0, (cameraBitmap.height - sideLength) / 2, sideLength, sideLength) + } // Resize the twibbon image to match the dimensions of the cropped camera image val resizedTwibbonBitmap = Bitmap.createScaledBitmap(twibbonBitmap, sideLength, sideLength, true) // Create a new bitmap with the combined images - val combinedBitmap = Bitmap.createBitmap(cameraBitmap.width, cameraBitmap.height, Bitmap.Config.ARGB_8888) + val combinedBitmap = Bitmap.createBitmap(sideLength, sideLength, Bitmap.Config.ARGB_8888) val canvas = Canvas(combinedBitmap) val paint = Paint(Paint.FILTER_BITMAP_FLAG) @@ -184,7 +188,7 @@ class TwibbonFragment : Fragment() { canvas.drawBitmap(croppedCameraBitmap, Matrix(), paint) // Draw the resized twibbon image onto the canvas at the calculated position - canvas.drawBitmap(resizedTwibbonBitmap, left.toFloat(), top.toFloat(), paint) + canvas.drawBitmap(resizedTwibbonBitmap, 0f, 0f, paint) return combinedBitmap } @@ -209,7 +213,7 @@ class TwibbonFragment : Fragment() { private fun showImagePopup(imageBitmap: Bitmap?) { if (imageBitmap != null) { - MaterialAlertDialogBuilder(requireContext()) + MaterialAlertDialogBuilder(requireContext(), R.style.AlertDialogTheme) .setTitle("Save this picture?") .setPositiveButton("Yes") { dialog, _ -> showFilenameInputDialog(imageBitmap) @@ -246,7 +250,7 @@ class TwibbonFragment : Fragment() { val inputView = LayoutInflater.from(requireContext()).inflate(R.layout.twibbon_filename, null) val filenameEditText = inputView.findViewById<EditText>(R.id.filenameInput) - MaterialAlertDialogBuilder(requireContext()) + MaterialAlertDialogBuilder(requireContext(), R.style.AlertDialogTheme) .setTitle("Save Image") .setView(inputView) .setPositiveButton("Save") { dialog, _ -> diff --git a/app/src/main/res/layout/twibbon_filename.xml b/app/src/main/res/layout/twibbon_filename.xml index 37c5b5e7b756ad9cc53614b986a56e78274c454c..2320181f84546942388d87ce1f007a06812101f7 100644 --- a/app/src/main/res/layout/twibbon_filename.xml +++ b/app/src/main/res/layout/twibbon_filename.xml @@ -3,8 +3,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" - android:padding="16dp" - android:background="@drawable/round_corner_input_transaction_form"> + android:padding="16dp"> <EditText android:id="@+id/filenameInput"