summaryrefslogtreecommitdiff
path: root/android-app/app/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'android-app/app/src/main')
-rw-r--r--android-app/app/src/main/kotlin/org/terst/nav/logbook/LogbookRepository.kt7
-rw-r--r--android-app/app/src/main/kotlin/org/terst/nav/ui/MainViewModel.kt1
2 files changed, 8 insertions, 0 deletions
diff --git a/android-app/app/src/main/kotlin/org/terst/nav/logbook/LogbookRepository.kt b/android-app/app/src/main/kotlin/org/terst/nav/logbook/LogbookRepository.kt
index dd65e4a..fe7b40d 100644
--- a/android-app/app/src/main/kotlin/org/terst/nav/logbook/LogbookRepository.kt
+++ b/android-app/app/src/main/kotlin/org/terst/nav/logbook/LogbookRepository.kt
@@ -25,4 +25,11 @@ class LogbookRepository(private val storage: LogbookStorage) {
}
fun getAll(): List<LogEntry> = entries.toList()
+
+ /** Re-reads entries from storage. Call after SAF is (re-)authorised post-reinstall. */
+ fun reload() {
+ entries.clear()
+ entries.addAll(storage.loadAll())
+ nextId = (entries.maxOfOrNull { it.id } ?: 0L) + 1L
+ }
}
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 f664aa9..a750d39 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
@@ -124,6 +124,7 @@ class MainViewModel(
fun onSafDirectorySelected(treeUri: Uri) {
trackRepository.initSafDirectory(treeUri)
_safState.value = trackRepository.safState()
+ NavApplication.logbookRepository.reload()
viewModelScope.launch { reloadPastTracks() }
}