From 05699369ba7ff154d8ab003bab2657c16e58272a Mon Sep 17 00:00:00 2001 From: Filippo Scognamiglio Date: Thu, 9 May 2024 22:39:14 +0200 Subject: [PATCH] Fix some UI states was not updated during sync. --- .../swordfish/lemuroid/app/mobile/feature/home/HomeScreen.kt | 5 ++++- .../feature/settings/savesync/SaveSyncSettingsScreen.kt | 2 +- .../feature/settings/savesync/SaveSyncSettingsViewModel.kt | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/home/HomeScreen.kt b/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/home/HomeScreen.kt index 8f6618b6dc..5464e1988c 100644 --- a/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/home/HomeScreen.kt +++ b/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/home/HomeScreen.kt @@ -108,6 +108,7 @@ private fun HomeScreen( messageId = R.string.home_empty_message, actionId = R.string.home_empty_action, onAction = onSetDirectoryClicked, + enabled = !state.indexInProgress ) } HomeRow( @@ -177,7 +178,8 @@ private fun HomeNotification( titleId: Int, messageId: Int, actionId: Int, - onAction: () -> Unit, + enabled: Boolean = true, + onAction: () -> Unit = { }, ) { ElevatedCard( modifier = @@ -203,6 +205,7 @@ private fun HomeNotification( OutlinedButton( modifier = Modifier.align(Alignment.End), onClick = onAction, + enabled = enabled ) { Text(stringResource(id = actionId)) } diff --git a/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/settings/savesync/SaveSyncSettingsScreen.kt b/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/settings/savesync/SaveSyncSettingsScreen.kt index d26f430d84..9cc315daad 100644 --- a/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/settings/savesync/SaveSyncSettingsScreen.kt +++ b/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/settings/savesync/SaveSyncSettingsScreen.kt @@ -31,7 +31,7 @@ fun SaveSyncSettingsScreen( .value val isSyncInProgress = - viewModel.indexingInProgress + viewModel.saveSyncInProgress .collectAsState(true) .value diff --git a/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/settings/savesync/SaveSyncSettingsViewModel.kt b/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/settings/savesync/SaveSyncSettingsViewModel.kt index a7275ae5a3..4095918381 100644 --- a/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/settings/savesync/SaveSyncSettingsViewModel.kt +++ b/lemuroid-app/src/main/java/com/swordfish/lemuroid/app/mobile/feature/settings/savesync/SaveSyncSettingsViewModel.kt @@ -26,7 +26,7 @@ class SaveSyncSettingsViewModel( } } - val indexingInProgress = PendingOperationsMonitor(getContext()).anyLibraryOperationInProgress() + val saveSyncInProgress = PendingOperationsMonitor(getContext()).anySaveOperationInProgress() data class State( val isConfigured: Boolean = false,