diff --git a/README.md b/README.md
index 6e7973d752..6c2066e59e 100644
--- a/README.md
+++ b/README.md
@@ -4,6 +4,7 @@
- [Compatibility](#compatibility)
- [Setup](#setup)
+- [Theme](#theme)
- [Dependencies](#dependencies)
## Compatibility
@@ -15,7 +16,6 @@
## Setup
-
1. Clone the repository:
```sh
@@ -52,6 +52,25 @@
Please avoid mixing formatting and logical changes in the same commit/PR. When possible, fix any large formatting issues in a separate PR before opening one to make logical changes to the same code. This helps others focus on the meaningful code changes when reviewing the code.
+## Theme
+
+### Icons & Illustrations
+
+The app supports light mode, dark mode and dynamic colors. Most icons in the app will display correctly using tinting but multi-tonal icons and illustrations require extra processing in order to be displayed properly with dynamic colors.
+
+All illustrations and multi-tonal icons require the svg paths to be tagged with the `name` attribute in order for each individual path to be tinted the appropriate color. Any untagged path will not be tinted and the resulting image will be incorrect.
+
+The supported tags are as follows:
+
+* outline
+* primary
+* secondary
+* tertiary
+* accent
+* logo
+* navigation
+* navigationActiveAccent
+
## Dependencies
### Application Dependencies
diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/platform/components/util/RememberVectorPainter.kt b/app/src/main/java/com/x8bit/bitwarden/ui/platform/components/util/RememberVectorPainter.kt
index be5a03e3d5..71262dc8f6 100644
--- a/app/src/main/java/com/x8bit/bitwarden/ui/platform/components/util/RememberVectorPainter.kt
+++ b/app/src/main/java/com/x8bit/bitwarden/ui/platform/components/util/RememberVectorPainter.kt
@@ -2,10 +2,15 @@ package com.x8bit.bitwarden.ui.platform.components.util
import androidx.annotation.DrawableRes
import androidx.compose.runtime.Composable
+import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
+import androidx.compose.ui.graphics.vector.VectorGroup
import androidx.compose.ui.graphics.vector.VectorPainter
+import androidx.compose.ui.graphics.vector.VectorPath
import androidx.compose.ui.graphics.vector.rememberVectorPainter
import androidx.compose.ui.res.vectorResource
+import com.bitwarden.ui.platform.theme.color.BitwardenColorScheme
+import com.x8bit.bitwarden.ui.platform.theme.BitwardenTheme
/**
* Returns a [VectorPainter] built from the given [id] to circumvent issues with painter resources
@@ -15,5 +20,90 @@ import androidx.compose.ui.res.vectorResource
fun rememberVectorPainter(
@DrawableRes id: Int,
): VectorPainter = rememberVectorPainter(
- image = ImageVector.vectorResource(id),
+ image = multiTonalVectorResource(id = id),
)
+
+/**
+ * Creates a [ImageVector] and updates the path colors to match the current theme.
+ */
+@Composable
+private fun multiTonalVectorResource(
+ @DrawableRes id: Int,
+): ImageVector {
+ val originalImage = ImageVector.vectorResource(id = id)
+ return ImageVector
+ .Builder(
+ name = originalImage.name,
+ defaultWidth = originalImage.defaultWidth,
+ defaultHeight = originalImage.defaultHeight,
+ viewportWidth = originalImage.viewportWidth,
+ viewportHeight = originalImage.viewportHeight,
+ tintColor = originalImage.tintColor,
+ tintBlendMode = originalImage.tintBlendMode,
+ autoMirror = originalImage.autoMirror,
+ )
+ .cloneVectorGroupWithUpdatedColors(
+ vectorGroup = originalImage.root,
+ colors = BitwardenTheme.colorScheme,
+ )
+ .build()
+}
+
+/**
+ * Copies the given [vectorGroup] into the builder while updating the the path colors with the
+ * provided [colors].
+ */
+private fun ImageVector.Builder.cloneVectorGroupWithUpdatedColors(
+ vectorGroup: VectorGroup,
+ colors: BitwardenColorScheme,
+): ImageVector.Builder {
+ vectorGroup.iterator().forEach { vectorNode ->
+ when (vectorNode) {
+ is VectorGroup -> {
+ addGroup(
+ name = vectorNode.name,
+ rotate = vectorNode.rotation,
+ pivotX = vectorNode.pivotX,
+ pivotY = vectorNode.pivotY,
+ scaleX = vectorNode.scaleX,
+ scaleY = vectorNode.scaleY,
+ translationX = vectorNode.translationX,
+ translationY = vectorNode.translationY,
+ clipPathData = vectorNode.clipPathData,
+ )
+ cloneVectorGroupWithUpdatedColors(vectorGroup = vectorNode, colors = colors)
+ clearGroup()
+ }
+
+ is VectorPath -> {
+ addPath(
+ pathData = vectorNode.pathData,
+ pathFillType = vectorNode.pathFillType,
+ name = vectorNode.name,
+ fill = when (vectorNode.name) {
+ "outline" -> SolidColor(colors.illustration.outline)
+ "primary" -> SolidColor(colors.illustration.backgroundPrimary)
+ "secondary" -> SolidColor(colors.illustration.backgroundSecondary)
+ "tertiary" -> SolidColor(colors.illustration.backgroundTertiary)
+ "accent" -> SolidColor(colors.illustration.accent)
+ "logo" -> SolidColor(colors.illustration.logo)
+ "navigation" -> SolidColor(colors.icon.secondary)
+ "navigationActiveAccent" -> SolidColor(colors.icon.navActiveAccent)
+ else -> vectorNode.fill
+ },
+ fillAlpha = vectorNode.fillAlpha,
+ stroke = vectorNode.stroke,
+ strokeAlpha = vectorNode.strokeAlpha,
+ strokeLineWidth = vectorNode.strokeLineWidth,
+ strokeLineCap = vectorNode.strokeLineCap,
+ strokeLineJoin = vectorNode.strokeLineJoin,
+ strokeLineMiter = vectorNode.strokeLineMiter,
+ trimPathStart = vectorNode.trimPathStart,
+ trimPathEnd = vectorNode.trimPathEnd,
+ trimPathOffset = vectorNode.trimPathOffset,
+ )
+ }
+ }
+ }
+ return this
+}
diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/platform/theme/color/ColorScheme.kt b/app/src/main/java/com/x8bit/bitwarden/ui/platform/theme/color/ColorScheme.kt
index 3075ec5413..3749edbfc8 100644
--- a/app/src/main/java/com/x8bit/bitwarden/ui/platform/theme/color/ColorScheme.kt
+++ b/app/src/main/java/com/x8bit/bitwarden/ui/platform/theme/color/ColorScheme.kt
@@ -35,6 +35,7 @@ val darkBitwardenColorScheme: BitwardenColorScheme = BitwardenColorScheme(
reversed = PrimitiveColors.gray1100,
badgeBackground = PrimitiveColors.pink200,
badgeForeground = PrimitiveColors.gray1100,
+ navActiveAccent = PrimitiveColors.blue500,
),
filledButton = BitwardenColorScheme.FilledButtonColors(
background = PrimitiveColors.blue400,
@@ -73,6 +74,10 @@ val darkBitwardenColorScheme: BitwardenColorScheme = BitwardenColorScheme(
illustration = BitwardenColorScheme.IllustrationColors(
outline = PrimitiveColors.blue500,
backgroundPrimary = PrimitiveColors.blue200,
+ backgroundSecondary = PrimitiveColors.blue300,
+ backgroundTertiary = PrimitiveColors.gray200,
+ accent = PrimitiveColors.yellow200,
+ logo = PrimitiveColors.gray100,
),
)
@@ -107,6 +112,7 @@ val lightBitwardenColorScheme: BitwardenColorScheme = BitwardenColorScheme(
reversed = PrimitiveColors.gray100,
badgeBackground = PrimitiveColors.pink100,
badgeForeground = PrimitiveColors.gray100,
+ navActiveAccent = PrimitiveColors.blue100,
),
filledButton = BitwardenColorScheme.FilledButtonColors(
background = PrimitiveColors.blue500,
@@ -145,6 +151,10 @@ val lightBitwardenColorScheme: BitwardenColorScheme = BitwardenColorScheme(
illustration = BitwardenColorScheme.IllustrationColors(
outline = PrimitiveColors.blue700,
backgroundPrimary = PrimitiveColors.blue100,
+ backgroundSecondary = PrimitiveColors.blue200,
+ backgroundTertiary = PrimitiveColors.gray100,
+ accent = PrimitiveColors.yellow200,
+ logo = PrimitiveColors.blue500,
),
)
@@ -185,6 +195,7 @@ fun dynamicBitwardenColorScheme(
reversed = materialColorScheme.inversePrimary,
badgeBackground = materialColorScheme.error,
badgeForeground = materialColorScheme.onError,
+ navActiveAccent = materialColorScheme.onPrimary,
),
filledButton = BitwardenColorScheme.FilledButtonColors(
background = materialColorScheme.primary,
@@ -221,8 +232,20 @@ fun dynamicBitwardenColorScheme(
error = defaultTheme.status.error,
),
illustration = BitwardenColorScheme.IllustrationColors(
- outline = materialColorScheme.tertiaryContainer,
- backgroundPrimary = materialColorScheme.onTertiaryContainer,
+ outline = materialColorScheme.onSurface,
+ backgroundPrimary = if (isDarkTheme) {
+ materialColorScheme.outlineVariant
+ } else {
+ materialColorScheme.surfaceContainerHighest
+ },
+ backgroundSecondary = if (isDarkTheme) {
+ materialColorScheme.surfaceContainerHighest
+ } else {
+ materialColorScheme.outlineVariant
+ },
+ backgroundTertiary = materialColorScheme.surface,
+ accent = materialColorScheme.tertiaryContainer,
+ logo = materialColorScheme.primary,
),
)
}
diff --git a/app/src/main/res/drawable-night/account_setup.xml b/app/src/main/res/drawable-night/account_setup.xml
deleted file mode 100644
index 12c522878c..0000000000
--- a/app/src/main/res/drawable-night/account_setup.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/blocked_uri.xml b/app/src/main/res/drawable-night/blocked_uri.xml
deleted file mode 100644
index 01f9998f3f..0000000000
--- a/app/src/main/res/drawable-night/blocked_uri.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/ic_generator_filled.xml b/app/src/main/res/drawable-night/ic_generator_filled.xml
deleted file mode 100644
index ab741b18bf..0000000000
--- a/app/src/main/res/drawable-night/ic_generator_filled.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/ic_send_filled.xml b/app/src/main/res/drawable-night/ic_send_filled.xml
deleted file mode 100644
index d4723a5d2e..0000000000
--- a/app/src/main/res/drawable-night/ic_send_filled.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/ic_settings_filled.xml b/app/src/main/res/drawable-night/ic_settings_filled.xml
deleted file mode 100644
index 60afa6271b..0000000000
--- a/app/src/main/res/drawable-night/ic_settings_filled.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/ic_vault_filled.xml b/app/src/main/res/drawable-night/ic_vault_filled.xml
deleted file mode 100644
index 7b6d888f63..0000000000
--- a/app/src/main/res/drawable-night/ic_vault_filled.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/il_secure_devices.xml b/app/src/main/res/drawable-night/il_secure_devices.xml
deleted file mode 100644
index 1e7bf98429..0000000000
--- a/app/src/main/res/drawable-night/il_secure_devices.xml
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/img_2fa.xml b/app/src/main/res/drawable-night/img_2fa.xml
deleted file mode 100644
index 2f2753f584..0000000000
--- a/app/src/main/res/drawable-night/img_2fa.xml
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/img_authenticator.xml b/app/src/main/res/drawable-night/img_authenticator.xml
deleted file mode 100644
index 64b35b183e..0000000000
--- a/app/src/main/res/drawable-night/img_authenticator.xml
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/img_folder_question.xml b/app/src/main/res/drawable-night/img_folder_question.xml
deleted file mode 100644
index f6d85261e1..0000000000
--- a/app/src/main/res/drawable-night/img_folder_question.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/img_import_logins.xml b/app/src/main/res/drawable-night/img_import_logins.xml
deleted file mode 100644
index 64443dc268..0000000000
--- a/app/src/main/res/drawable-night/img_import_logins.xml
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/img_secure_devices.xml b/app/src/main/res/drawable-night/img_secure_devices.xml
deleted file mode 100644
index 45b2b74a46..0000000000
--- a/app/src/main/res/drawable-night/img_secure_devices.xml
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/img_send.xml b/app/src/main/res/drawable-night/img_send.xml
deleted file mode 100644
index 1ccba76602..0000000000
--- a/app/src/main/res/drawable-night/img_send.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/img_setup_complete.xml b/app/src/main/res/drawable-night/img_setup_complete.xml
deleted file mode 100644
index f2b8d9b7f2..0000000000
--- a/app/src/main/res/drawable-night/img_setup_complete.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/img_vault_items.xml b/app/src/main/res/drawable-night/img_vault_items.xml
deleted file mode 100644
index 3f5e7b6cab..0000000000
--- a/app/src/main/res/drawable-night/img_vault_items.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/lock.xml b/app/src/main/res/drawable-night/lock.xml
deleted file mode 100644
index 914b4cf4e6..0000000000
--- a/app/src/main/res/drawable-night/lock.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/open_email.xml b/app/src/main/res/drawable-night/open_email.xml
deleted file mode 100644
index dd53e3b41b..0000000000
--- a/app/src/main/res/drawable-night/open_email.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/pending_requests.xml b/app/src/main/res/drawable-night/pending_requests.xml
deleted file mode 100644
index 670c537d8c..0000000000
--- a/app/src/main/res/drawable-night/pending_requests.xml
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/vault.xml b/app/src/main/res/drawable-night/vault.xml
deleted file mode 100644
index 635dc06784..0000000000
--- a/app/src/main/res/drawable-night/vault.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/welcome_2.xml b/app/src/main/res/drawable-night/welcome_2.xml
deleted file mode 100644
index 8f155e882e..0000000000
--- a/app/src/main/res/drawable-night/welcome_2.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/welcome_3.xml b/app/src/main/res/drawable-night/welcome_3.xml
deleted file mode 100644
index 0238feb373..0000000000
--- a/app/src/main/res/drawable-night/welcome_3.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable-night/welcome_4.xml b/app/src/main/res/drawable-night/welcome_4.xml
deleted file mode 100644
index a2fa9ef7a0..0000000000
--- a/app/src/main/res/drawable-night/welcome_4.xml
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable/account_setup.xml b/app/src/main/res/drawable/account_setup.xml
index 2f54541443..1374650edf 100644
--- a/app/src/main/res/drawable/account_setup.xml
+++ b/app/src/main/res/drawable/account_setup.xml
@@ -3,49 +3,61 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/blocked_uri.xml b/app/src/main/res/drawable/blocked_uri.xml
index 53e78dc836..c189077a6e 100644
--- a/app/src/main/res/drawable/blocked_uri.xml
+++ b/app/src/main/res/drawable/blocked_uri.xml
@@ -3,36 +3,45 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/ic_generator_filled.xml b/app/src/main/res/drawable/ic_generator_filled.xml
index d1c791d6d3..963d55bdf7 100644
--- a/app/src/main/res/drawable/ic_generator_filled.xml
+++ b/app/src/main/res/drawable/ic_generator_filled.xml
@@ -6,25 +6,31 @@
diff --git a/app/src/main/res/drawable/ic_send_filled.xml b/app/src/main/res/drawable/ic_send_filled.xml
index 0fd2e5423d..de9d3b1f3f 100644
--- a/app/src/main/res/drawable/ic_send_filled.xml
+++ b/app/src/main/res/drawable/ic_send_filled.xml
@@ -3,11 +3,13 @@
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
-
-
+
+
diff --git a/app/src/main/res/drawable/ic_settings_filled.xml b/app/src/main/res/drawable/ic_settings_filled.xml
index fa301ec82f..dfdffbcbfa 100644
--- a/app/src/main/res/drawable/ic_settings_filled.xml
+++ b/app/src/main/res/drawable/ic_settings_filled.xml
@@ -3,19 +3,21 @@
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/ic_vault_filled.xml b/app/src/main/res/drawable/ic_vault_filled.xml
index cf997808df..539de4bde3 100644
--- a/app/src/main/res/drawable/ic_vault_filled.xml
+++ b/app/src/main/res/drawable/ic_vault_filled.xml
@@ -4,13 +4,16 @@
android:viewportWidth="24"
android:viewportHeight="24">
diff --git a/app/src/main/res/drawable/il_secure_devices.xml b/app/src/main/res/drawable/il_secure_devices.xml
index b5af5b1b9d..e44ce1816d 100644
--- a/app/src/main/res/drawable/il_secure_devices.xml
+++ b/app/src/main/res/drawable/il_secure_devices.xml
@@ -4,70 +4,89 @@
android:viewportWidth="96"
android:viewportHeight="96">
diff --git a/app/src/main/res/drawable/img_2fa.xml b/app/src/main/res/drawable/img_2fa.xml
index 735a3c4a71..3a2ba899f7 100644
--- a/app/src/main/res/drawable/img_2fa.xml
+++ b/app/src/main/res/drawable/img_2fa.xml
@@ -4,69 +4,88 @@
android:viewportWidth="200"
android:viewportHeight="201">
diff --git a/app/src/main/res/drawable/img_authenticator.xml b/app/src/main/res/drawable/img_authenticator.xml
index 18174ceadf..a9dd1cf4a9 100644
--- a/app/src/main/res/drawable/img_authenticator.xml
+++ b/app/src/main/res/drawable/img_authenticator.xml
@@ -3,71 +3,83 @@
android:height="200dp"
android:viewportWidth="200"
android:viewportHeight="200">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/img_folder_question.xml b/app/src/main/res/drawable/img_folder_question.xml
index 3ae36085e0..6e91206520 100644
--- a/app/src/main/res/drawable/img_folder_question.xml
+++ b/app/src/main/res/drawable/img_folder_question.xml
@@ -4,33 +4,42 @@
android:viewportWidth="200"
android:viewportHeight="201">
diff --git a/app/src/main/res/drawable/img_import_logins.xml b/app/src/main/res/drawable/img_import_logins.xml
index af02d13068..4aa95b9b59 100644
--- a/app/src/main/res/drawable/img_import_logins.xml
+++ b/app/src/main/res/drawable/img_import_logins.xml
@@ -3,71 +3,88 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/img_new_device_verification.xml b/app/src/main/res/drawable/img_new_device_verification.xml
index 872f7fb081..ceafa0bed7 100644
--- a/app/src/main/res/drawable/img_new_device_verification.xml
+++ b/app/src/main/res/drawable/img_new_device_verification.xml
@@ -3,47 +3,59 @@
android:height="97dp"
android:viewportWidth="97"
android:viewportHeight="97">
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/img_secure_devices.xml b/app/src/main/res/drawable/img_secure_devices.xml
index 5159d99bd9..c8e763f2b5 100644
--- a/app/src/main/res/drawable/img_secure_devices.xml
+++ b/app/src/main/res/drawable/img_secure_devices.xml
@@ -3,75 +3,93 @@
android:height="200dp"
android:viewportWidth="200"
android:viewportHeight="200">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/img_send.xml b/app/src/main/res/drawable/img_send.xml
index 8dec7b8a51..0af9ba48b8 100644
--- a/app/src/main/res/drawable/img_send.xml
+++ b/app/src/main/res/drawable/img_send.xml
@@ -3,50 +3,63 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/img_setup_complete.xml b/app/src/main/res/drawable/img_setup_complete.xml
index 659dd784e6..e489f28809 100644
--- a/app/src/main/res/drawable/img_setup_complete.xml
+++ b/app/src/main/res/drawable/img_setup_complete.xml
@@ -3,59 +3,74 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/img_vault_items.xml b/app/src/main/res/drawable/img_vault_items.xml
index 6614e9e2fc..fea25d6155 100644
--- a/app/src/main/res/drawable/img_vault_items.xml
+++ b/app/src/main/res/drawable/img_vault_items.xml
@@ -3,78 +3,100 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/lock.xml b/app/src/main/res/drawable/lock.xml
index 4f050beb63..276f8e2e81 100644
--- a/app/src/main/res/drawable/lock.xml
+++ b/app/src/main/res/drawable/lock.xml
@@ -3,38 +3,48 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/open_email.xml b/app/src/main/res/drawable/open_email.xml
index 2f9cee1a4e..38d2f4c260 100644
--- a/app/src/main/res/drawable/open_email.xml
+++ b/app/src/main/res/drawable/open_email.xml
@@ -3,46 +3,58 @@
android:height="193dp"
android:viewportWidth="192"
android:viewportHeight="193">
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/pending_requests.xml b/app/src/main/res/drawable/pending_requests.xml
index cadc96df6a..550b16a7d8 100644
--- a/app/src/main/res/drawable/pending_requests.xml
+++ b/app/src/main/res/drawable/pending_requests.xml
@@ -3,74 +3,94 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/vault.xml b/app/src/main/res/drawable/vault.xml
index 93f3584280..c697b3579f 100644
--- a/app/src/main/res/drawable/vault.xml
+++ b/app/src/main/res/drawable/vault.xml
@@ -3,72 +3,91 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/welcome_2.xml b/app/src/main/res/drawable/welcome_2.xml
index 93aa6f022f..7237536f9d 100644
--- a/app/src/main/res/drawable/welcome_2.xml
+++ b/app/src/main/res/drawable/welcome_2.xml
@@ -3,26 +3,32 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/welcome_3.xml b/app/src/main/res/drawable/welcome_3.xml
index 315e64a4f5..4a301e69a9 100644
--- a/app/src/main/res/drawable/welcome_3.xml
+++ b/app/src/main/res/drawable/welcome_3.xml
@@ -3,38 +3,47 @@
android:height="189dp"
android:viewportWidth="188"
android:viewportHeight="189">
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/welcome_4.xml b/app/src/main/res/drawable/welcome_4.xml
index 4b39372877..2518a13855 100644
--- a/app/src/main/res/drawable/welcome_4.xml
+++ b/app/src/main/res/drawable/welcome_4.xml
@@ -3,71 +3,90 @@
android:height="201dp"
android:viewportWidth="200"
android:viewportHeight="201">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ui/src/main/java/com/bitwarden/ui/platform/theme/color/BitwardenColorScheme.kt b/ui/src/main/java/com/bitwarden/ui/platform/theme/color/BitwardenColorScheme.kt
index 4509074c91..4a80535cfd 100644
--- a/ui/src/main/java/com/bitwarden/ui/platform/theme/color/BitwardenColorScheme.kt
+++ b/ui/src/main/java/com/bitwarden/ui/platform/theme/color/BitwardenColorScheme.kt
@@ -65,6 +65,7 @@ data class BitwardenColorScheme(
val reversed: Color,
val badgeBackground: Color,
val badgeForeground: Color,
+ val navActiveAccent: Color,
)
/**
@@ -133,5 +134,9 @@ data class BitwardenColorScheme(
data class IllustrationColors(
val outline: Color,
val backgroundPrimary: Color,
+ val backgroundSecondary: Color,
+ val backgroundTertiary: Color,
+ val accent: Color,
+ val logo: Color,
)
}