diff --git a/apps/flipcash/core-ui/src/main/kotlin/com/flipcash/app/core/ui/NavigationBar.kt b/apps/flipcash/core-ui/src/main/kotlin/com/flipcash/app/core/ui/NavigationBar.kt
index ee86667fa..828968f23 100644
--- a/apps/flipcash/core-ui/src/main/kotlin/com/flipcash/app/core/ui/NavigationBar.kt
+++ b/apps/flipcash/core-ui/src/main/kotlin/com/flipcash/app/core/ui/NavigationBar.kt
@@ -205,7 +205,7 @@ fun NavigationBar(
modifier = Modifier
.size(iconSize)
.graphicsLayer { alpha = iconAlpha },
- painter = painterResource(button.icon),
+ painter = painterResource(button.icon(selected)),
colorFilter = ColorFilter.tint(Color.White),
contentDescription = null,
)
@@ -240,14 +240,18 @@ internal val NavBarButton.testTag: String
NavBarButton.TipCard -> "nav_tipcard"
}
-@get:DrawableRes
-private val NavBarButton.icon: Int
- get() = when (this) {
- NavBarButton.Scanner -> R.drawable.ic_nav_scan
- NavBarButton.Wallet -> R.drawable.ic_nav_wallet
- NavBarButton.Chats -> R.drawable.ic_nav_chat
- NavBarButton.TipCard -> R.drawable.ic_nav_tipcard
- }
+/**
+ * The glyph for [this] tab at the weight its selection calls for. Every tab is drawn as an outline
+ * until it is selected, where it fills in; the dimming on top of that is the caller's alpha. The
+ * unsuffixed drawable is the outline, so `ic_nav_scan` stays the outline the tutorial card reuses.
+ */
+@DrawableRes
+private fun NavBarButton.icon(selected: Boolean): Int = when (this) {
+ NavBarButton.Scanner -> if (selected) R.drawable.ic_nav_scan_selected else R.drawable.ic_nav_scan
+ NavBarButton.Wallet -> if (selected) R.drawable.ic_nav_wallet_selected else R.drawable.ic_nav_wallet
+ NavBarButton.Chats -> if (selected) R.drawable.ic_nav_chat_selected else R.drawable.ic_nav_chat
+ NavBarButton.TipCard -> if (selected) R.drawable.ic_nav_tipcard_selected else R.drawable.ic_nav_tipcard
+}
@Preview
@PreviewWrapper(FlipcashThemeWrapper::class)
diff --git a/apps/flipcash/core/src/main/res/drawable/ic_nav_chat_selected.xml b/apps/flipcash/core/src/main/res/drawable/ic_nav_chat_selected.xml
new file mode 100644
index 000000000..0b077fb2b
--- /dev/null
+++ b/apps/flipcash/core/src/main/res/drawable/ic_nav_chat_selected.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
diff --git a/apps/flipcash/core/src/main/res/drawable/ic_nav_scan_selected.xml b/apps/flipcash/core/src/main/res/drawable/ic_nav_scan_selected.xml
new file mode 100644
index 000000000..030b1dde9
--- /dev/null
+++ b/apps/flipcash/core/src/main/res/drawable/ic_nav_scan_selected.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
diff --git a/apps/flipcash/core/src/main/res/drawable/ic_nav_tipcard_selected.xml b/apps/flipcash/core/src/main/res/drawable/ic_nav_tipcard_selected.xml
new file mode 100644
index 000000000..88079f3cd
--- /dev/null
+++ b/apps/flipcash/core/src/main/res/drawable/ic_nav_tipcard_selected.xml
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/apps/flipcash/core/src/main/res/drawable/ic_nav_wallet.xml b/apps/flipcash/core/src/main/res/drawable/ic_nav_wallet.xml
index 8e79a5746..9993bc951 100644
--- a/apps/flipcash/core/src/main/res/drawable/ic_nav_wallet.xml
+++ b/apps/flipcash/core/src/main/res/drawable/ic_nav_wallet.xml
@@ -1,13 +1,20 @@
-
+
+ android:pathData="M28.3333 12V6.33333H3.66667V25.6667H28.3333V20"
+ android:strokeColor="#FFFFFF"
+ android:strokeWidth="2"
+ android:strokeLineCap="round"
+ android:strokeLineJoin="round" />
+ android:pathData="M29.6667 13H19.6667V19H29.6667V13Z"
+ android:strokeColor="#FFFFFF"
+ android:strokeWidth="2"
+ android:strokeLineCap="round"
+ android:strokeLineJoin="round" />
diff --git a/apps/flipcash/core/src/main/res/drawable/ic_nav_wallet_selected.xml b/apps/flipcash/core/src/main/res/drawable/ic_nav_wallet_selected.xml
new file mode 100644
index 000000000..7f5ea179b
--- /dev/null
+++ b/apps/flipcash/core/src/main/res/drawable/ic_nav_wallet_selected.xml
@@ -0,0 +1,14 @@
+
+
+
+
+