summaryrefslogtreecommitdiff
path: root/android-app/app/src/main/kotlin/org
diff options
context:
space:
mode:
authorClaude <noreply@anthropic.com>2026-05-20 09:33:31 +0000
committerClaude <noreply@anthropic.com>2026-05-20 09:33:31 +0000
commit925790fee2d3c092cb7ca20797c7b57eeff40fea (patch)
tree4b5e123ca7316530f4e1ea6d0ba06b4639a090be /android-app/app/src/main/kotlin/org
parent808939ca722bb760517a5ffaddedb9bb06091125 (diff)
Move Saved Tracks to Log tab; restore conditions sheet on back
- hideOverlays() now resets bottomSheetBehavior to COLLAPSED/not-hideable, so the conditions sheet reappears correctly when returning from any overlay (previously it stayed hidden after navigating away via the track browser) - Remove btn_saved_tracks from the conditions sheet (layout + click handler) - Add btn_saved_tracks to the Log screen layout and wire it in VoiceLogFragment via MainActivity.showSavedTracks(); tracks live with the log, not with weather https://claude.ai/code/session_01YUbuZNDAoLea4cf9UGQ9qn
Diffstat (limited to 'android-app/app/src/main/kotlin/org')
-rw-r--r--android-app/app/src/main/kotlin/org/terst/nav/MainActivity.kt16
-rw-r--r--android-app/app/src/main/kotlin/org/terst/nav/ui/voicelog/VoiceLogFragment.kt6
2 files changed, 12 insertions, 10 deletions
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 a4453be..7ce417d 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
@@ -303,14 +303,6 @@ class MainActivity : AppCompatActivity(), SafetyFragment.SafetyListener {
}
}
- // "Saved Tracks" button in the instrument sheet
- findViewById<View>(R.id.btn_saved_tracks).setOnClickListener {
- showOverlay(SavedTracksFragment())
- bottomSheetBehavior.isHideable = true
- bottomSheetBehavior.state = BottomSheetBehavior.STATE_HIDDEN
- // Note: do NOT set selectedItemId here — it triggers the nav listener
- // which calls hideOverlays(), immediately undoing showOverlay().
- }
}
/** Updates all static unit label TextViews to match current [unitPrefs]. */
@@ -435,13 +427,17 @@ class MainActivity : AppCompatActivity(), SafetyFragment.SafetyListener {
.commit()
}
+ fun showSavedTracks() {
+ showOverlay(SavedTracksFragment())
+ }
+
internal fun hideOverlays() {
fragmentContainer.visibility = View.GONE
fabRecordTrack.visibility = View.VISIBLE
fabLayers.visibility = View.VISIBLE
- // fabRecenter visibility is managed by the isFollowing observer; just restore alpha
fabRecenter.alpha = 1f
- // Re-apply cached conditions in case they arrived while the overlay was covering the sheet
+ bottomSheetBehavior.isHideable = false
+ bottomSheetBehavior.state = BottomSheetBehavior.STATE_COLLAPSED
lastConditions?.let { applyConditions(it) }
}
diff --git a/android-app/app/src/main/kotlin/org/terst/nav/ui/voicelog/VoiceLogFragment.kt b/android-app/app/src/main/kotlin/org/terst/nav/ui/voicelog/VoiceLogFragment.kt
index ab30d96..105057c 100644
--- a/android-app/app/src/main/kotlin/org/terst/nav/ui/voicelog/VoiceLogFragment.kt
+++ b/android-app/app/src/main/kotlin/org/terst/nav/ui/voicelog/VoiceLogFragment.kt
@@ -23,9 +23,11 @@ import com.google.android.material.button.MaterialButton
import com.google.android.material.floatingactionbutton.FloatingActionButton
import com.google.android.material.textfield.TextInputEditText
import kotlinx.coroutines.launch
+import org.terst.nav.MainActivity
import org.terst.nav.R
import org.terst.nav.logbook.VoiceLogState
import org.terst.nav.logbook.VoiceLogViewModel
+import org.terst.nav.track.SavedTracksFragment
import java.io.File
import java.io.FileOutputStream
import java.util.Locale
@@ -124,6 +126,10 @@ class VoiceLogFragment : Fragment() {
.commit()
}
+ view.findViewById<MaterialButton>(R.id.btn_saved_tracks).setOnClickListener {
+ (requireActivity() as MainActivity).showSavedTracks()
+ }
+
viewLifecycleOwner.lifecycleScope.launch {
viewModel.state.collect { state -> renderState(state) }
}