From b877487ce1e2b88e76235a4b13782ce8d673bd60 Mon Sep 17 00:00:00 2001 From: Patrick Honkonen <1883101+SaintPatrck@users.noreply.github.com> Date: Thu, 29 May 2025 10:54:49 -0400 Subject: [PATCH] [PM-22169] Migrate app bar components to ui module (#5279) --- .../accountsetup/SetupAutofillScreen.kt | 7 +++-- .../accountsetup/SetupCompleteScreen.kt | 2 +- .../feature/accountsetup/SetupUnlockScreen.kt | 7 +++-- .../feature/checkemail/CheckEmailScreen.kt | 2 +- .../CompleteRegistrationScreen.kt | 2 +- .../createaccount/CreateAccountScreen.kt | 5 ++-- .../EnterpriseSignOnScreen.kt | 5 ++-- .../feature/environment/EnvironmentScreen.kt | 5 ++-- .../ExpiredRegistrationLinkScreen.kt | 7 +++-- .../ui/auth/feature/landing/LandingScreen.kt | 2 +- .../ui/auth/feature/login/LoginScreen.kt | 10 ++++--- .../loginwithdevice/LoginWithDeviceScreen.kt | 5 ++-- .../MasterPasswordGeneratorScreen.kt | 2 +- .../MasterPasswordGuidanceScreen.kt | 5 ++-- .../MasterPasswordHintScreen.kt | 5 ++-- .../PreventAccountLockoutScreen.kt | 5 ++-- .../removepassword/RemovePasswordScreen.kt | 2 +- .../resetpassword/ResetPasswordScreen.kt | 7 +++-- .../feature/setpassword/SetPasswordScreen.kt | 2 +- .../StartRegistrationScreen.kt | 5 ++-- .../trusteddevice/TrustedDeviceScreen.kt | 7 +++-- .../twofactorlogin/TwoFactorLoginScreen.kt | 10 ++++--- .../feature/vaultunlock/VaultUnlockScreen.kt | 7 +++-- .../bottomsheet/BitwardenModalBottomSheet.kt | 7 +++-- .../button/BitwardenTextSelectionButton.kt | 2 +- .../components/card/BitwardenActionCard.kt | 3 +- .../dialog/BitwardenDateSelectButton.kt | 4 +-- .../dialog/BitwardenTimeSelectButton.kt | 2 +- .../field/BitwardenHiddenPasswordField.kt | 2 +- .../field/BitwardenPasswordField.kt | 2 +- .../components/field/BitwardenTextField.kt | 4 +-- .../components/slider/BitwardenSlider.kt | 2 +- .../components/snackbar/BitwardenSnackbar.kt | 3 +- .../components/stepper/BitwardenStepper.kt | 2 +- .../feature/debugmenu/DebugMenuScreen.kt | 4 +-- .../platform/feature/search/SearchScreen.kt | 5 ++-- .../feature/settings/SettingsScreen.kt | 7 +++-- .../feature/settings/about/AboutScreen.kt | 2 +- .../accountsecurity/AccountSecurityScreen.kt | 2 +- .../deleteaccount/DeleteAccountScreen.kt | 5 ++-- .../DeleteAccountConfirmationScreen.kt | 5 ++-- .../loginapproval/LoginApprovalScreen.kt | 5 ++-- .../pendingrequests/PendingRequestsScreen.kt | 5 ++-- .../settings/appearance/AppearanceScreen.kt | 2 +- .../settings/autofill/AutoFillScreen.kt | 2 +- .../blockautofill/BlockAutoFillScreen.kt | 2 +- .../settings/exportvault/ExportVaultScreen.kt | 5 ++-- .../flightrecorder/FlightRecorderScreen.kt | 5 ++-- .../recordedLogs/RecordedLogsScreen.kt | 11 +++++--- .../feature/settings/folders/FoldersScreen.kt | 5 ++-- .../folders/addedit/FolderAddEditScreen.kt | 10 ++++--- .../feature/settings/other/OtherScreen.kt | 2 +- .../settings/vault/VaultSettingsScreen.kt | 2 +- .../feature/generator/GeneratorScreen.kt | 14 ++++++---- .../passwordhistory/PasswordHistoryScreen.kt | 7 +++-- .../ui/tools/feature/send/SendScreen.kt | 9 +++--- .../feature/send/addedit/AddEditSendScreen.kt | 14 ++++++---- .../feature/send/viewsend/ViewSendScreen.kt | 7 +++-- .../feature/addedit/VaultAddEditLoginItems.kt | 3 +- .../feature/addedit/VaultAddEditScreen.kt | 12 ++++---- .../feature/attachments/AttachmentsScreen.kt | 4 +-- .../importlogins/ImportLoginsScreen.kt | 7 +++-- .../ui/vault/feature/item/VaultItemScreen.kt | 10 ++++--- .../itemlisting/VaultItemListingScreen.kt | 11 ++++---- .../manualcodeentry/ManualCodeEntryScreen.kt | 5 ++-- .../VaultMoveToOrganizationScreen.kt | 5 ++-- .../feature/qrcodescan/QrCodeScanScreen.kt | 5 ++-- .../ui/vault/feature/vault/VaultScreen.kt | 11 ++++---- .../VerificationCodeScreen.kt | 9 +++--- .../feature/edititem/EditItemScreen.kt | 7 +++-- .../itemlisting/FirstTimeSyncSnackbarHost.kt | 3 +- .../feature/itemlisting/ItemListingScreen.kt | 17 +++++------ .../manualcodeentry/ManualCodeEntryScreen.kt | 7 +++-- .../feature/qrcodescan/QrCodeScanScreen.kt | 7 +++-- .../feature/search/ItemSearchScreen.kt | 6 ++-- ...Bar.kt => AuthenticatorMediumTopAppBar.kt} | 10 +++---- ...Bar.kt => AuthenticatorSearchTopAppBar.kt} | 6 ++-- ...TopAppBar.kt => AuthenticatorTopAppBar.kt} | 27 ++++++------------ ...em.kt => AuthenticatorSearchActionItem.kt} | 10 +++---- .../components/card/BitwardenActionCard.kt | 5 ++-- .../feature/debugmenu/DebugMenuScreen.kt | 6 ++-- .../feature/settings/SettingsScreen.kt | 4 +-- .../feature/settings/export/ExportScreen.kt | 7 +++-- .../settings/importing/ImportingScreen.kt | 7 +++-- .../src/main/res/drawable/ic_close.xml | 9 ------ .../src/main/res/drawable/ic_more.xml | 15 ---------- .../appbar/BitwardenMediumTopAppBar.kt | 10 +++---- .../appbar/BitwardenSearchTopAppBar.kt | 14 +++++----- .../components/appbar/BitwardenTopAppBar.kt | 15 +++++----- .../action/BitwardenOverflowActionItem.kt | 28 +++++-------------- .../action/BitwardenSearchActionItem.kt | 6 ++-- .../appbar/color/BitwardenMenuItemColors.kt | 2 +- .../appbar/color/BitwardenTopAppBarColors.kt | 2 +- .../appbar/model/OverflowMenuItemData.kt | 18 ++++++++++++ .../field/color/BitwardenTextFieldColors.kt | 2 +- .../components/model/TopAppBarDividerStyle.kt | 4 +-- .../src/main/res/drawable/ic_clear.xml | 0 .../src/main/res/drawable/ic_close.xml | 0 .../res/drawable/ic_ellipsis_vertical.xml | 0 .../src/main/res/drawable/ic_search.xml | 0 100 files changed, 326 insertions(+), 296 deletions(-) rename authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/{BitwardenMediumTopAppBar.kt => AuthenticatorMediumTopAppBar.kt} (92%) rename authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/{BitwardenSearchTopAppBar.kt => AuthenticatorSearchTopAppBar.kt} (94%) rename authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/{BitwardenTopAppBar.kt => AuthenticatorTopAppBar.kt} (87%) rename authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/action/{BitwardenSearchActionItem.kt => AuthenticatorSearchActionItem.kt} (85%) delete mode 100644 authenticator/src/main/res/drawable/ic_close.xml delete mode 100644 authenticator/src/main/res/drawable/ic_more.xml rename {app/src/main/kotlin/com/x8bit => ui/src/main/kotlin/com}/bitwarden/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt (93%) rename {app/src/main/kotlin/com/x8bit => ui/src/main/kotlin/com}/bitwarden/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt (89%) rename {app/src/main/kotlin/com/x8bit => ui/src/main/kotlin/com}/bitwarden/ui/platform/components/appbar/BitwardenTopAppBar.kt (94%) rename {app/src/main/kotlin/com/x8bit => ui/src/main/kotlin/com}/bitwarden/ui/platform/components/appbar/action/BitwardenOverflowActionItem.kt (84%) rename {app/src/main/kotlin/com/x8bit => ui/src/main/kotlin/com}/bitwarden/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt (87%) rename {app/src/main/kotlin/com/x8bit => ui/src/main/kotlin/com}/bitwarden/ui/platform/components/appbar/color/BitwardenMenuItemColors.kt (92%) rename {app/src/main/kotlin/com/x8bit => ui/src/main/kotlin/com}/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt (92%) create mode 100644 ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/model/OverflowMenuItemData.kt rename {app/src/main/kotlin/com/x8bit => ui/src/main/kotlin/com}/bitwarden/ui/platform/components/field/color/BitwardenTextFieldColors.kt (98%) rename {app/src/main/kotlin/com/x8bit => ui/src/main/kotlin/com}/bitwarden/ui/platform/components/model/TopAppBarDividerStyle.kt (55%) rename {app => ui}/src/main/res/drawable/ic_clear.xml (100%) rename {app => ui}/src/main/res/drawable/ic_close.xml (100%) rename {app => ui}/src/main/res/drawable/ic_ellipsis_vertical.xml (100%) rename {app => ui}/src/main/res/drawable/ic_search.xml (100%) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupAutofillScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupAutofillScreen.kt index c10bc3d4b2..a0aa69e9c1 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupAutofillScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupAutofillScreen.kt @@ -31,15 +31,16 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.model.WindowSize +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.platform.util.rememberWindowSize import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.auth.feature.accountsetup.handlers.rememberSetupAutoFillHandler -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -118,7 +119,7 @@ fun SetupAutoFillScreen( null } else { NavigationIcon( - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupCompleteScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupCompleteScreen.kt index 2467b142d7..2149f90b38 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupCompleteScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupCompleteScreen.kt @@ -25,10 +25,10 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupUnlockScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupUnlockScreen.kt index a060195176..8034e3ca4a 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupUnlockScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/accountsetup/SetupUnlockScreen.kt @@ -35,15 +35,16 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.model.WindowSize +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.platform.util.rememberWindowSize import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.auth.feature.accountsetup.handlers.SetupUnlockHandler -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -116,7 +117,7 @@ fun SetupUnlockScreen( null } else { NavigationIcon( - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/checkemail/CheckEmailScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/checkemail/CheckEmailScreen.kt index 621838fda9..6d3939a63e 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/checkemail/CheckEmailScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/checkemail/CheckEmailScreen.kt @@ -33,11 +33,11 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.annotatedStringResource import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.auth.feature.checkemail.handlers.rememberCheckEmailHandler -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/completeregistration/CompleteRegistrationScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/completeregistration/CompleteRegistrationScreen.kt index a63b264384..9993328cc2 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/completeregistration/CompleteRegistrationScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/completeregistration/CompleteRegistrationScreen.kt @@ -37,6 +37,7 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.model.WindowSize @@ -46,7 +47,6 @@ import com.bitwarden.ui.platform.util.rememberWindowSize import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.auth.feature.completeregistration.handlers.CompleteRegistrationHandler import com.x8bit.bitwarden.ui.auth.feature.completeregistration.handlers.rememberCompleteRegistrationHandler -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCardSmall diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/createaccount/CreateAccountScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/createaccount/CreateAccountScreen.kt index 6c7c734c02..aa60ed975f 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/createaccount/CreateAccountScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/createaccount/CreateAccountScreen.kt @@ -35,8 +35,10 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.annotatedStringResource import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.auth.feature.completeregistration.PasswordStrengthIndicator @@ -54,7 +56,6 @@ import com.x8bit.bitwarden.ui.auth.feature.createaccount.CreateAccountAction.Sub import com.x8bit.bitwarden.ui.auth.feature.createaccount.CreateAccountAction.TermsClick import com.x8bit.bitwarden.ui.auth.feature.createaccount.CreateAccountEvent.NavigateToPrivacyPolicy import com.x8bit.bitwarden.ui.auth.feature.createaccount.CreateAccountEvent.NavigateToTerms -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog @@ -155,7 +156,7 @@ fun CreateAccountScreen( BitwardenTopAppBar( title = stringResource(id = R.string.create_account), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/enterprisesignon/EnterpriseSignOnScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/enterprisesignon/EnterpriseSignOnScreen.kt index f0c4efe998..d07b9907a0 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/enterprisesignon/EnterpriseSignOnScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/enterprisesignon/EnterpriseSignOnScreen.kt @@ -26,11 +26,12 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog @@ -98,7 +99,7 @@ fun EnterpriseSignOnScreen( BitwardenTopAppBar( title = stringResource(id = R.string.app_name), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(EnterpriseSignOnAction.CloseButtonClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/environment/EnvironmentScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/environment/EnvironmentScreen.kt index 016c40c5db..fb0bc9125d 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/environment/EnvironmentScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/environment/EnvironmentScreen.kt @@ -29,11 +29,12 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.x8bit.bitwarden.BuildConfig import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton @@ -189,7 +190,7 @@ fun EnvironmentScreen( BitwardenTopAppBar( title = stringResource(id = R.string.settings), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(EnvironmentAction.CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/expiredregistrationlink/ExpiredRegistrationLinkScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/expiredregistrationlink/ExpiredRegistrationLinkScreen.kt index d6d0f783d7..8d0403c6dc 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/expiredregistrationlink/ExpiredRegistrationLinkScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/expiredregistrationlink/ExpiredRegistrationLinkScreen.kt @@ -22,11 +22,12 @@ import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold @@ -65,7 +66,7 @@ fun ExpiredRegistrationLinkScreen( title = stringResource(id = R.string.create_account), scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(), navigationIcon = NavigationIcon( - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = sendCloseClicked, ), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/landing/LandingScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/landing/LandingScreen.kt index d29c8560d6..51a795dcb0 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/landing/LandingScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/landing/LandingScreen.kt @@ -38,13 +38,13 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.data.repository.model.Environment import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountSwitcher import com.x8bit.bitwarden.ui.platform.components.account.BitwardenPlaceholderAccountActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/login/LoginScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/login/LoginScreen.kt index 7f7c866b13..f5c2958ff9 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/login/LoginScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/login/LoginScreen.kt @@ -34,15 +34,16 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountSwitcher import com.x8bit.bitwarden.ui.platform.components.account.BitwardenPlaceholderAccountActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -124,7 +125,7 @@ fun LoginScreen( BitwardenTopAppBar( title = stringResource(id = R.string.app_name), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(LoginAction.CloseButtonClick) } @@ -136,6 +137,7 @@ fun LoginScreen( ) } BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.get_password_hint), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/loginwithdevice/LoginWithDeviceScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/loginwithdevice/LoginWithDeviceScreen.kt index 28b1122a06..98bbb56a9b 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/loginwithdevice/LoginWithDeviceScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/loginwithdevice/LoginWithDeviceScreen.kt @@ -32,10 +32,11 @@ import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog @@ -93,7 +94,7 @@ fun LoginWithDeviceScreen( BitwardenTopAppBar( title = state.toolbarTitle(), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(LoginWithDeviceAction.CloseButtonClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordgenerator/MasterPasswordGeneratorScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordgenerator/MasterPasswordGeneratorScreen.kt index c47717e44f..6ae4630fcd 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordgenerator/MasterPasswordGeneratorScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordgenerator/MasterPasswordGeneratorScreen.kt @@ -28,11 +28,11 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.field.BitwardenTextField diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordguidance/MasterPasswordGuidanceScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordguidance/MasterPasswordGuidanceScreen.kt index bd12795948..625a238290 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordguidance/MasterPasswordGuidanceScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordguidance/MasterPasswordGuidanceScreen.kt @@ -26,10 +26,11 @@ import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.annotatedStringResource import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toAnnotatedString +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard import com.x8bit.bitwarden.ui.platform.components.card.BitwardenContentCard import com.x8bit.bitwarden.ui.platform.components.model.ContentBlockData @@ -64,7 +65,7 @@ fun MasterPasswordGuidanceScreen( BitwardenTopAppBar( title = stringResource(id = R.string.master_password), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordhint/MasterPasswordHintScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordhint/MasterPasswordHintScreen.kt index 0c626c956e..05c0c8f4d5 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordhint/MasterPasswordHintScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/masterpasswordhint/MasterPasswordHintScreen.kt @@ -22,10 +22,11 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog @@ -90,7 +91,7 @@ fun MasterPasswordHintScreen( BitwardenTopAppBar( title = stringResource(id = R.string.password_hint), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(MasterPasswordHintAction.CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/preventaccountlockout/PreventAccountLockoutScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/preventaccountlockout/PreventAccountLockoutScreen.kt index 64af1f6e19..529158b3f2 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/preventaccountlockout/PreventAccountLockoutScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/preventaccountlockout/PreventAccountLockoutScreen.kt @@ -24,10 +24,11 @@ import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.card.BitwardenContentCard import com.x8bit.bitwarden.ui.platform.components.model.ContentBlockData import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold @@ -58,7 +59,7 @@ fun PreventAccountLockoutScreen( BitwardenTopAppBar( title = stringResource(R.string.prevent_account_lockout), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/removepassword/RemovePasswordScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/removepassword/RemovePasswordScreen.kt index c35af540e3..cf3b99969e 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/removepassword/RemovePasswordScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/removepassword/RemovePasswordScreen.kt @@ -24,11 +24,11 @@ import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.util.asText import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/resetpassword/ResetPasswordScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/resetpassword/ResetPasswordScreen.kt index c1866c3039..5b79b7657c 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/resetpassword/ResetPasswordScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/resetpassword/ResetPasswordScreen.kt @@ -30,15 +30,15 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.auth.datasource.disk.model.ForcePasswordResetReason import com.x8bit.bitwarden.ui.auth.feature.completeregistration.PasswordStrengthIndicator import com.x8bit.bitwarden.ui.auth.feature.completeregistration.PasswordStrengthState -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -126,6 +126,7 @@ fun ResetPasswordScreen( modifier = Modifier.testTag("SaveButton"), ) BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(R.string.log_out), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/setpassword/SetPasswordScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/setpassword/SetPasswordScreen.kt index 019c5969a8..330b666b08 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/setpassword/SetPasswordScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/setpassword/SetPasswordScreen.kt @@ -26,10 +26,10 @@ import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/startregistration/StartRegistrationScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/startregistration/StartRegistrationScreen.kt index b2eadce915..4c03869342 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/startregistration/StartRegistrationScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/startregistration/StartRegistrationScreen.kt @@ -44,8 +44,10 @@ import com.bitwarden.data.repository.model.Environment import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.annotatedStringResource import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.auth.feature.startregistration.StartRegistrationAction.ErrorDialogDismiss @@ -53,7 +55,6 @@ import com.x8bit.bitwarden.ui.auth.feature.startregistration.StartRegistrationEv import com.x8bit.bitwarden.ui.auth.feature.startregistration.StartRegistrationEvent.NavigateToTerms import com.x8bit.bitwarden.ui.auth.feature.startregistration.handlers.StartRegistrationHandler import com.x8bit.bitwarden.ui.auth.feature.startregistration.handlers.rememberStartRegistrationHandler -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog @@ -155,7 +156,7 @@ fun StartRegistrationScreen( BitwardenTopAppBar( title = stringResource(id = R.string.create_account), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = handler.onCloseClick, ) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/trusteddevice/TrustedDeviceScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/trusteddevice/TrustedDeviceScreen.kt index bfce010b3e..7da39c6a8e 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/trusteddevice/TrustedDeviceScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/trusteddevice/TrustedDeviceScreen.kt @@ -30,13 +30,14 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.auth.feature.trusteddevice.handlers.TrustedDeviceHandlers -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -109,7 +110,7 @@ private fun TrustedDeviceScaffold( title = stringResource(id = R.string.log_in_initiated), scrollBehavior = scrollBehavior, navigationIcon = NavigationIcon( - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = handlers.onBackClick, ), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/twofactorlogin/TwoFactorLoginScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/twofactorlogin/TwoFactorLoginScreen.kt index 83888246c7..d734dabb2e 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/twofactorlogin/TwoFactorLoginScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/twofactorlogin/TwoFactorLoginScreen.kt @@ -41,16 +41,17 @@ import com.bitwarden.network.model.TwoFactorAuthMethod import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.LifecycleEventEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.util.asText import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.auth.feature.twofactorlogin.util.description import com.x8bit.bitwarden.ui.auth.feature.twofactorlogin.util.title -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -142,7 +143,7 @@ fun TwoFactorLoginScreen( BitwardenTopAppBar( title = title(), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(TwoFactorLoginAction.CloseButtonClick) } @@ -150,6 +151,7 @@ fun TwoFactorLoginScreen( actions = { if (!state.isNewDeviceVerification) { BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = state.availableAuthMethods .map { OverflowMenuItemData( diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/vaultunlock/VaultUnlockScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/vaultunlock/VaultUnlockScreen.kt index 0a108fba75..0fd89d9a8f 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/vaultunlock/VaultUnlockScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/auth/feature/vaultunlock/VaultUnlockScreen.kt @@ -38,6 +38,9 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R @@ -52,9 +55,6 @@ import com.x8bit.bitwarden.ui.credentials.manager.model.AssertFido2CredentialRes import com.x8bit.bitwarden.ui.credentials.manager.model.GetCredentialsResult import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountActionItem import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountSwitcher -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -224,6 +224,7 @@ fun VaultUnlockScreen( ) } BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.log_out), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/bottomsheet/BitwardenModalBottomSheet.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/bottomsheet/BitwardenModalBottomSheet.kt index 4583deb4a7..7457a7584d 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/bottomsheet/BitwardenModalBottomSheet.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/bottomsheet/BitwardenModalBottomSheet.kt @@ -14,11 +14,12 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.input.nestedscroll.nestedScroll import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold import kotlinx.coroutines.launch @@ -67,7 +68,7 @@ fun BitwardenModalBottomSheet( BitwardenTopAppBar( title = sheetTitle, navigationIcon = NavigationIcon( - navigationIcon = rememberVectorPainter(R.drawable.ic_close), + navigationIcon = rememberVectorPainter(BitwardenDrawable.ic_close), onNavigationIconClick = animatedOnDismiss, navigationIconContentDescription = stringResource(R.string.close), ), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/button/BitwardenTextSelectionButton.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/button/BitwardenTextSelectionButton.kt index d376dfa771..a77c122f3e 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/button/BitwardenTextSelectionButton.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/button/BitwardenTextSelectionButton.kt @@ -30,12 +30,12 @@ import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.nullableTestTag import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldButtonColors import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.platform.components.divider.BitwardenHorizontalDivider -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldButtonColors import com.x8bit.bitwarden.ui.platform.components.model.TooltipData import com.x8bit.bitwarden.ui.platform.components.row.BitwardenRowOfActions import com.x8bit.bitwarden.ui.platform.util.persistentListOfNotNull diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/card/BitwardenActionCard.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/card/BitwardenActionCard.kt index 5a7c7c27f5..9e17d6fffc 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/card/BitwardenActionCard.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/card/BitwardenActionCard.kt @@ -22,6 +22,7 @@ import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.components.badge.NotificationBadge import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton @@ -70,7 +71,7 @@ fun BitwardenActionCard( Spacer(Modifier.weight(1f)) onDismissClick?.let { BitwardenStandardIconButton( - painter = rememberVectorPainter(id = R.drawable.ic_close), + painter = rememberVectorPainter(id = BitwardenDrawable.ic_close), contentDescription = stringResource(id = R.string.close), onClick = it, ) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/dialog/BitwardenDateSelectButton.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/dialog/BitwardenDateSelectButton.kt index de20a1ec5f..00607837e2 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/dialog/BitwardenDateSelectButton.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/dialog/BitwardenDateSelectButton.kt @@ -30,13 +30,13 @@ import androidx.compose.ui.semantics.testTag import androidx.compose.ui.semantics.testTagsAsResourceId import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.base.util.cardStyle +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldButtonColors +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldButtonColors -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.x8bit.bitwarden.ui.platform.components.row.BitwardenRowOfActions import com.x8bit.bitwarden.ui.platform.util.orNow import com.x8bit.bitwarden.ui.platform.util.toFormattedPattern diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/dialog/BitwardenTimeSelectButton.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/dialog/BitwardenTimeSelectButton.kt index 9b7b7997be..0725b10eda 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/dialog/BitwardenTimeSelectButton.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/dialog/BitwardenTimeSelectButton.kt @@ -20,11 +20,11 @@ import androidx.compose.ui.semantics.contentDescription import androidx.compose.ui.semantics.role import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.base.util.cardStyle +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldButtonColors import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldButtonColors import com.x8bit.bitwarden.ui.platform.components.row.BitwardenRowOfActions import com.x8bit.bitwarden.ui.platform.util.orNow import com.x8bit.bitwarden.ui.platform.util.toFormattedPattern diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenHiddenPasswordField.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenHiddenPasswordField.kt index 038e5c83ad..201871fe60 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenHiddenPasswordField.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenHiddenPasswordField.kt @@ -13,9 +13,9 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.nullableTestTag +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.theme.BitwardenTheme -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.x8bit.bitwarden.ui.platform.components.field.toolbar.BitwardenEmptyTextToolbar /** diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenPasswordField.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenPasswordField.kt index 08df21e1c7..12260d601f 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenPasswordField.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenPasswordField.kt @@ -42,11 +42,11 @@ import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.nullableTestTag import com.bitwarden.ui.platform.base.util.tabNavigation import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.platform.components.divider.BitwardenHorizontalDivider -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.x8bit.bitwarden.ui.platform.components.field.toolbar.BitwardenCutCopyTextToolbar import com.x8bit.bitwarden.ui.platform.components.field.toolbar.BitwardenEmptyTextToolbar import com.x8bit.bitwarden.ui.platform.components.model.TextToolbarType diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenTextField.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenTextField.kt index 1e202bf7dd..993775f6db 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenTextField.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/BitwardenTextField.kt @@ -54,13 +54,13 @@ import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.nullableTestTag import com.bitwarden.ui.platform.base.util.toPx import com.bitwarden.ui.platform.base.util.withLineBreaksAtWidth +import com.bitwarden.ui.platform.components.appbar.color.bitwardenMenuItemColors import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.color.bitwardenMenuItemColors import com.x8bit.bitwarden.ui.platform.components.divider.BitwardenHorizontalDivider -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.x8bit.bitwarden.ui.platform.components.field.toolbar.BitwardenCutCopyTextToolbar import com.x8bit.bitwarden.ui.platform.components.field.toolbar.BitwardenEmptyTextToolbar import com.x8bit.bitwarden.ui.platform.components.icon.BitwardenIcon diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/slider/BitwardenSlider.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/slider/BitwardenSlider.kt index 75bddd7c0d..da98dd1eeb 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/slider/BitwardenSlider.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/slider/BitwardenSlider.kt @@ -38,10 +38,10 @@ import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.nullableTestTag import com.bitwarden.ui.platform.base.util.toDp +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.x8bit.bitwarden.ui.platform.components.slider.color.bitwardenSliderColors /** diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/snackbar/BitwardenSnackbar.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/snackbar/BitwardenSnackbar.kt index a216ff9414..a0d1e5fc0f 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/snackbar/BitwardenSnackbar.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/snackbar/BitwardenSnackbar.kt @@ -26,6 +26,7 @@ import androidx.compose.ui.res.stringResource import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.util.asText import com.x8bit.bitwarden.R @@ -106,7 +107,7 @@ fun BitwardenSnackbar( if (bitwardenSnackbarData.withDismissAction) { BitwardenStandardIconButton( onClick = onDismiss, - vectorIconRes = R.drawable.ic_close, + vectorIconRes = BitwardenDrawable.ic_close, contentDescription = stringResource(R.string.close), contentColor = BitwardenTheme.colorScheme.icon.reversed, modifier = Modifier.offset(x = 12.dp, y = (-12).dp), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/stepper/BitwardenStepper.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/stepper/BitwardenStepper.kt index 3780e59c00..0e4985c9c3 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/stepper/BitwardenStepper.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/stepper/BitwardenStepper.kt @@ -11,11 +11,11 @@ import androidx.compose.ui.text.input.KeyboardType import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.base.util.orNullIfBlank import com.bitwarden.ui.platform.components.button.BitwardenFilledIconButton +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.platform.components.field.BitwardenTextField -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors /** * Displays a stepper that allows the user to increment and decrement an int value. diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/debugmenu/DebugMenuScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/debugmenu/DebugMenuScreen.kt index 1d5cc1435b..ebce5c4b04 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/debugmenu/DebugMenuScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/debugmenu/DebugMenuScreen.kt @@ -27,12 +27,12 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toListItemCardStyle +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.manager.model.FlagKey -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.divider.BitwardenHorizontalDivider import com.x8bit.bitwarden.ui.platform.components.header.BitwardenListHeaderText diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchScreen.kt index 6e66660570..1f410aa477 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchScreen.kt @@ -19,13 +19,13 @@ import androidx.core.net.toUri import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenSearchTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.manager.model.AppResumeScreenData import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManager import com.x8bit.bitwarden.data.platform.manager.util.RegisterScreenDataOnLifecycleEffect -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenSearchTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -137,6 +137,7 @@ fun SearchScreen( navigationIconContentDescription = stringResource(id = R.string.back), onNavigationIconClick = searchHandlers.onBackClick, ), + clearIconContentDescription = stringResource(id = R.string.clear), ) }, utilityBar = { diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/SettingsScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/SettingsScreen.kt index fa3ba58a69..286a9baac5 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/SettingsScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/SettingsScreen.kt @@ -24,10 +24,11 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toListItemCardStyle +import com.bitwarden.ui.platform.components.appbar.BitwardenMediumTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenMediumTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.model.IconData import com.x8bit.bitwarden.ui.platform.components.row.BitwardenPushRow import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold @@ -70,7 +71,7 @@ fun SettingsScreen( scrollBehavior = scrollBehavior, navigationIcon = if (state.shouldShowCloseButton) { NavigationIcon( - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(SettingsAction.CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/about/AboutScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/about/AboutScreen.kt index ecb603190d..42d947b37d 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/about/AboutScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/about/AboutScreen.kt @@ -33,13 +33,13 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.mirrorIfRtl import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.util.Text import com.bitwarden.ui.util.asText import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.model.TooltipData import com.x8bit.bitwarden.ui.platform.components.row.BitwardenExternalLinkRow import com.x8bit.bitwarden.ui.platform.components.row.BitwardenPushRow diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/AccountSecurityScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/AccountSecurityScreen.kt index 58ec21f72d..3a54fd109d 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/AccountSecurityScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/AccountSecurityScreen.kt @@ -35,6 +35,7 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.badge.NotificationBadge import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter @@ -44,7 +45,6 @@ import com.bitwarden.ui.util.asText import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.repository.model.VaultTimeout import com.x8bit.bitwarden.data.platform.repository.model.VaultTimeoutAction -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/deleteaccount/DeleteAccountScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/deleteaccount/DeleteAccountScreen.kt index b85f66bb39..bbffc7c217 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/deleteaccount/DeleteAccountScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/deleteaccount/DeleteAccountScreen.kt @@ -35,11 +35,12 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledErrorButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedErrorButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -109,7 +110,7 @@ fun DeleteAccountScreen( BitwardenTopAppBar( title = stringResource(id = R.string.delete_account), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(DeleteAccountAction.CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/deleteaccountconfirmation/DeleteAccountConfirmationScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/deleteaccountconfirmation/DeleteAccountConfirmationScreen.kt index b21cfce3de..da551fce72 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/deleteaccountconfirmation/DeleteAccountConfirmationScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/deleteaccountconfirmation/DeleteAccountConfirmationScreen.kt @@ -29,11 +29,12 @@ import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledErrorButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -208,7 +209,7 @@ private fun DeleteAccountConfirmationScaffold( BitwardenTopAppBar( title = stringResource(id = R.string.verification_code), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = onCloseClick, ) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/loginapproval/LoginApprovalScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/loginapproval/LoginApprovalScreen.kt index fc8207b3f6..8c03e83865 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/loginapproval/LoginApprovalScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/loginapproval/LoginApprovalScreen.kt @@ -30,10 +30,11 @@ import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent @@ -96,7 +97,7 @@ fun LoginApprovalScreen( BitwardenTopAppBar( title = stringResource(id = R.string.log_in_requested), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(LoginApprovalAction.CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/pendingrequests/PendingRequestsScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/pendingrequests/PendingRequestsScreen.kt index be9fff64dc..8b831aae9c 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/pendingrequests/PendingRequestsScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/pendingrequests/PendingRequestsScreen.kt @@ -47,13 +47,14 @@ import com.bitwarden.ui.platform.base.util.LifecycleEventEffect import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toListItemCardStyle +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.util.isBuildVersionBelow import com.x8bit.bitwarden.data.platform.util.isFdroid -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.bottomsheet.BitwardenModalBottomSheet import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton @@ -141,7 +142,7 @@ fun PendingRequestsScreen( BitwardenTopAppBar( title = stringResource(id = R.string.pending_log_in_requests), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(PendingRequestsAction.CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/appearance/AppearanceScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/appearance/AppearanceScreen.kt index a5a3477f16..86e4b62b2a 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/appearance/AppearanceScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/appearance/AppearanceScreen.kt @@ -25,11 +25,11 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.feature.settings.appearance.model.AppTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dropdown.BitwardenMultiSelectButton import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillScreen.kt index 1c6568f932..853d63c28e 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillScreen.kt @@ -31,12 +31,12 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.badge.NotificationBadge import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.repository.model.UriMatchType -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard import com.x8bit.bitwarden.ui.platform.components.card.actionCardExitAnimation import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/blockautofill/BlockAutoFillScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/blockautofill/BlockAutoFillScreen.kt index 20a0241c4e..d8ea5717da 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/blockautofill/BlockAutoFillScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/blockautofill/BlockAutoFillScreen.kt @@ -39,11 +39,11 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.bottomDivider +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.fab.BitwardenFloatingActionButton import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/exportvault/ExportVaultScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/exportvault/ExportVaultScreen.kt index a5da2fc7ad..eda3ba0b4c 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/exportvault/ExportVaultScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/exportvault/ExportVaultScreen.kt @@ -32,12 +32,13 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.auth.feature.completeregistration.PasswordStrengthIndicator -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -146,7 +147,7 @@ fun ExportVaultScreen( BitwardenTopAppBar( title = stringResource(id = R.string.export_vault), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(ExportVaultAction.CloseButtonClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/flightrecorder/FlightRecorderScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/flightrecorder/FlightRecorderScreen.kt index d8a2926887..7eca8e8f1f 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/flightrecorder/FlightRecorderScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/flightrecorder/FlightRecorderScreen.kt @@ -26,12 +26,13 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.repository.model.FlightRecorderDuration -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.dropdown.BitwardenMultiSelectButton import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold @@ -65,7 +66,7 @@ fun FlightRecorderScreen( topBar = { BitwardenTopAppBar( title = stringResource(id = R.string.enable_flight_recorder_title), - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(FlightRecorderAction.BackClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/flightrecorder/recordedLogs/RecordedLogsScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/flightrecorder/recordedLogs/RecordedLogsScreen.kt index 9240f90ed3..649bb9d901 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/flightrecorder/recordedLogs/RecordedLogsScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/flightrecorder/recordedLogs/RecordedLogsScreen.kt @@ -35,13 +35,14 @@ import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toListItemCardStyle +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.content.BitwardenEmptyContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -95,7 +96,7 @@ fun RecordedLogsScreen( topBar = { BitwardenTopAppBar( title = stringResource(id = R.string.recorded_logs_title), - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(RecordedLogsAction.BackClick) } @@ -168,6 +169,7 @@ private fun RecordedLogsOverflowMenu( ) } BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), modifier = modifier, menuItemDataList = persistentListOf( OverflowMenuItemData( @@ -309,6 +311,7 @@ private fun LogRow( } Spacer(modifier = Modifier.width(width = 12.dp)) BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.share), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/folders/FoldersScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/folders/FoldersScreen.kt index 3726df0e02..075bd6e8c0 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/folders/FoldersScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/folders/FoldersScreen.kt @@ -29,11 +29,12 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toListItemCardStyle +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.fab.BitwardenFloatingActionButton import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.row.BitwardenTextRow @@ -78,7 +79,7 @@ fun FoldersScreen( BitwardenTopAppBar( title = stringResource(id = R.string.folders), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(FoldersAction.CloseButtonClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/folders/addedit/FolderAddEditScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/folders/addedit/FolderAddEditScreen.kt index 3c1993e106..1c6f034cb4 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/folders/addedit/FolderAddEditScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/folders/addedit/FolderAddEditScreen.kt @@ -26,13 +26,14 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent @@ -99,7 +100,7 @@ fun FolderAddEditScreen( BitwardenTopAppBar( title = state.screenDisplayName.invoke(), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(FolderAddEditAction.CloseClick) } @@ -114,6 +115,7 @@ fun FolderAddEditScreen( ) if (state.shouldShowOverflowMenu) { BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.delete), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/other/OtherScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/other/OtherScreen.kt index 2f4c6e9922..1c0cb3fe71 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/other/OtherScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/other/OtherScreen.kt @@ -33,13 +33,13 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.repository.model.ClearClipboardFrequency import com.x8bit.bitwarden.data.platform.repository.util.displayLabel -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/vault/VaultSettingsScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/vault/VaultSettingsScreen.kt index bb6ddb6e0b..c1505cb552 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/vault/VaultSettingsScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/vault/VaultSettingsScreen.kt @@ -28,11 +28,11 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.badge.NotificationBadge import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard import com.x8bit.bitwarden.ui.platform.components.card.actionCardExitAnimation import com.x8bit.bitwarden.ui.platform.components.row.BitwardenExternalLinkRow diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorScreen.kt index 3311742c40..7d0f901b25 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorScreen.kt @@ -41,19 +41,21 @@ import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.LifecycleEventEffect import com.bitwarden.ui.platform.base.util.scrolledContainerBottomDivider import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenMediumTopAppBar +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton import com.bitwarden.ui.platform.components.model.CardStyle +import com.bitwarden.ui.platform.components.model.TopAppBarDividerStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.util.asText import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.manager.model.AppResumeScreenData import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManager import com.x8bit.bitwarden.data.platform.manager.util.RegisterScreenDataOnLifecycleEffect -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenMediumTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard @@ -68,7 +70,6 @@ import com.x8bit.bitwarden.ui.platform.components.field.BitwardenPasswordField import com.x8bit.bitwarden.ui.platform.components.field.BitwardenTextField import com.x8bit.bitwarden.ui.platform.components.model.TextToolbarType import com.x8bit.bitwarden.ui.platform.components.model.TooltipData -import com.x8bit.bitwarden.ui.platform.components.model.TopAppBarDividerStyle import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold import com.x8bit.bitwarden.ui.platform.components.segment.BitwardenSegmentedButton import com.x8bit.bitwarden.ui.platform.components.segment.SegmentedButtonOptionContent @@ -310,6 +311,7 @@ private fun DefaultAppBar( dividerStyle = TopAppBarDividerStyle.NONE, actions = { BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.password_history), @@ -333,7 +335,7 @@ private fun ModalAppBar( ) { BitwardenTopAppBar( title = stringResource(id = R.string.generator), - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = onCloseClick, scrollBehavior = scrollBehavior, diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/passwordhistory/PasswordHistoryScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/passwordhistory/PasswordHistoryScreen.kt index 61e6c65ed9..69aff8ad03 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/passwordhistory/PasswordHistoryScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/passwordhistory/PasswordHistoryScreen.kt @@ -30,12 +30,12 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toListItemCardStyle +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.indicator.BitwardenCircularProgressIndicator import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold import kotlinx.collections.immutable.persistentListOf @@ -80,6 +80,7 @@ fun PasswordHistoryScreen( actions = { if (state.menuEnabled) { BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.clear), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/SendScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/SendScreen.kt index b6fd339a32..89fd8f2f2d 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/SendScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/SendScreen.kt @@ -20,16 +20,16 @@ import androidx.core.net.toUri import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenMediumTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.action.BitwardenSearchActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.fab.BitwardenFloatingActionButton import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.manager.model.AppResumeScreenData import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManager import com.x8bit.bitwarden.data.platform.manager.util.RegisterScreenDataOnLifecycleEffect -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenMediumTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenSearchActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -155,6 +155,7 @@ fun SendScreen( }, ) BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.sync), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/addedit/AddEditSendScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/addedit/AddEditSendScreen.kt index 31575b8fa5..bc6532b8e0 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/addedit/AddEditSendScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/addedit/AddEditSendScreen.kt @@ -17,18 +17,19 @@ import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData +import com.bitwarden.ui.platform.components.model.TopAppBarDividerStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog -import com.x8bit.bitwarden.ui.platform.components.model.TopAppBarDividerStyle import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold import com.x8bit.bitwarden.ui.platform.composition.LocalExitManager import com.x8bit.bitwarden.ui.platform.composition.LocalIntentManager @@ -108,7 +109,7 @@ fun AddEditSendScreen( BitwardenTopAppBar( title = state.screenDisplayName(), navigationIcon = NavigationIcon( - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(AddEditSendAction.CloseClick) } @@ -128,6 +129,7 @@ fun AddEditSendScreen( ) if (!state.isAddMode) { BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOfNotNull( OverflowMenuItemData( text = stringResource(id = R.string.remove_password), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/viewsend/ViewSendScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/viewsend/ViewSendScreen.kt index 3892b4b4ff..2dec08b437 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/viewsend/ViewSendScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/tools/feature/send/viewsend/ViewSendScreen.kt @@ -46,14 +46,15 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.fab.BitwardenFloatingActionButton import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.util.asText import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedErrorButton @@ -126,7 +127,7 @@ fun ViewSendScreen( BitwardenTopAppBar( title = state.screenDisplayName(), navigationIcon = NavigationIcon( - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(ViewSendAction.CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditLoginItems.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditLoginItems.kt index b1c7fec8da..33f34c82e7 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditLoginItems.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditLoginItems.kt @@ -23,6 +23,7 @@ import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton import com.bitwarden.ui.platform.components.model.CardStyle +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.util.Text import com.bitwarden.ui.util.asText @@ -369,7 +370,7 @@ private fun TotpRow( actions = { totpKey?.let { BitwardenStandardIconButton( - vectorIconRes = R.drawable.ic_clear, + vectorIconRes = BitwardenDrawable.ic_clear, contentDescription = stringResource(id = R.string.delete), onClick = loginItemTypeHandlers.onClearTotpKeyClick, ) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditScreen.kt index b64fad3c2e..687942010c 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditScreen.kt @@ -41,16 +41,17 @@ import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.cardStyle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toListItemCardStyle +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.util.Text import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.credentials.manager.CredentialProviderCompletionManager -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.bottomsheet.BitwardenModalBottomSheet import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.coachmark.CoachMarkContainer @@ -325,7 +326,7 @@ fun VaultAddEditScreen( BitwardenTopAppBar( title = state.screenDisplayName(), navigationIcon = NavigationIcon( - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(VaultAddEditAction.Common.CloseClick) } @@ -342,6 +343,7 @@ fun VaultAddEditScreen( modifier = Modifier.testTag("SaveButton"), ) BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOfNotNull( OverflowMenuItemData( text = stringResource(id = R.string.attachments), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/attachments/AttachmentsScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/attachments/AttachmentsScreen.kt index 2e62617380..06b2b5db1a 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/attachments/AttachmentsScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/attachments/AttachmentsScreen.kt @@ -16,10 +16,10 @@ import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsScreen.kt index 808b0e331f..a7603e1516 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/importlogins/ImportLoginsScreen.kt @@ -43,11 +43,12 @@ import com.bitwarden.ui.platform.base.util.annotatedStringResource import com.bitwarden.ui.platform.base.util.bitwardenBoldSpanStyle import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toAnnotatedString +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.bottomsheet.BitwardenModalBottomSheet import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton @@ -119,7 +120,7 @@ fun ImportLoginsScreen( BitwardenTopAppBar( title = stringResource(R.string.import_logins), navigationIcon = NavigationIcon( - navigationIcon = rememberVectorPainter(R.drawable.ic_close), + navigationIcon = rememberVectorPainter(BitwardenDrawable.ic_close), onNavigationIconClick = handler.onCloseClick, navigationIconContentDescription = stringResource(R.string.close), ), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemScreen.kt index 5cf8144d01..ed572dd657 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemScreen.kt @@ -22,12 +22,13 @@ import androidx.core.net.toUri import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.fab.BitwardenFloatingActionButton import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent @@ -160,7 +161,7 @@ fun VaultItemScreen( BitwardenTopAppBar( title = state.title(), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(VaultItemAction.Common.CloseClick) } @@ -180,6 +181,7 @@ fun VaultItemScreen( ) } BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOfNotNull( OverflowMenuItemData( text = stringResource(id = R.string.attachments), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingScreen.kt index 8afdf94ff6..7ce0c3dadc 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingScreen.kt @@ -21,6 +21,11 @@ import androidx.core.net.toUri import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.NavigationIcon +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.action.BitwardenSearchActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.fab.BitwardenFloatingActionButton import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.util.Text @@ -28,11 +33,6 @@ import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.credentials.manager.CredentialProviderCompletionManager import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountActionItem import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountSwitcher -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenSearchActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog @@ -476,6 +476,7 @@ private fun VaultItemListingScaffold( ) if (state.shouldShowOverflowMenu) { BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.sync), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/manualcodeentry/ManualCodeEntryScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/manualcodeentry/ManualCodeEntryScreen.kt index a27f43bdb5..3268b31170 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/manualcodeentry/ManualCodeEntryScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/manualcodeentry/ManualCodeEntryScreen.kt @@ -34,11 +34,12 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.model.CardStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog @@ -130,7 +131,7 @@ fun ManualCodeEntryScreen( topBar = { BitwardenTopAppBar( title = stringResource(id = R.string.authenticator_key_scanner), - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(ManualCodeEntryAction.CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/movetoorganization/VaultMoveToOrganizationScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/movetoorganization/VaultMoveToOrganizationScreen.kt index d0a13513ea..2cfe1b7925 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/movetoorganization/VaultMoveToOrganizationScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/movetoorganization/VaultMoveToOrganizationScreen.kt @@ -16,9 +16,10 @@ import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent @@ -102,7 +103,7 @@ private fun VaultMoveToOrganizationScaffold( BitwardenTopAppBar( title = state.appBarText(), scrollBehavior = scrollBehavior, - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = closeClick, actions = { diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/qrcodescan/QrCodeScanScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/qrcodescan/QrCodeScanScreen.kt index bbef2a37c9..2dfc0330d0 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/qrcodescan/QrCodeScanScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/qrcodescan/QrCodeScanScreen.kt @@ -53,14 +53,15 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.LocalLifecycleOwner import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.annotatedStringResource +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.model.WindowSize +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme import com.bitwarden.ui.platform.theme.LocalBitwardenColorScheme import com.bitwarden.ui.platform.theme.color.darkBitwardenColorScheme import com.bitwarden.ui.platform.util.rememberWindowSize import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold import com.x8bit.bitwarden.ui.vault.feature.qrcodescan.util.QrCodeAnalyzer import com.x8bit.bitwarden.ui.vault.feature.qrcodescan.util.QrCodeAnalyzerImpl @@ -114,7 +115,7 @@ fun QrCodeScanScreen( topBar = { BitwardenTopAppBar( title = stringResource(id = R.string.scan_qr_code), - navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), + navigationIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(QrCodeScanAction.CloseClick) } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/vault/VaultScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/vault/VaultScreen.kt index 300edbec0f..e327f05801 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/vault/VaultScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/vault/VaultScreen.kt @@ -31,16 +31,17 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.LifecycleEventEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.BitwardenMediumTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.action.BitwardenSearchActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.fab.BitwardenFloatingActionButton +import com.bitwarden.ui.platform.components.model.TopAppBarDividerStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.x8bit.bitwarden.R import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountActionItem import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountSwitcher import com.x8bit.bitwarden.ui.platform.components.animation.AnimateNullableContentVisibility -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenMediumTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenSearchActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard import com.x8bit.bitwarden.ui.platform.components.card.actionCardExitAnimation import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent @@ -50,7 +51,6 @@ import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenMasterPasswordDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.model.BitwardenPullToRefreshState -import com.x8bit.bitwarden.ui.platform.components.model.TopAppBarDividerStyle import com.x8bit.bitwarden.ui.platform.components.model.rememberBitwardenPullToRefreshState import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold import com.x8bit.bitwarden.ui.platform.components.snackbar.BitwardenSnackbar @@ -280,6 +280,7 @@ private fun VaultScreenScaffold( onClick = vaultHandlers.searchIconClickAction, ) BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.sync), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/verificationcode/VerificationCodeScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/verificationcode/VerificationCodeScreen.kt index a4fa46b694..bb96d87da5 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/verificationcode/VerificationCodeScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/verificationcode/VerificationCodeScreen.kt @@ -23,15 +23,15 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.bitwarden.ui.platform.base.util.toListItemCardStyle +import com.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem +import com.bitwarden.ui.platform.components.appbar.action.BitwardenSearchActionItem +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.x8bit.bitwarden.R import com.x8bit.bitwarden.data.platform.manager.model.AppResumeScreenData import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManager import com.x8bit.bitwarden.data.platform.manager.util.RegisterScreenDataOnLifecycleEffect -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenSearchActionItem -import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog @@ -111,6 +111,7 @@ fun VerificationCodeScreen( onClick = verificationCodeHandler.searchIconClick, ) BitwardenOverflowActionItem( + contentDescription = stringResource(R.string.more), menuItemDataList = persistentListOf( OverflowMenuItemData( text = stringResource(id = R.string.sync), diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/edititem/EditItemScreen.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/edititem/EditItemScreen.kt index 7687e14d64..2bede9710d 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/edititem/EditItemScreen.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/edititem/EditItemScreen.kt @@ -48,7 +48,7 @@ import com.bitwarden.authenticator.R import com.bitwarden.authenticator.data.authenticator.datasource.disk.entity.AuthenticatorItemAlgorithm import com.bitwarden.authenticator.data.authenticator.datasource.disk.entity.AuthenticatorItemType import com.bitwarden.authenticator.ui.authenticator.feature.edititem.model.EditItemData -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorTopAppBar import com.bitwarden.authenticator.ui.platform.components.button.BitwardenTextButton import com.bitwarden.authenticator.ui.platform.components.dialog.BasicDialogState import com.bitwarden.authenticator.ui.platform.components.dialog.BitwardenBasicDialog @@ -64,6 +64,7 @@ import com.bitwarden.authenticator.ui.platform.components.scaffold.BitwardenScaf import com.bitwarden.authenticator.ui.platform.components.stepper.BitwardenStepper import com.bitwarden.authenticator.ui.platform.components.toggle.BitwardenSwitch import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.DEFAULT_FADE_TRANSITION_TIME_MS import com.bitwarden.ui.platform.theme.DEFAULT_STAY_TRANSITION_TIME_MS import kotlinx.collections.immutable.toImmutableList @@ -111,12 +112,12 @@ fun EditItemScreen( .fillMaxSize() .nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { - BitwardenTopAppBar( + AuthenticatorTopAppBar( title = stringResource( id = R.string.edit_item, ), scrollBehavior = scrollBehavior, - navigationIcon = painterResource(id = R.drawable.ic_close), + navigationIcon = painterResource(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/itemlisting/FirstTimeSyncSnackbarHost.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/itemlisting/FirstTimeSyncSnackbarHost.kt index e99a8d5515..939c9b1e9d 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/itemlisting/FirstTimeSyncSnackbarHost.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/itemlisting/FirstTimeSyncSnackbarHost.kt @@ -20,6 +20,7 @@ import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import com.bitwarden.authenticator.R +import com.bitwarden.ui.platform.resource.BitwardenDrawable /** * Show a snackbar that says "Account synced from Bitwarden app" with a close action. @@ -56,7 +57,7 @@ fun FirstTimeSyncSnackbarHost( onClick = { state.currentSnackbarData?.dismiss() }, ) { Icon( - painter = painterResource(id = R.drawable.ic_close), + painter = painterResource(id = BitwardenDrawable.ic_close), contentDescription = stringResource(id = R.string.close), tint = MaterialTheme.colorScheme.inverseOnSurface, modifier = Modifier diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/itemlisting/ItemListingScreen.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/itemlisting/ItemListingScreen.kt index 032c26a7f1..969ed33acc 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/itemlisting/ItemListingScreen.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/itemlisting/ItemListingScreen.kt @@ -58,9 +58,9 @@ import com.bitwarden.authenticator.ui.authenticator.feature.itemlisting.model.It import com.bitwarden.authenticator.ui.authenticator.feature.itemlisting.model.SharedCodesDisplayState import com.bitwarden.authenticator.ui.authenticator.feature.itemlisting.model.VaultDropdownMenuAction import com.bitwarden.authenticator.ui.authenticator.feature.itemlisting.model.VerificationCodeDisplayItem -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenMediumTopAppBar -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenTopAppBar -import com.bitwarden.authenticator.ui.platform.components.appbar.action.BitwardenSearchActionItem +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorMediumTopAppBar +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorTopAppBar +import com.bitwarden.authenticator.ui.platform.components.appbar.action.AuthenticatorSearchActionItem import com.bitwarden.authenticator.ui.platform.components.button.BitwardenFilledButton import com.bitwarden.authenticator.ui.platform.components.button.BitwardenFilledTonalButton import com.bitwarden.authenticator.ui.platform.components.button.BitwardenTextButton @@ -84,6 +84,7 @@ import com.bitwarden.authenticator.ui.platform.theme.Typography import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.feature.settings.appearance.model.AppTheme +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.util.asText import kotlinx.coroutines.launch @@ -363,11 +364,11 @@ private fun ItemListingContent( .fillMaxSize() .nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { - BitwardenMediumTopAppBar( + AuthenticatorMediumTopAppBar( title = stringResource(id = R.string.verification_codes), scrollBehavior = scrollBehavior, actions = { - BitwardenSearchActionItem( + AuthenticatorSearchActionItem( contentDescription = stringResource(id = R.string.search_codes), onClick = onNavigateToSearch, ) @@ -590,7 +591,7 @@ fun EmptyItemListingContent( .fillMaxSize() .nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { - BitwardenTopAppBar( + AuthenticatorTopAppBar( title = stringResource(id = R.string.verification_codes), scrollBehavior = scrollBehavior, navigationIcon = null, @@ -727,7 +728,7 @@ private fun DownloadBitwardenActionCard( onClick = onDismissClick, ) { Icon( - painter = painterResource(id = R.drawable.ic_close), + painter = painterResource(id = BitwardenDrawable.ic_close), contentDescription = stringResource(id = R.string.close), tint = MaterialTheme.colorScheme.onSurfaceVariant, modifier = Modifier @@ -778,7 +779,7 @@ private fun SyncWithBitwardenActionCard( Spacer(Modifier.width(width = 16.dp)) IconButton(onClick = onDismissClick) { Icon( - painter = painterResource(id = R.drawable.ic_close), + painter = painterResource(id = BitwardenDrawable.ic_close), contentDescription = stringResource(id = R.string.close), tint = MaterialTheme.colorScheme.onSurfaceVariant, modifier = Modifier.size(size = 24.dp), diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/manualcodeentry/ManualCodeEntryScreen.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/manualcodeentry/ManualCodeEntryScreen.kt index 6db789ee19..634fe82fab 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/manualcodeentry/ManualCodeEntryScreen.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/manualcodeentry/ManualCodeEntryScreen.kt @@ -34,7 +34,7 @@ import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.authenticator.R -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorTopAppBar import com.bitwarden.authenticator.ui.platform.components.dialog.BasicDialogState import com.bitwarden.authenticator.ui.platform.components.dialog.BitwardenBasicDialog import com.bitwarden.authenticator.ui.platform.components.dialog.BitwardenLoadingDialog @@ -49,6 +49,7 @@ import com.bitwarden.authenticator.ui.platform.manager.intent.IntentManager import com.bitwarden.authenticator.ui.platform.manager.permissions.PermissionsManager import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.toAnnotatedString +import com.bitwarden.ui.platform.resource.BitwardenDrawable /** * The screen to manually add a totp code. @@ -145,9 +146,9 @@ fun ManualCodeEntryScreen( BitwardenScaffold( modifier = Modifier.fillMaxSize(), topBar = { - BitwardenTopAppBar( + AuthenticatorTopAppBar( title = stringResource(id = R.string.create_verification_code), - navigationIcon = painterResource(id = R.drawable.ic_close), + navigationIcon = painterResource(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(ManualCodeEntryAction.CloseClick) } diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/qrcodescan/QrCodeScanScreen.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/qrcodescan/QrCodeScanScreen.kt index 76023a846a..f940e04465 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/qrcodescan/QrCodeScanScreen.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/qrcodescan/QrCodeScanScreen.kt @@ -60,13 +60,14 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.authenticator.R import com.bitwarden.authenticator.ui.authenticator.feature.qrcodescan.util.QrCodeAnalyzer import com.bitwarden.authenticator.ui.authenticator.feature.qrcodescan.util.QrCodeAnalyzerImpl -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorTopAppBar import com.bitwarden.authenticator.ui.platform.components.dialog.BasicDialogState import com.bitwarden.authenticator.ui.platform.components.dialog.BitwardenBasicDialog import com.bitwarden.authenticator.ui.platform.components.scaffold.BitwardenScaffold import com.bitwarden.authenticator.ui.platform.theme.LocalNonMaterialColors import com.bitwarden.authenticator.ui.platform.theme.clickableSpanStyle import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.util.asText import java.util.concurrent.Executors import kotlin.coroutines.resume @@ -116,9 +117,9 @@ fun QrCodeScanScreen( BitwardenScaffold( modifier = Modifier.fillMaxSize(), topBar = { - BitwardenTopAppBar( + AuthenticatorTopAppBar( title = stringResource(id = R.string.scan_qr_code), - navigationIcon = painterResource(id = R.drawable.ic_close), + navigationIcon = painterResource(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { viewModel.trySendAction(QrCodeScanAction.CloseClick) } diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/search/ItemSearchScreen.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/search/ItemSearchScreen.kt index 1be6066067..d80969ac44 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/search/ItemSearchScreen.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/authenticator/feature/search/ItemSearchScreen.kt @@ -21,11 +21,11 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.authenticator.R import com.bitwarden.authenticator.ui.authenticator.feature.search.handlers.SearchHandlers -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenSearchTopAppBar -import com.bitwarden.authenticator.ui.platform.components.appbar.NavigationIcon +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorSearchTopAppBar import com.bitwarden.authenticator.ui.platform.components.scaffold.BitwardenScaffold import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.bottomDivider +import com.bitwarden.ui.platform.components.appbar.NavigationIcon /** * The search screen for authenticator items. @@ -58,7 +58,7 @@ fun ItemSearchScreen( modifier = Modifier .nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { - BitwardenSearchTopAppBar( + AuthenticatorSearchTopAppBar( modifier = Modifier .semantics { testTag = "SearchFieldEntry" } .bottomDivider(), diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/AuthenticatorMediumTopAppBar.kt similarity index 92% rename from authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt rename to authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/AuthenticatorMediumTopAppBar.kt index f8cba80f24..143ead4ec0 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/AuthenticatorMediumTopAppBar.kt @@ -16,7 +16,7 @@ import androidx.compose.ui.res.painterResource import androidx.compose.ui.semantics.semantics import androidx.compose.ui.semantics.testTag import androidx.compose.ui.tooling.preview.Preview -import com.bitwarden.authenticator.R +import com.bitwarden.ui.platform.resource.BitwardenDrawable /** * A custom Bitwarden-themed medium top app bar with support for actions. @@ -35,7 +35,7 @@ import com.bitwarden.authenticator.R */ @OptIn(ExperimentalMaterial3Api::class) @Composable -fun BitwardenMediumTopAppBar( +fun AuthenticatorMediumTopAppBar( title: String, scrollBehavior: TopAppBarScrollBehavior, modifier: Modifier = Modifier, @@ -65,9 +65,9 @@ fun BitwardenMediumTopAppBar( @OptIn(ExperimentalMaterial3Api::class) @Preview(showBackground = true) @Composable -private fun BitwardenMediumTopAppBar_preview() { +private fun AuthenticatorMediumTopAppBar_preview() { MaterialTheme { - BitwardenMediumTopAppBar( + AuthenticatorMediumTopAppBar( title = "Preview Title", scrollBehavior = TopAppBarDefaults .exitUntilCollapsedScrollBehavior( @@ -76,7 +76,7 @@ private fun BitwardenMediumTopAppBar_preview() { actions = { IconButton(onClick = { }) { Icon( - painter = painterResource(id = R.drawable.ic_more), + painter = painterResource(id = BitwardenDrawable.ic_ellipsis_vertical), contentDescription = "", tint = MaterialTheme.colorScheme.onSurface, ) diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/AuthenticatorSearchTopAppBar.kt similarity index 94% rename from authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt rename to authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/AuthenticatorSearchTopAppBar.kt index 49c8d58f01..5351a7b57c 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/AuthenticatorSearchTopAppBar.kt @@ -26,6 +26,8 @@ import androidx.compose.ui.semantics.testTag import androidx.compose.ui.text.input.ImeAction import com.bitwarden.authenticator.R import com.bitwarden.ui.platform.base.util.mirrorIfRtl +import com.bitwarden.ui.platform.components.appbar.NavigationIcon +import com.bitwarden.ui.platform.resource.BitwardenDrawable /** * Represents a Bitwarden styled [TopAppBar] that assumes the following components: @@ -35,7 +37,7 @@ import com.bitwarden.ui.platform.base.util.mirrorIfRtl */ @OptIn(ExperimentalMaterial3Api::class) @Composable -fun BitwardenSearchTopAppBar( +fun AuthenticatorSearchTopAppBar( searchTerm: String, placeholder: String, onSearchTermChange: (String) -> Unit, @@ -85,7 +87,7 @@ fun BitwardenSearchTopAppBar( onClick = { onSearchTermChange("") }, ) { Icon( - painter = painterResource(id = R.drawable.ic_close), + painter = painterResource(id = BitwardenDrawable.ic_close), contentDescription = stringResource(id = R.string.clear), ) } diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/BitwardenTopAppBar.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/AuthenticatorTopAppBar.kt similarity index 87% rename from authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/BitwardenTopAppBar.kt rename to authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/AuthenticatorTopAppBar.kt index bf65478985..ac4763615a 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/BitwardenTopAppBar.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/AuthenticatorTopAppBar.kt @@ -22,6 +22,8 @@ import androidx.compose.ui.tooling.preview.Preview import com.bitwarden.authenticator.R import com.bitwarden.authenticator.ui.platform.theme.AuthenticatorTheme import com.bitwarden.ui.platform.base.util.mirrorIfRtl +import com.bitwarden.ui.platform.components.appbar.NavigationIcon +import com.bitwarden.ui.platform.resource.BitwardenDrawable /** * Represents a Bitwarden styled [TopAppBar] that assumes the following components: @@ -35,7 +37,7 @@ import com.bitwarden.ui.platform.base.util.mirrorIfRtl */ @OptIn(ExperimentalMaterial3Api::class) @Composable -fun BitwardenTopAppBar( +fun AuthenticatorTopAppBar( title: String, scrollBehavior: TopAppBarScrollBehavior, navigationIcon: Painter, @@ -44,7 +46,7 @@ fun BitwardenTopAppBar( modifier: Modifier = Modifier, actions: @Composable RowScope.() -> Unit = { }, ) { - BitwardenTopAppBar( + AuthenticatorTopAppBar( title = title, scrollBehavior = scrollBehavior, navigationIcon = NavigationIcon( @@ -68,7 +70,7 @@ fun BitwardenTopAppBar( */ @OptIn(ExperimentalMaterial3Api::class) @Composable -fun BitwardenTopAppBar( +fun AuthenticatorTopAppBar( title: String, scrollBehavior: TopAppBarScrollBehavior, navigationIcon: NavigationIcon?, @@ -116,32 +118,19 @@ fun BitwardenTopAppBar( @OptIn(ExperimentalMaterial3Api::class) @Preview @Composable -private fun BitwardenTopAppBar_preview() { +private fun AuthenticatorTopAppBar_preview() { AuthenticatorTheme { - BitwardenTopAppBar( + AuthenticatorTopAppBar( title = "Title", scrollBehavior = TopAppBarDefaults .exitUntilCollapsedScrollBehavior( rememberTopAppBarState(), ), navigationIcon = NavigationIcon( - navigationIcon = painterResource(id = R.drawable.ic_close), + navigationIcon = painterResource(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = { }, ), ) } } - -/** - * Represents all data required to display a [navigationIcon]. - * - * @property navigationIcon The [Painter] displayed as part of the icon. - * @property navigationIconContentDescription The content description associated with the icon. - * @property onNavigationIconClick The click action that is invoked when the icon is tapped. - */ -data class NavigationIcon( - val navigationIcon: Painter, - val navigationIconContentDescription: String, - val onNavigationIconClick: () -> Unit, -) diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/action/AuthenticatorSearchActionItem.kt similarity index 85% rename from authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt rename to authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/action/AuthenticatorSearchActionItem.kt index 53387b1643..f4c4803eeb 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/appbar/action/AuthenticatorSearchActionItem.kt @@ -10,17 +10,17 @@ import com.bitwarden.authenticator.R import com.bitwarden.ui.platform.components.util.rememberVectorPainter /** - * Represents the Bitwarden search action item. + * Represents the Authenticator search action item. * * This is an [Icon] composable tailored specifically for the search functionality - * in the Bitwarden app. + * in the Authenticator app. * It presents the search icon and offers an `onClick` callback for when the icon is tapped. * * @param contentDescription A description of the UI element, used for accessibility purposes. * @param onClick A callback to be invoked when this action item is clicked. */ @Composable -fun BitwardenSearchActionItem( +fun AuthenticatorSearchActionItem( contentDescription: String, onClick: () -> Unit, ) { @@ -37,8 +37,8 @@ fun BitwardenSearchActionItem( @Preview(showBackground = true) @Composable -private fun BitwardenSearchActionItem_preview() { - BitwardenSearchActionItem( +private fun AuthenticatorSearchActionItem_preview() { + AuthenticatorSearchActionItem( contentDescription = "Search", onClick = {}, ) diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/card/BitwardenActionCard.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/card/BitwardenActionCard.kt index b327fad440..28d93bed0e 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/card/BitwardenActionCard.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/components/card/BitwardenActionCard.kt @@ -26,6 +26,7 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import com.bitwarden.authenticator.R import com.bitwarden.ui.platform.components.util.rememberVectorPainter +import com.bitwarden.ui.platform.resource.BitwardenDrawable /** * A reusable card for displaying actions to the user. @@ -97,7 +98,7 @@ fun BitwardenActionCard( @Composable private fun ActionCardPreview() { BitwardenActionCard( - actionIcon = rememberVectorPainter(id = R.drawable.ic_close), + actionIcon = rememberVectorPainter(id = BitwardenDrawable.ic_close), actionText = "This is an action.", callToActionText = "Take action", titleText = "This is a title", @@ -119,7 +120,7 @@ private fun ActionCardWithTrailingPreview() { onClick = {}, ) { Icon( - painter = painterResource(id = R.drawable.ic_close), + painter = painterResource(id = BitwardenDrawable.ic_close), contentDescription = stringResource(id = R.string.close), tint = MaterialTheme.colorScheme.onSurfaceVariant, modifier = Modifier diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/debugmenu/DebugMenuScreen.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/debugmenu/DebugMenuScreen.kt index 62d4b8ec97..47c9277db7 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/debugmenu/DebugMenuScreen.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/debugmenu/DebugMenuScreen.kt @@ -22,8 +22,7 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.authenticator.R import com.bitwarden.authenticator.data.platform.manager.model.FlagKey -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenTopAppBar -import com.bitwarden.authenticator.ui.platform.components.appbar.NavigationIcon +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorTopAppBar import com.bitwarden.authenticator.ui.platform.components.button.BitwardenFilledButton import com.bitwarden.authenticator.ui.platform.components.divider.BitwardenHorizontalDivider import com.bitwarden.authenticator.ui.platform.components.header.BitwardenListHeaderText @@ -32,6 +31,7 @@ import com.bitwarden.authenticator.ui.platform.feature.debugmenu.components.List import com.bitwarden.authenticator.ui.platform.theme.AuthenticatorTheme import com.bitwarden.ui.platform.base.util.EventsEffect import com.bitwarden.ui.platform.base.util.standardHorizontalMargin +import com.bitwarden.ui.platform.components.appbar.NavigationIcon import com.bitwarden.ui.platform.components.util.rememberVectorPainter /** @@ -57,7 +57,7 @@ fun DebugMenuScreen( .fillMaxSize() .nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { - BitwardenTopAppBar( + AuthenticatorTopAppBar( title = stringResource(R.string.debug_menu), scrollBehavior = scrollBehavior, navigationIcon = NavigationIcon( diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/SettingsScreen.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/SettingsScreen.kt index 46fd1e5ed3..e2fde7436f 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/SettingsScreen.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/SettingsScreen.kt @@ -48,7 +48,7 @@ import androidx.core.net.toUri import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.authenticator.R -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenMediumTopAppBar +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorMediumTopAppBar import com.bitwarden.authenticator.ui.platform.components.dialog.BitwardenSelectionDialog import com.bitwarden.authenticator.ui.platform.components.dialog.BitwardenSelectionRow import com.bitwarden.authenticator.ui.platform.components.header.BitwardenListHeaderText @@ -138,7 +138,7 @@ fun SettingsScreen( .fillMaxSize() .nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { - BitwardenMediumTopAppBar( + AuthenticatorMediumTopAppBar( title = stringResource(id = R.string.settings), scrollBehavior = scrollBehavior, ) diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/export/ExportScreen.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/export/ExportScreen.kt index b0eab5a607..2950320d3e 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/export/ExportScreen.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/export/ExportScreen.kt @@ -29,7 +29,7 @@ import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.authenticator.R -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorTopAppBar import com.bitwarden.authenticator.ui.platform.components.button.BitwardenFilledTonalButton import com.bitwarden.authenticator.ui.platform.components.dialog.BasicDialogState import com.bitwarden.authenticator.ui.platform.components.dialog.BitwardenBasicDialog @@ -43,6 +43,7 @@ import com.bitwarden.authenticator.ui.platform.feature.settings.export.model.Exp import com.bitwarden.authenticator.ui.platform.manager.intent.IntentManager import com.bitwarden.authenticator.ui.platform.util.displayLabel import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.resource.BitwardenDrawable import kotlinx.collections.immutable.toImmutableList /** @@ -141,10 +142,10 @@ fun ExportScreen( .fillMaxSize() .nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { - BitwardenTopAppBar( + AuthenticatorTopAppBar( title = stringResource(id = R.string.export), scrollBehavior = scrollBehavior, - navigationIcon = painterResource(id = R.drawable.ic_close), + navigationIcon = painterResource(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { diff --git a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/importing/ImportingScreen.kt b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/importing/ImportingScreen.kt index 178b66d733..0404bdcf71 100644 --- a/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/importing/ImportingScreen.kt +++ b/authenticator/src/main/kotlin/com/bitwarden/authenticator/ui/platform/feature/settings/importing/ImportingScreen.kt @@ -28,7 +28,7 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.bitwarden.authenticator.R import com.bitwarden.authenticator.data.platform.manager.imports.model.ImportFileFormat -import com.bitwarden.authenticator.ui.platform.components.appbar.BitwardenTopAppBar +import com.bitwarden.authenticator.ui.platform.components.appbar.AuthenticatorTopAppBar import com.bitwarden.authenticator.ui.platform.components.button.BitwardenFilledTonalButton import com.bitwarden.authenticator.ui.platform.components.dialog.BitwardenLoadingDialog import com.bitwarden.authenticator.ui.platform.components.dialog.BitwardenTwoButtonDialog @@ -39,6 +39,7 @@ import com.bitwarden.authenticator.ui.platform.composition.LocalIntentManager import com.bitwarden.authenticator.ui.platform.manager.intent.IntentManager import com.bitwarden.authenticator.ui.platform.util.displayLabel import com.bitwarden.ui.platform.base.util.EventsEffect +import com.bitwarden.ui.platform.resource.BitwardenDrawable import kotlinx.collections.immutable.toImmutableList /** @@ -118,10 +119,10 @@ fun ImportingScreen( .fillMaxSize() .nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { - BitwardenTopAppBar( + AuthenticatorTopAppBar( title = stringResource(id = R.string.import_vault), scrollBehavior = scrollBehavior, - navigationIcon = painterResource(id = R.drawable.ic_close), + navigationIcon = painterResource(id = BitwardenDrawable.ic_close), navigationIconContentDescription = stringResource(id = R.string.close), onNavigationIconClick = remember(viewModel) { { diff --git a/authenticator/src/main/res/drawable/ic_close.xml b/authenticator/src/main/res/drawable/ic_close.xml deleted file mode 100644 index 0709d97e4d..0000000000 --- a/authenticator/src/main/res/drawable/ic_close.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/authenticator/src/main/res/drawable/ic_more.xml b/authenticator/src/main/res/drawable/ic_more.xml deleted file mode 100644 index 2cf873f58e..0000000000 --- a/authenticator/src/main/res/drawable/ic_more.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt similarity index 93% rename from app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt rename to ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt index 9defa51a42..a2596d05b2 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/BitwardenMediumTopAppBar.kt @@ -1,4 +1,4 @@ -package com.x8bit.bitwarden.ui.platform.components.appbar +package com.bitwarden.ui.platform.components.appbar import androidx.compose.foundation.layout.RowScope import androidx.compose.foundation.layout.WindowInsets @@ -21,11 +21,11 @@ import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.base.util.bottomDivider import com.bitwarden.ui.platform.base.util.mirrorIfRtl import com.bitwarden.ui.platform.base.util.scrolledContainerBottomDivider +import com.bitwarden.ui.platform.components.appbar.color.bitwardenTopAppBarColors import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton +import com.bitwarden.ui.platform.components.model.TopAppBarDividerStyle +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme -import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.color.bitwardenTopAppBarColors -import com.x8bit.bitwarden.ui.platform.components.model.TopAppBarDividerStyle /** * A custom Bitwarden-themed medium top app bar with support for actions. @@ -115,7 +115,7 @@ private fun BitwardenMediumTopAppBar_preview() { ), actions = { BitwardenStandardIconButton( - vectorIconRes = R.drawable.ic_ellipsis_vertical, + vectorIconRes = BitwardenDrawable.ic_ellipsis_vertical, contentDescription = "", onClick = { }, ) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt similarity index 89% rename from app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt rename to ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt index 42e4d145da..9cca65516b 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/BitwardenSearchTopAppBar.kt @@ -1,4 +1,4 @@ -package com.x8bit.bitwarden.ui.platform.components.appbar +package com.bitwarden.ui.platform.components.appbar import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.WindowInsetsSides @@ -20,16 +20,15 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.focus.FocusRequester import androidx.compose.ui.focus.focusRequester import androidx.compose.ui.platform.testTag -import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.input.ImeAction import com.bitwarden.ui.platform.base.util.bottomDivider import com.bitwarden.ui.platform.base.util.mirrorIfRtl import com.bitwarden.ui.platform.base.util.tabNavigation +import com.bitwarden.ui.platform.components.appbar.color.bitwardenTopAppBarColors import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton +import com.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme -import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.color.bitwardenTopAppBarColors -import com.x8bit.bitwarden.ui.platform.components.field.color.bitwardenTextFieldColors /** * Represents a Bitwarden styled [TopAppBar] that assumes the following components: @@ -46,6 +45,7 @@ fun BitwardenSearchTopAppBar( onSearchTermChange: (String) -> Unit, scrollBehavior: TopAppBarScrollBehavior, navigationIcon: NavigationIcon?, + clearIconContentDescription: String, modifier: Modifier = Modifier, windowInsets: WindowInsets = TopAppBarDefaults.windowInsets .union(WindowInsets.displayCutout.only(WindowInsetsSides.Horizontal)), @@ -81,8 +81,8 @@ fun BitwardenSearchTopAppBar( onValueChange = onSearchTermChange, trailingIcon = { BitwardenStandardIconButton( - vectorIconRes = R.drawable.ic_clear, - contentDescription = stringResource(id = R.string.clear), + vectorIconRes = BitwardenDrawable.ic_clear, + contentDescription = clearIconContentDescription, onClick = { onSearchTermChange("") }, ) }, diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/BitwardenTopAppBar.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/BitwardenTopAppBar.kt similarity index 94% rename from app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/BitwardenTopAppBar.kt rename to ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/BitwardenTopAppBar.kt index accd9fd507..2200602241 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/BitwardenTopAppBar.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/BitwardenTopAppBar.kt @@ -1,4 +1,4 @@ -package com.x8bit.bitwarden.ui.platform.components.appbar +package com.bitwarden.ui.platform.components.appbar import androidx.compose.foundation.layout.RowScope import androidx.compose.foundation.layout.WindowInsets @@ -21,20 +21,19 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.platform.testTag -import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.dp +import com.bitwarden.ui.R import com.bitwarden.ui.platform.base.util.bottomDivider import com.bitwarden.ui.platform.base.util.mirrorIfRtl import com.bitwarden.ui.platform.base.util.scrolledContainerBottomDivider +import com.bitwarden.ui.platform.components.appbar.color.bitwardenTopAppBarColors import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton +import com.bitwarden.ui.platform.components.model.TopAppBarDividerStyle import com.bitwarden.ui.platform.components.util.rememberVectorPainter import com.bitwarden.ui.platform.theme.BitwardenTheme -import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.color.bitwardenTopAppBarColors -import com.x8bit.bitwarden.ui.platform.components.model.TopAppBarDividerStyle /** * Represents a Bitwarden styled [TopAppBar] that assumes the following components: @@ -197,7 +196,7 @@ private fun BitwardenTopAppBar_preview() { ), navigationIcon = NavigationIcon( navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), - navigationIconContentDescription = stringResource(id = R.string.close), + navigationIconContentDescription = "Close", onNavigationIconClick = { }, ), ) @@ -217,7 +216,7 @@ private fun BitwardenTopAppBarOverflow_preview() { ), navigationIcon = NavigationIcon( navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), - navigationIconContentDescription = stringResource(id = R.string.close), + navigationIconContentDescription = "Close", onNavigationIconClick = { }, ), ) @@ -237,7 +236,7 @@ private fun BitwardenTopAppBarOverflowCutoff_preview() { ), navigationIcon = NavigationIcon( navigationIcon = rememberVectorPainter(id = R.drawable.ic_close), - navigationIconContentDescription = stringResource(id = R.string.close), + navigationIconContentDescription = "Close", onNavigationIconClick = { }, ), ) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/action/BitwardenOverflowActionItem.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/action/BitwardenOverflowActionItem.kt similarity index 84% rename from app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/action/BitwardenOverflowActionItem.kt rename to ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/action/BitwardenOverflowActionItem.kt index 0cc47f9c2e..1c201ac681 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/action/BitwardenOverflowActionItem.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/action/BitwardenOverflowActionItem.kt @@ -1,4 +1,4 @@ -package com.x8bit.bitwarden.ui.platform.components.appbar.action +package com.bitwarden.ui.platform.components.appbar.action import androidx.annotation.DrawableRes import androidx.compose.foundation.layout.Box @@ -16,17 +16,17 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.testTag -import androidx.compose.ui.res.stringResource import androidx.compose.ui.semantics.semantics import androidx.compose.ui.semantics.testTagsAsResourceId import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.DpOffset import androidx.compose.ui.unit.dp import com.bitwarden.ui.platform.base.util.nullableTestTag +import com.bitwarden.ui.platform.components.appbar.color.bitwardenMenuItemColors +import com.bitwarden.ui.platform.components.appbar.model.OverflowMenuItemData import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton +import com.bitwarden.ui.platform.resource.BitwardenDrawable import com.bitwarden.ui.platform.theme.BitwardenTheme -import com.x8bit.bitwarden.R -import com.x8bit.bitwarden.ui.platform.components.appbar.color.bitwardenMenuItemColors import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.persistentListOf @@ -43,9 +43,9 @@ import kotlinx.collections.immutable.persistentListOf @Composable fun BitwardenOverflowActionItem( menuItemDataList: ImmutableList, + contentDescription: String, modifier: Modifier = Modifier, - @DrawableRes vectorIconRes: Int = R.drawable.ic_ellipsis_vertical, - contentDescription: String = stringResource(id = R.string.more), + @DrawableRes vectorIconRes: Int = BitwardenDrawable.ic_ellipsis_vertical, testTag: String? = "HeaderBarOptionsButton", ) { if (menuItemDataList.isEmpty()) return @@ -107,6 +107,7 @@ fun BitwardenOverflowActionItem( private fun BitwardenOverflowActionItem_preview() { BitwardenTheme { BitwardenOverflowActionItem( + contentDescription = "More", menuItemDataList = persistentListOf( OverflowMenuItemData( text = "Test", @@ -116,18 +117,3 @@ private fun BitwardenOverflowActionItem_preview() { ) } } - -/** - * Data used to populate one row of an overflow dropdown menu. - * - * @param text The text displayed for the item in the menu. - * @param onClick A callback for when the menu item is clicked. - * @param isEnabled Indicates that this overflow item is enabled or not. - * @param color The color of the content. - */ -data class OverflowMenuItemData( - val text: String, - val onClick: () -> Unit, - val isEnabled: Boolean = true, - val color: Color = Color.Unspecified, -) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt similarity index 87% rename from app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt rename to ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt index 33d1f5d495..7d6f3461ff 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/action/BitwardenSearchActionItem.kt @@ -1,4 +1,4 @@ -package com.x8bit.bitwarden.ui.platform.components.appbar.action +package com.bitwarden.ui.platform.components.appbar.action import androidx.compose.material3.Icon import androidx.compose.runtime.Composable @@ -6,7 +6,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.platform.testTag import androidx.compose.ui.tooling.preview.Preview import com.bitwarden.ui.platform.components.button.BitwardenStandardIconButton -import com.x8bit.bitwarden.R +import com.bitwarden.ui.platform.resource.BitwardenDrawable /** * Represents the Bitwarden search action item. @@ -24,7 +24,7 @@ fun BitwardenSearchActionItem( onClick: () -> Unit, ) { BitwardenStandardIconButton( - vectorIconRes = R.drawable.ic_search, + vectorIconRes = BitwardenDrawable.ic_search, contentDescription = contentDescription, onClick = onClick, modifier = Modifier.testTag(tag = "SearchButton"), diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/color/BitwardenMenuItemColors.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenMenuItemColors.kt similarity index 92% rename from app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/color/BitwardenMenuItemColors.kt rename to ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenMenuItemColors.kt index b50cca78a7..c3d33fe7b7 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/color/BitwardenMenuItemColors.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenMenuItemColors.kt @@ -1,4 +1,4 @@ -package com.x8bit.bitwarden.ui.platform.components.appbar.color +package com.bitwarden.ui.platform.components.appbar.color import androidx.compose.material3.MenuItemColors import androidx.compose.runtime.Composable diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt similarity index 92% rename from app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt rename to ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt index 65fde44641..18944282d2 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt @@ -1,4 +1,4 @@ -package com.x8bit.bitwarden.ui.platform.components.appbar.color +package com.bitwarden.ui.platform.components.appbar.color import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.TopAppBarColors diff --git a/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/model/OverflowMenuItemData.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/model/OverflowMenuItemData.kt new file mode 100644 index 0000000000..f771862adb --- /dev/null +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/model/OverflowMenuItemData.kt @@ -0,0 +1,18 @@ +package com.bitwarden.ui.platform.components.appbar.model + +import androidx.compose.ui.graphics.Color + +/** + * Data used to populate one row of an overflow dropdown menu. + * + * @param text The text displayed for the item in the menu. + * @param onClick A callback for when the menu item is clicked. + * @param isEnabled Indicates that this overflow item is enabled or not. + * @param color The color of the content. + */ +data class OverflowMenuItemData( + val text: String, + val onClick: () -> Unit, + val isEnabled: Boolean = true, + val color: Color = Color.Unspecified, +) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/color/BitwardenTextFieldColors.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/field/color/BitwardenTextFieldColors.kt similarity index 98% rename from app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/color/BitwardenTextFieldColors.kt rename to ui/src/main/kotlin/com/bitwarden/ui/platform/components/field/color/BitwardenTextFieldColors.kt index 3b0ce27a1d..153521c910 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/field/color/BitwardenTextFieldColors.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/field/color/BitwardenTextFieldColors.kt @@ -1,4 +1,4 @@ -package com.x8bit.bitwarden.ui.platform.components.field.color +package com.bitwarden.ui.platform.components.field.color import androidx.compose.foundation.text.selection.TextSelectionColors import androidx.compose.material3.TextFieldColors diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/model/TopAppBarDividerStyle.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/model/TopAppBarDividerStyle.kt similarity index 55% rename from app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/model/TopAppBarDividerStyle.kt rename to ui/src/main/kotlin/com/bitwarden/ui/platform/components/model/TopAppBarDividerStyle.kt index b44fbe5f5a..b114bb5675 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/components/model/TopAppBarDividerStyle.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/model/TopAppBarDividerStyle.kt @@ -1,6 +1,4 @@ -package com.x8bit.bitwarden.ui.platform.components.model - -import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenMediumTopAppBar +package com.bitwarden.ui.platform.components.model /** * Defines the possible display options for a bottom divider on a [BitwardenMediumTopAppBar]. diff --git a/app/src/main/res/drawable/ic_clear.xml b/ui/src/main/res/drawable/ic_clear.xml similarity index 100% rename from app/src/main/res/drawable/ic_clear.xml rename to ui/src/main/res/drawable/ic_clear.xml diff --git a/app/src/main/res/drawable/ic_close.xml b/ui/src/main/res/drawable/ic_close.xml similarity index 100% rename from app/src/main/res/drawable/ic_close.xml rename to ui/src/main/res/drawable/ic_close.xml diff --git a/app/src/main/res/drawable/ic_ellipsis_vertical.xml b/ui/src/main/res/drawable/ic_ellipsis_vertical.xml similarity index 100% rename from app/src/main/res/drawable/ic_ellipsis_vertical.xml rename to ui/src/main/res/drawable/ic_ellipsis_vertical.xml diff --git a/app/src/main/res/drawable/ic_search.xml b/ui/src/main/res/drawable/ic_search.xml similarity index 100% rename from app/src/main/res/drawable/ic_search.xml rename to ui/src/main/res/drawable/ic_search.xml