From 9c6e0a7051c4dc90503722ee14622edd7db17236 Mon Sep 17 00:00:00 2001 From: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com> Date: Thu, 28 Nov 2024 17:37:52 +0400 Subject: [PATCH] desktop: fix avatar crop (#5271) * desktop: fix avatar crop wip * fix --- .../chat/simplex/common/platform/Images.desktop.kt | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/multiplatform/common/src/desktopMain/kotlin/chat/simplex/common/platform/Images.desktop.kt b/apps/multiplatform/common/src/desktopMain/kotlin/chat/simplex/common/platform/Images.desktop.kt index 0f53adaf0b..53f3301507 100644 --- a/apps/multiplatform/common/src/desktopMain/kotlin/chat/simplex/common/platform/Images.desktop.kt +++ b/apps/multiplatform/common/src/desktopMain/kotlin/chat/simplex/common/platform/Images.desktop.kt @@ -1,6 +1,8 @@ package chat.simplex.common.platform import androidx.compose.ui.graphics.* +import androidx.compose.ui.unit.IntOffset +import androidx.compose.ui.unit.IntSize import boofcv.io.image.ConvertBufferedImage import boofcv.struct.image.GrayU8 import chat.simplex.res.MR @@ -67,8 +69,16 @@ actual fun cropToSquare(image: ImageBitmap): ImageBitmap { } else { yOffset = (image.height - side) / 2 } - // LALAL MAKE REAL CROP - return image + val croppedImage = ImageBitmap(side, side) + val canvas = Canvas(croppedImage) + canvas.drawImageRect( + image, + srcOffset = IntOffset(xOffset, yOffset), + srcSize = IntSize(side, side), + dstSize = IntSize(side, side), + paint = Paint() + ) + return croppedImage } actual fun compressImageStr(bitmap: ImageBitmap): String {