From d98b441f2f9ca8b11a04406240dd19ecc0cac7ab Mon Sep 17 00:00:00 2001 From: Peter Stone Date: Mon, 6 Apr 2026 18:03:39 +0000 Subject: feat(nav): replace Map+Instruments with Map+Layers in bottom nav MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Layers acts as an action button — shows LayerPickerSheet and snaps back to Map so it never stays selected. Instruments tab removed; sheet expand/collapse via swipe as before. Co-Authored-By: Claude Sonnet 4.6 --- .../app/src/main/kotlin/org/terst/nav/MainActivity.kt | 15 +++++++++++---- android-app/app/src/main/res/drawable/ic_layers.xml | 9 +++++++++ android-app/app/src/main/res/menu/bottom_nav_menu.xml | 6 +++--- 3 files changed, 23 insertions(+), 7 deletions(-) create mode 100644 android-app/app/src/main/res/drawable/ic_layers.xml (limited to 'android-app') diff --git a/android-app/app/src/main/kotlin/org/terst/nav/MainActivity.kt b/android-app/app/src/main/kotlin/org/terst/nav/MainActivity.kt index de1f4dd..0309364 100644 --- a/android-app/app/src/main/kotlin/org/terst/nav/MainActivity.kt +++ b/android-app/app/src/main/kotlin/org/terst/nav/MainActivity.kt @@ -130,10 +130,17 @@ class MainActivity : AppCompatActivity(), SafetyFragment.SafetyListener { bottomSheetBehavior.state = BottomSheetBehavior.STATE_COLLAPSED true } - R.id.nav_instruments -> { - hideOverlays() - bottomSheetBehavior.isHideable = false - bottomSheetBehavior.state = BottomSheetBehavior.STATE_EXPANDED + R.id.nav_layers -> { + // Action button — show picker then snap back to Map + val currentStyle = loadedStyleFlow.value + if (currentStyle != null) { + LayerPickerSheet( + manager = layerManager, + onBaseChanged = { preset -> layerManager.setBasePreset(currentStyle, preset) }, + onWindChanged = { enabled -> layerManager.setWindEnabled(currentStyle, enabled) } + ).show(supportFragmentManager, "layer_picker") + } + bottomNav.post { bottomNav.selectedItemId = R.id.nav_map } true } R.id.nav_log -> { diff --git a/android-app/app/src/main/res/drawable/ic_layers.xml b/android-app/app/src/main/res/drawable/ic_layers.xml new file mode 100644 index 0000000..f86f83a --- /dev/null +++ b/android-app/app/src/main/res/drawable/ic_layers.xml @@ -0,0 +1,9 @@ + + + diff --git a/android-app/app/src/main/res/menu/bottom_nav_menu.xml b/android-app/app/src/main/res/menu/bottom_nav_menu.xml index b29fb08..e7fc15d 100644 --- a/android-app/app/src/main/res/menu/bottom_nav_menu.xml +++ b/android-app/app/src/main/res/menu/bottom_nav_menu.xml @@ -5,9 +5,9 @@ android:icon="@drawable/ic_map" android:title="Map" /> + android:id="@+id/nav_layers" + android:icon="@drawable/ic_layers" + android:title="Layers" />