From d43074bab87d9fd561415c7712539853d8a8db73 Mon Sep 17 00:00:00 2001 From: skydoves Date: Sun, 15 Sep 2024 14:12:53 +0900 Subject: [PATCH] Run hardware blurring on the IO threads --- .../com/skydoves/cloudy/CloudyModifierNode.kt | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/cloudy/src/main/kotlin/com/skydoves/cloudy/CloudyModifierNode.kt b/cloudy/src/main/kotlin/com/skydoves/cloudy/CloudyModifierNode.kt index 7ca8c63..1f42f2e 100644 --- a/cloudy/src/main/kotlin/com/skydoves/cloudy/CloudyModifierNode.kt +++ b/cloudy/src/main/kotlin/com/skydoves/cloudy/CloudyModifierNode.kt @@ -124,17 +124,17 @@ private class CloudyModifierNode( onStateChanged.invoke(CloudyState.Loading) try { - val targetBitmap: Bitmap = runBlocking(Dispatchers.IO) { - graphicsLayer.toImageBitmap().asAndroidBitmap() + val blurredBitmap: Bitmap = runBlocking(Dispatchers.IO) { + val targetBitmap: Bitmap = graphicsLayer.toImageBitmap().asAndroidBitmap() .copy(Bitmap.Config.ARGB_8888, true) - } ?: throw RuntimeException("Couldn't capture a bitmap from the composable tree") - val blurredBitmap = iterativeBlur( - androidBitmap = targetBitmap, - radius = radius - )?.apply { - drawImage(this.asImageBitmap()) - } + iterativeBlur( + androidBitmap = targetBitmap, + radius = radius + )?.apply { + drawImage(this.asImageBitmap()) + } + } ?: throw RuntimeException("Couldn't capture a bitmap from the composable tree") onStateChanged.invoke(CloudyState.Success(blurredBitmap)) } catch (e: Exception) {