mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-13 15:54:59 +01:00
Cleanup rounding code
This commit is contained in:
parent
f84a0df532
commit
b2ba532e00
@ -62,6 +62,7 @@ import com.nextcloud.talk.events.UserMentionClickEvent
|
|||||||
import com.nextcloud.talk.newarch.local.models.UserNgEntity
|
import com.nextcloud.talk.newarch.local.models.UserNgEntity
|
||||||
import com.nextcloud.talk.newarch.utils.Images
|
import com.nextcloud.talk.newarch.utils.Images
|
||||||
import com.nextcloud.talk.utils.text.Spans
|
import com.nextcloud.talk.utils.text.Spans
|
||||||
|
import kotlinx.coroutines.runBlocking
|
||||||
import org.greenrobot.eventbus.EventBus
|
import org.greenrobot.eventbus.EventBus
|
||||||
import java.lang.reflect.InvocationTargetException
|
import java.lang.reflect.InvocationTargetException
|
||||||
import java.util.regex.Pattern
|
import java.util.regex.Pattern
|
||||||
@ -97,24 +98,11 @@ object DisplayUtils {
|
|||||||
|
|
||||||
fun getRoundedDrawable(drawable: Drawable?): Drawable {
|
fun getRoundedDrawable(drawable: Drawable?): Drawable {
|
||||||
val bitmap = getBitmap(drawable!!)
|
val bitmap = getBitmap(drawable!!)
|
||||||
return BitmapDrawable(roundImage(BitmapPool(10000), bitmap))
|
val drawable = runBlocking {
|
||||||
}
|
return@runBlocking BitmapDrawable(CircleCropTransformation().transform(BitmapPool(10000), bitmap))
|
||||||
|
|
||||||
private fun roundImage(pool: BitmapPool, input: Bitmap): Bitmap {
|
|
||||||
val circlePaint = Paint(Paint.ANTI_ALIAS_FLAG or Paint.FILTER_BITMAP_FLAG)
|
|
||||||
val bitmapPaint = Paint(Paint.ANTI_ALIAS_FLAG or Paint.FILTER_BITMAP_FLAG).apply { xfermode = PorterDuffXfermode(PorterDuff.Mode.SRC_IN) }
|
|
||||||
|
|
||||||
val minSize = min(input.width, input.height)
|
|
||||||
val radius = minSize / 2f
|
|
||||||
val output = pool.get(minSize, minSize, input.config)
|
|
||||||
output.applyCanvas {
|
|
||||||
drawCircle(radius, radius, radius, circlePaint)
|
|
||||||
drawBitmap(input, 0f, 0f, bitmapPaint)
|
|
||||||
}
|
}
|
||||||
pool.put(input)
|
|
||||||
|
|
||||||
return output
|
|
||||||
|
|
||||||
|
return drawable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user