package ru.notesapp.ui
import android.widget.ImageView
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.viewinterop.AndroidView
import com.bumptech.glide.Glide
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions
import com.bumptech.glide.request.RequestOptions
@Composable
fun GlideImage(
model: Any?,
contentDescription: String?,
modifier: Modifier = Modifier,
options: RequestOptions = RequestOptions(),
contentScale: ImageView.ScaleType = ImageView.ScaleType.CENTER_CROP,
) {
AndroidView(
modifier = modifier,
factory = { ctx ->
ImageView(ctx).apply {
scaleType = contentScale
contentDescription = contentDescription
}
},
update = { iv ->
Glide.with(iv)
.load(model)
.apply(options)
.transition(DrawableTransitionOptions.withCrossFade(150))
.into(iv)
}
)
}