summaryrefslogtreecommitdiff
path: root/android-app/app/src/main/kotlin/org/terst/nav/ui
diff options
context:
space:
mode:
authorPeter Stone <thepeterstone@gmail.com>2026-03-25 18:23:54 +0000
committerPeter Stone <thepeterstone@gmail.com>2026-03-25 18:23:54 +0000
commite68212991935d33a4baca77d88cd20a82fbcf6a6 (patch)
treebcb7e08ccd8b777a09f9699fe2f19d00b010d070 /android-app/app/src/main/kotlin/org/terst/nav/ui
parentea5cdac728263fdc48b480460f3362a7f5fe221d (diff)
refactor: address simplify review findingsmain
TrackRepository.addPoint() now returns Boolean (true if point was added). MainViewModel.addGpsPoint() only updates _trackPoints StateFlow when a point is actually appended — eliminates ~3,600 no-op flow emissions per hour when not recording. MainActivity: loadedStyle promoted from nullable field to MutableStateFlow<Style?>; trackPoints observer uses filterNotNull + combine so no track points are silently dropped if the style loads after the first GPS fix. Smoke tests: replaced 11× ActivityScenario.launch().use{} with a single @get:Rule ActivityScenarioRule — same isolation, less boilerplate. CI: removed redundant app-debug artifact upload (app-debug.apk is already included inside the test-apks artifact). Removed stale/placeholder comments from MainActivity. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'android-app/app/src/main/kotlin/org/terst/nav/ui')
-rw-r--r--android-app/app/src/main/kotlin/org/terst/nav/ui/MainViewModel.kt5
1 files changed, 3 insertions, 2 deletions
diff --git a/android-app/app/src/main/kotlin/org/terst/nav/ui/MainViewModel.kt b/android-app/app/src/main/kotlin/org/terst/nav/ui/MainViewModel.kt
index 33decbe..0efff52 100644
--- a/android-app/app/src/main/kotlin/org/terst/nav/ui/MainViewModel.kt
+++ b/android-app/app/src/main/kotlin/org/terst/nav/ui/MainViewModel.kt
@@ -71,8 +71,9 @@ class MainViewModel(
windSpeedKnots = 0.0, windAngleDeg = 0.0, isTrueWind = false,
timestampMs = System.currentTimeMillis()
)
- trackRepository.addPoint(point)
- _trackPoints.value = trackRepository.getPoints()
+ if (trackRepository.addPoint(point)) {
+ _trackPoints.value = trackRepository.getPoints()
+ }
}
private val aisHubApi: AisHubApiService by lazy {