mirror of
https://github.com/bitwarden/android.git
synced 2025-12-10 09:56:45 -06:00
PM-27756: Create common ExitManager (#6117)
This commit is contained in:
parent
0959284e6f
commit
4b7fcdb6ea
@ -22,11 +22,14 @@ import com.bitwarden.cxf.ui.composition.LocalCredentialExchangeImporter
|
|||||||
import com.bitwarden.cxf.ui.composition.LocalCredentialExchangeRequestValidator
|
import com.bitwarden.cxf.ui.composition.LocalCredentialExchangeRequestValidator
|
||||||
import com.bitwarden.cxf.validator.CredentialExchangeRequestValidator
|
import com.bitwarden.cxf.validator.CredentialExchangeRequestValidator
|
||||||
import com.bitwarden.cxf.validator.dsl.credentialExchangeRequestValidator
|
import com.bitwarden.cxf.validator.dsl.credentialExchangeRequestValidator
|
||||||
|
import com.bitwarden.ui.platform.composition.LocalExitManager
|
||||||
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
||||||
import com.bitwarden.ui.platform.composition.LocalQrCodeAnalyzer
|
import com.bitwarden.ui.platform.composition.LocalQrCodeAnalyzer
|
||||||
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
||||||
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzerImpl
|
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzerImpl
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManagerImpl
|
||||||
import com.x8bit.bitwarden.R
|
import com.x8bit.bitwarden.R
|
||||||
import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManager
|
import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManager
|
||||||
import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManagerImpl
|
import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManagerImpl
|
||||||
@ -36,8 +39,6 @@ import com.x8bit.bitwarden.ui.credentials.manager.CredentialProviderCompletionMa
|
|||||||
import com.x8bit.bitwarden.ui.platform.manager.BitwardenBuildInfoManagerImpl
|
import com.x8bit.bitwarden.ui.platform.manager.BitwardenBuildInfoManagerImpl
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManagerImpl
|
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManagerImpl
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManagerImpl
|
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.keychain.KeyChainManager
|
import com.x8bit.bitwarden.ui.platform.manager.keychain.KeyChainManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.keychain.KeyChainManagerImpl
|
import com.x8bit.bitwarden.ui.platform.manager.keychain.KeyChainManagerImpl
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.nfc.NfcManager
|
import com.x8bit.bitwarden.ui.platform.manager.nfc.NfcManager
|
||||||
@ -128,13 +129,6 @@ val LocalBiometricsManager: ProvidableCompositionLocal<BiometricsManager> = comp
|
|||||||
*/
|
*/
|
||||||
val LocalClock: ProvidableCompositionLocal<Clock> = compositionLocalOf { Clock.systemDefaultZone() }
|
val LocalClock: ProvidableCompositionLocal<Clock> = compositionLocalOf { Clock.systemDefaultZone() }
|
||||||
|
|
||||||
/**
|
|
||||||
* Provides access to the exit manager throughout the app.
|
|
||||||
*/
|
|
||||||
val LocalExitManager: ProvidableCompositionLocal<ExitManager> = compositionLocalOf {
|
|
||||||
error("CompositionLocal ExitManager not present")
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provides access to the Auth Tab launchers throughout the app.
|
* Provides access to the Auth Tab launchers throughout the app.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -37,11 +37,11 @@ import com.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
|
|||||||
import com.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
|
import com.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
|
||||||
import com.bitwarden.ui.platform.components.scaffold.BitwardenScaffold
|
import com.bitwarden.ui.platform.components.scaffold.BitwardenScaffold
|
||||||
import com.bitwarden.ui.platform.components.util.rememberVectorPainter
|
import com.bitwarden.ui.platform.components.util.rememberVectorPainter
|
||||||
|
import com.bitwarden.ui.platform.composition.LocalExitManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenString
|
import com.bitwarden.ui.platform.resource.BitwardenString
|
||||||
import com.bitwarden.ui.platform.theme.BitwardenTheme
|
import com.bitwarden.ui.platform.theme.BitwardenTheme
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Displays the login approval screen.
|
* Displays the login approval screen.
|
||||||
|
|||||||
@ -30,13 +30,13 @@ import com.bitwarden.ui.platform.components.scaffold.BitwardenScaffold
|
|||||||
import com.bitwarden.ui.platform.components.snackbar.BitwardenSnackbarHost
|
import com.bitwarden.ui.platform.components.snackbar.BitwardenSnackbarHost
|
||||||
import com.bitwarden.ui.platform.components.snackbar.model.rememberBitwardenSnackbarHostState
|
import com.bitwarden.ui.platform.components.snackbar.model.rememberBitwardenSnackbarHostState
|
||||||
import com.bitwarden.ui.platform.components.util.rememberVectorPainter
|
import com.bitwarden.ui.platform.components.util.rememberVectorPainter
|
||||||
|
import com.bitwarden.ui.platform.composition.LocalExitManager
|
||||||
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenString
|
import com.bitwarden.ui.platform.resource.BitwardenString
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalPermissionsManager
|
import com.x8bit.bitwarden.ui.platform.composition.LocalPermissionsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.permissions.PermissionsManager
|
import com.x8bit.bitwarden.ui.platform.manager.permissions.PermissionsManager
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.handlers.AddEditSendHandlers
|
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.handlers.AddEditSendHandlers
|
||||||
|
|
||||||
|
|||||||
@ -61,8 +61,10 @@ import com.bitwarden.ui.platform.components.snackbar.BitwardenSnackbarHost
|
|||||||
import com.bitwarden.ui.platform.components.snackbar.model.rememberBitwardenSnackbarHostState
|
import com.bitwarden.ui.platform.components.snackbar.model.rememberBitwardenSnackbarHostState
|
||||||
import com.bitwarden.ui.platform.components.text.BitwardenClickableText
|
import com.bitwarden.ui.platform.components.text.BitwardenClickableText
|
||||||
import com.bitwarden.ui.platform.components.util.rememberVectorPainter
|
import com.bitwarden.ui.platform.components.util.rememberVectorPainter
|
||||||
|
import com.bitwarden.ui.platform.composition.LocalExitManager
|
||||||
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenString
|
import com.bitwarden.ui.platform.resource.BitwardenString
|
||||||
import com.bitwarden.ui.platform.theme.BitwardenTheme
|
import com.bitwarden.ui.platform.theme.BitwardenTheme
|
||||||
@ -73,11 +75,9 @@ import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenOverwritePassk
|
|||||||
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenPinDialog
|
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenPinDialog
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalBiometricsManager
|
import com.x8bit.bitwarden.ui.platform.composition.LocalBiometricsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalCredentialProviderCompletionManager
|
import com.x8bit.bitwarden.ui.platform.composition.LocalCredentialProviderCompletionManager
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalPermissionsManager
|
import com.x8bit.bitwarden.ui.platform.composition.LocalPermissionsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.feature.settings.accountsecurity.PinInputDialog
|
import com.x8bit.bitwarden.ui.platform.feature.settings.accountsecurity.PinInputDialog
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.permissions.PermissionsManager
|
import com.x8bit.bitwarden.ui.platform.manager.permissions.PermissionsManager
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.generator.model.GeneratorMode
|
import com.x8bit.bitwarden.ui.tools.feature.generator.model.GeneratorMode
|
||||||
import com.x8bit.bitwarden.ui.vault.feature.addedit.handlers.VaultAddEditCardTypeHandlers
|
import com.x8bit.bitwarden.ui.vault.feature.addedit.handlers.VaultAddEditCardTypeHandlers
|
||||||
|
|||||||
@ -40,8 +40,10 @@ import com.bitwarden.ui.platform.components.snackbar.BitwardenSnackbarHost
|
|||||||
import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarHostState
|
import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarHostState
|
||||||
import com.bitwarden.ui.platform.components.snackbar.model.rememberBitwardenSnackbarHostState
|
import com.bitwarden.ui.platform.components.snackbar.model.rememberBitwardenSnackbarHostState
|
||||||
import com.bitwarden.ui.platform.components.util.rememberVectorPainter
|
import com.bitwarden.ui.platform.components.util.rememberVectorPainter
|
||||||
|
import com.bitwarden.ui.platform.composition.LocalExitManager
|
||||||
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenString
|
import com.bitwarden.ui.platform.resource.BitwardenString
|
||||||
import com.bitwarden.ui.util.Text
|
import com.bitwarden.ui.util.Text
|
||||||
@ -52,11 +54,9 @@ import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenOverwritePassk
|
|||||||
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenPinDialog
|
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenPinDialog
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalBiometricsManager
|
import com.x8bit.bitwarden.ui.platform.composition.LocalBiometricsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalCredentialProviderCompletionManager
|
import com.x8bit.bitwarden.ui.platform.composition.LocalCredentialProviderCompletionManager
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.feature.search.model.SearchType
|
import com.x8bit.bitwarden.ui.platform.feature.search.model.SearchType
|
||||||
import com.x8bit.bitwarden.ui.platform.feature.settings.accountsecurity.PinInputDialog
|
import com.x8bit.bitwarden.ui.platform.feature.settings.accountsecurity.PinInputDialog
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.AddEditSendRoute
|
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.AddEditSendRoute
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.ModeType
|
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.ModeType
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.send.viewsend.ViewSendRoute
|
import com.x8bit.bitwarden.ui.tools.feature.send.viewsend.ViewSendRoute
|
||||||
|
|||||||
@ -8,12 +8,12 @@ import com.bitwarden.ui.platform.base.BaseComposeTest
|
|||||||
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
||||||
import com.bitwarden.ui.platform.feature.settings.appearance.model.AppTheme
|
import com.bitwarden.ui.platform.feature.settings.appearance.model.AppTheme
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.platform.theme.BitwardenTheme
|
import com.bitwarden.ui.platform.theme.BitwardenTheme
|
||||||
import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManager
|
import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManager
|
||||||
import com.x8bit.bitwarden.ui.credentials.manager.CredentialProviderCompletionManager
|
import com.x8bit.bitwarden.ui.credentials.manager.CredentialProviderCompletionManager
|
||||||
import com.x8bit.bitwarden.ui.platform.composition.LocalManagerProvider
|
import com.x8bit.bitwarden.ui.platform.composition.LocalManagerProvider
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.keychain.KeyChainManager
|
import com.x8bit.bitwarden.ui.platform.manager.keychain.KeyChainManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.nfc.NfcManager
|
import com.x8bit.bitwarden.ui.platform.manager.nfc.NfcManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.permissions.PermissionsManager
|
import com.x8bit.bitwarden.ui.platform.manager.permissions.PermissionsManager
|
||||||
|
|||||||
@ -10,9 +10,9 @@ import androidx.compose.ui.test.onNodeWithText
|
|||||||
import androidx.compose.ui.test.performClick
|
import androidx.compose.ui.test.performClick
|
||||||
import androidx.compose.ui.test.performScrollTo
|
import androidx.compose.ui.test.performScrollTo
|
||||||
import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow
|
import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.util.asText
|
import com.bitwarden.ui.util.asText
|
||||||
import com.x8bit.bitwarden.ui.platform.base.BitwardenComposeTest
|
import com.x8bit.bitwarden.ui.platform.base.BitwardenComposeTest
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
import io.mockk.every
|
import io.mockk.every
|
||||||
import io.mockk.just
|
import io.mockk.just
|
||||||
import io.mockk.mockk
|
import io.mockk.mockk
|
||||||
|
|||||||
@ -23,12 +23,12 @@ import androidx.compose.ui.test.performTextInput
|
|||||||
import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow
|
import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow
|
||||||
import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarData
|
import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarData
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.util.asText
|
import com.bitwarden.ui.util.asText
|
||||||
import com.bitwarden.ui.util.assertNoDialogExists
|
import com.bitwarden.ui.util.assertNoDialogExists
|
||||||
import com.bitwarden.ui.util.isEditableText
|
import com.bitwarden.ui.util.isEditableText
|
||||||
import com.bitwarden.ui.util.isProgressBar
|
import com.bitwarden.ui.util.isProgressBar
|
||||||
import com.x8bit.bitwarden.ui.platform.base.BitwardenComposeTest
|
import com.x8bit.bitwarden.ui.platform.base.BitwardenComposeTest
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.permissions.FakePermissionManager
|
import com.x8bit.bitwarden.ui.platform.manager.permissions.FakePermissionManager
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.model.AddEditSendType
|
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.model.AddEditSendType
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.send.model.SendItemType
|
import com.x8bit.bitwarden.ui.tools.feature.send.model.SendItemType
|
||||||
|
|||||||
@ -42,6 +42,7 @@ import androidx.core.net.toUri
|
|||||||
import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow
|
import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow
|
||||||
import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarData
|
import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarData
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.util.asText
|
import com.bitwarden.ui.util.asText
|
||||||
import com.bitwarden.ui.util.assertNoDialogExists
|
import com.bitwarden.ui.util.assertNoDialogExists
|
||||||
import com.bitwarden.ui.util.assertScrollableNodeDoesNotExist
|
import com.bitwarden.ui.util.assertScrollableNodeDoesNotExist
|
||||||
@ -59,7 +60,6 @@ import com.x8bit.bitwarden.ui.credentials.manager.CredentialProviderCompletionMa
|
|||||||
import com.x8bit.bitwarden.ui.credentials.manager.model.RegisterFido2CredentialResult
|
import com.x8bit.bitwarden.ui.credentials.manager.model.RegisterFido2CredentialResult
|
||||||
import com.x8bit.bitwarden.ui.platform.base.BitwardenComposeTest
|
import com.x8bit.bitwarden.ui.platform.base.BitwardenComposeTest
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.permissions.FakePermissionManager
|
import com.x8bit.bitwarden.ui.platform.manager.permissions.FakePermissionManager
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.generator.model.GeneratorMode
|
import com.x8bit.bitwarden.ui.tools.feature.generator.model.GeneratorMode
|
||||||
import com.x8bit.bitwarden.ui.vault.feature.addedit.model.CustomFieldAction
|
import com.x8bit.bitwarden.ui.vault.feature.addedit.model.CustomFieldAction
|
||||||
|
|||||||
@ -24,6 +24,7 @@ import com.bitwarden.ui.platform.components.account.model.AccountSummary
|
|||||||
import com.bitwarden.ui.platform.components.icon.model.IconData
|
import com.bitwarden.ui.platform.components.icon.model.IconData
|
||||||
import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarData
|
import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarData
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
import com.bitwarden.ui.platform.resource.BitwardenDrawable
|
||||||
import com.bitwarden.ui.platform.resource.BitwardenString
|
import com.bitwarden.ui.platform.resource.BitwardenString
|
||||||
import com.bitwarden.ui.util.asText
|
import com.bitwarden.ui.util.asText
|
||||||
@ -55,7 +56,6 @@ import com.x8bit.bitwarden.ui.credentials.manager.model.RegisterFido2CredentialR
|
|||||||
import com.x8bit.bitwarden.ui.platform.base.BitwardenComposeTest
|
import com.x8bit.bitwarden.ui.platform.base.BitwardenComposeTest
|
||||||
import com.x8bit.bitwarden.ui.platform.feature.search.model.SearchType
|
import com.x8bit.bitwarden.ui.platform.feature.search.model.SearchType
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
import com.x8bit.bitwarden.ui.platform.manager.biometrics.BiometricsManager
|
||||||
import com.x8bit.bitwarden.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.AddEditSendRoute
|
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.AddEditSendRoute
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.ModeType
|
import com.x8bit.bitwarden.ui.tools.feature.send.addedit.ModeType
|
||||||
import com.x8bit.bitwarden.ui.tools.feature.send.model.SendItemType
|
import com.x8bit.bitwarden.ui.tools.feature.send.model.SendItemType
|
||||||
|
|||||||
@ -13,16 +13,17 @@ import com.bitwarden.annotation.OmitFromCoverage
|
|||||||
import com.bitwarden.authenticator.ui.platform.manager.AuthenticatorBuildInfoManagerImpl
|
import com.bitwarden.authenticator.ui.platform.manager.AuthenticatorBuildInfoManagerImpl
|
||||||
import com.bitwarden.authenticator.ui.platform.manager.biometrics.BiometricsManager
|
import com.bitwarden.authenticator.ui.platform.manager.biometrics.BiometricsManager
|
||||||
import com.bitwarden.authenticator.ui.platform.manager.biometrics.BiometricsManagerImpl
|
import com.bitwarden.authenticator.ui.platform.manager.biometrics.BiometricsManagerImpl
|
||||||
import com.bitwarden.authenticator.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.bitwarden.authenticator.ui.platform.manager.exit.ExitManagerImpl
|
|
||||||
import com.bitwarden.authenticator.ui.platform.manager.permissions.PermissionsManager
|
import com.bitwarden.authenticator.ui.platform.manager.permissions.PermissionsManager
|
||||||
import com.bitwarden.authenticator.ui.platform.manager.permissions.PermissionsManagerImpl
|
import com.bitwarden.authenticator.ui.platform.manager.permissions.PermissionsManagerImpl
|
||||||
import com.bitwarden.core.data.manager.BuildInfoManager
|
import com.bitwarden.core.data.manager.BuildInfoManager
|
||||||
|
import com.bitwarden.ui.platform.composition.LocalExitManager
|
||||||
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
import com.bitwarden.ui.platform.composition.LocalIntentManager
|
||||||
import com.bitwarden.ui.platform.composition.LocalQrCodeAnalyzer
|
import com.bitwarden.ui.platform.composition.LocalQrCodeAnalyzer
|
||||||
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
||||||
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzerImpl
|
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzerImpl
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManagerImpl
|
||||||
import java.time.Clock
|
import java.time.Clock
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -57,13 +58,6 @@ val LocalBiometricsManager: ProvidableCompositionLocal<BiometricsManager> = comp
|
|||||||
error("CompositionLocal BiometricsManager not present")
|
error("CompositionLocal BiometricsManager not present")
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Provides access to the exit manager throughout the app.
|
|
||||||
*/
|
|
||||||
val LocalExitManager: ProvidableCompositionLocal<ExitManager> = compositionLocalOf {
|
|
||||||
error("CompositionLocal ExitManager not present")
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provides access to the permission manager throughout the app.
|
* Provides access to the permission manager throughout the app.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -1,14 +0,0 @@
|
|||||||
package com.bitwarden.authenticator.ui.platform.manager.exit
|
|
||||||
|
|
||||||
import androidx.compose.runtime.Immutable
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A manager class for handling the various ways to exit the app.
|
|
||||||
*/
|
|
||||||
@Immutable
|
|
||||||
interface ExitManager {
|
|
||||||
/**
|
|
||||||
* Finishes the activity.
|
|
||||||
*/
|
|
||||||
fun exitApplication()
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
package com.bitwarden.authenticator.ui.platform.manager.exit
|
|
||||||
|
|
||||||
import android.app.Activity
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The default implementation of the [ExitManager] for managing the various ways to exit the app.
|
|
||||||
*/
|
|
||||||
class ExitManagerImpl(
|
|
||||||
val activity: Activity,
|
|
||||||
) : ExitManager {
|
|
||||||
override fun exitApplication() {
|
|
||||||
activity.finish()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -3,12 +3,12 @@ package com.bitwarden.authenticator.ui.platform.base
|
|||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import com.bitwarden.authenticator.ui.platform.composition.LocalManagerProvider
|
import com.bitwarden.authenticator.ui.platform.composition.LocalManagerProvider
|
||||||
import com.bitwarden.authenticator.ui.platform.manager.biometrics.BiometricsManager
|
import com.bitwarden.authenticator.ui.platform.manager.biometrics.BiometricsManager
|
||||||
import com.bitwarden.authenticator.ui.platform.manager.exit.ExitManager
|
|
||||||
import com.bitwarden.authenticator.ui.platform.manager.permissions.PermissionsManager
|
import com.bitwarden.authenticator.ui.platform.manager.permissions.PermissionsManager
|
||||||
import com.bitwarden.ui.platform.base.BaseComposeTest
|
import com.bitwarden.ui.platform.base.BaseComposeTest
|
||||||
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
||||||
import com.bitwarden.ui.platform.feature.settings.appearance.model.AppTheme
|
import com.bitwarden.ui.platform.feature.settings.appearance.model.AppTheme
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
import com.bitwarden.ui.platform.theme.BitwardenTheme
|
import com.bitwarden.ui.platform.theme.BitwardenTheme
|
||||||
import io.mockk.mockk
|
import io.mockk.mockk
|
||||||
|
|
||||||
|
|||||||
@ -4,6 +4,14 @@ import androidx.compose.runtime.ProvidableCompositionLocal
|
|||||||
import androidx.compose.runtime.compositionLocalOf
|
import androidx.compose.runtime.compositionLocalOf
|
||||||
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
import com.bitwarden.ui.platform.feature.qrcodescan.util.QrCodeAnalyzer
|
||||||
import com.bitwarden.ui.platform.manager.IntentManager
|
import com.bitwarden.ui.platform.manager.IntentManager
|
||||||
|
import com.bitwarden.ui.platform.manager.exit.ExitManager
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Provides access to the exit manager throughout the app.
|
||||||
|
*/
|
||||||
|
val LocalExitManager: ProvidableCompositionLocal<ExitManager> = compositionLocalOf {
|
||||||
|
error("CompositionLocal ExitManager not present")
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provides access to the intent manager throughout the app.
|
* Provides access to the intent manager throughout the app.
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
package com.x8bit.bitwarden.ui.platform.manager.exit
|
package com.bitwarden.ui.platform.manager.exit
|
||||||
|
|
||||||
import androidx.compose.runtime.Immutable
|
import androidx.compose.runtime.Immutable
|
||||||
|
|
||||||
@ -1,12 +1,10 @@
|
|||||||
package com.x8bit.bitwarden.ui.platform.manager.exit
|
package com.bitwarden.ui.platform.manager.exit
|
||||||
|
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
import com.bitwarden.annotation.OmitFromCoverage
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The default implementation of the [ExitManager] for managing the various ways to exit the app.
|
* The default implementation of the [ExitManager] for managing the various ways to exit the app.
|
||||||
*/
|
*/
|
||||||
@OmitFromCoverage
|
|
||||||
class ExitManagerImpl(
|
class ExitManagerImpl(
|
||||||
private val activity: Activity,
|
private val activity: Activity,
|
||||||
) : ExitManager {
|
) : ExitManager {
|
||||||
@ -0,0 +1,28 @@
|
|||||||
|
package com.bitwarden.ui.platform.manager.exit
|
||||||
|
|
||||||
|
import android.app.Activity
|
||||||
|
import io.mockk.every
|
||||||
|
import io.mockk.just
|
||||||
|
import io.mockk.mockk
|
||||||
|
import io.mockk.runs
|
||||||
|
import io.mockk.verify
|
||||||
|
import org.junit.jupiter.api.Test
|
||||||
|
|
||||||
|
class ExitManagerTest {
|
||||||
|
private val activity: Activity = mockk {
|
||||||
|
every { finishAndRemoveTask() } just runs
|
||||||
|
}
|
||||||
|
|
||||||
|
private val exitManager: ExitManager = ExitManagerImpl(
|
||||||
|
activity = activity,
|
||||||
|
)
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `exitApplication should finish the activity`() {
|
||||||
|
exitManager.exitApplication()
|
||||||
|
|
||||||
|
verify(exactly = 1) {
|
||||||
|
activity.finishAndRemoveTask()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user