From 660c3b509ac009d21512a7870fb90741a3d9af51 Mon Sep 17 00:00:00 2001 From: CherretGit Date: Sat, 26 Jul 2025 03:35:28 +0700 Subject: [PATCH] fix lags --- .../java/com/cherret/zaprett/ui/screen/SettingsScreen.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/cherret/zaprett/ui/screen/SettingsScreen.kt b/app/src/main/java/com/cherret/zaprett/ui/screen/SettingsScreen.kt index aa87ce1..9f30c98 100644 --- a/app/src/main/java/com/cherret/zaprett/ui/screen/SettingsScreen.kt +++ b/app/src/main/java/com/cherret/zaprett/ui/screen/SettingsScreen.kt @@ -3,6 +3,7 @@ package com.cherret.zaprett.ui.screen import android.content.Context import android.content.Intent import android.content.SharedPreferences +import android.graphics.drawable.Drawable import android.net.Uri import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.* @@ -768,7 +769,11 @@ private fun ChooseAppsDialog( } @Composable -private fun AppItem(viewModel: SettingsViewModel, packageName : String, enabled : Boolean, onCheckedChange: (Boolean) -> Unit){ +private fun AppItem(viewModel: SettingsViewModel, packageName : String, enabled : Boolean, onCheckedChange: (Boolean) -> Unit) { + var bitmap by remember { mutableStateOf(null) } + LaunchedEffect(packageName) { + bitmap = viewModel.getAppIconBitmap(packageName) + } Row ( modifier = Modifier .fillMaxWidth() @@ -777,7 +782,7 @@ private fun AppItem(viewModel: SettingsViewModel, packageName : String, enabled verticalAlignment = Alignment.CenterVertically, ) { AsyncImage( - model = ImageRequest.Builder(LocalContext.current).data(viewModel.getAppIconBitmap(packageName)).build(), + model = bitmap, contentDescription = null, modifier = Modifier .padding(4.dp)