diff --git a/app/src/main/java/com/quillstudios/pokegoalshelper/ScreenCaptureService.kt b/app/src/main/java/com/quillstudios/pokegoalshelper/ScreenCaptureService.kt index c5eee66..cb47ea8 100644 --- a/app/src/main/java/com/quillstudios/pokegoalshelper/ScreenCaptureService.kt +++ b/app/src/main/java/com/quillstudios/pokegoalshelper/ScreenCaptureService.kt @@ -1324,9 +1324,13 @@ class ScreenCaptureService : Service() { val mat = convertImageToMat(image) if (mat != null) { + // Convert BGR Mat to RGB for proper color channels + val rgbMat = Mat() + Imgproc.cvtColor(mat, rgbMat, Imgproc.COLOR_BGR2RGB) + // Convert Mat to Bitmap - val bitmap = Bitmap.createBitmap(mat.cols(), mat.rows(), Bitmap.Config.ARGB_8888) - Utils.matToBitmap(mat, bitmap) + val bitmap = Bitmap.createBitmap(rgbMat.cols(), rgbMat.rows(), Bitmap.Config.ARGB_8888) + Utils.matToBitmap(rgbMat, bitmap) // Create a copy of the bitmap for long screenshot processing val bitmapCopy = bitmap.copy(bitmap.config ?: Bitmap.Config.ARGB_8888, false) @@ -1342,6 +1346,7 @@ class ScreenCaptureService : Service() { // Clean up original resources bitmap.recycle() mat.release() + rgbMat.release() } else { PGHLog.w(TAG, "⚠️ Failed to convert image to Mat for long screenshot") }