diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsViewModel.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsViewModel.kt index f5202f107a..b1b5cd1507 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsViewModel.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsViewModel.kt @@ -85,9 +85,9 @@ class ImportLoginsViewModel @Inject constructor( } private fun handleFailedSyncAcknowledged() { - mutableStateFlow.update { - it.copy(dialogState = null) - } + dismissDialog() + firstTimeActionManager.storeShowImportLogins(showImportLogins = false) + firstTimeActionManager.storeShowImportLoginsSettingsBadge(showBadge = true) sendEvent(ImportLoginsEvent.NavigateBack) } diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsViewModelTest.kt index f9473fb0cd..fc529b2eb5 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsViewModelTest.kt @@ -423,7 +423,7 @@ class ImportLoginsViewModelTest : BaseViewModelTest() { } @Test - fun `FailSyncAcknowledged should remove dialog state and send NavigateBack event`() = + fun `FailSyncAcknowledged clears dialog, navigates back, and stores first time values`() = runTest { coEvery { vaultRepository.syncForResult(forced = true) @@ -447,6 +447,10 @@ class ImportLoginsViewModelTest : BaseViewModelTest() { awaitItem(), ) } + verify(exactly = 1) { + firstTimeActionManager.storeShowImportLogins(showImportLogins = false) + firstTimeActionManager.storeShowImportLoginsSettingsBadge(showBadge = true) + } } @Suppress("MaxLineLength")