@@ -38,6 +38,7 @@ import androidx.compose.material3.TopAppBar
3838import androidx.compose.runtime.Composable
3939import androidx.compose.runtime.LaunchedEffect
4040import androidx.compose.runtime.getValue
41+ import androidx.compose.runtime.mutableIntStateOf
4142import androidx.compose.runtime.mutableStateOf
4243import androidx.compose.runtime.remember
4344import androidx.compose.runtime.rememberCoroutineScope
@@ -72,6 +73,8 @@ fun AppDataScreen(
7273 val state = viewModel.asState()
7374
7475 var showMigrationConfirmDialog by remember { mutableStateOf(false ) }
76+ var trigger by remember { mutableIntStateOf(0 ) }
77+ val cacheDirSize = remember(trigger) { context.cacheDir.calculateSize().adaptiveFileSize() }
7578
7679 val permissionLauncher = rememberLauncherForActivityResult(
7780 contract = ActivityResultContracts .RequestPermission ()
@@ -181,7 +184,7 @@ fun AppDataScreen(
181184
182185 ListItem (
183186 headlineContent = {
184- Text (text = stringResource(RString .clear_cache))
187+ Text (text = stringResource(RString .clear_cache, cacheDirSize ))
185188 },
186189 modifier = Modifier .clickable {
187190 scope.launch(Dispatchers .IO ) {
@@ -190,6 +193,7 @@ fun AppDataScreen(
190193 it.deleteRecursively()
191194 }
192195 ToastUtil .safeShortToast(RString .cache_cleared, dirSize)
196+ trigger++
193197 }
194198 },
195199 leadingContent = {
0 commit comments