From 31fe18e4b5aafcb0e5e0d7971eb20e59c56bfade Mon Sep 17 00:00:00 2001 From: Arty Bishop Date: Mon, 1 Mar 2021 20:57:07 +0000 Subject: [PATCH] Using default TLE sources if empty sources list passed for update --- app/build.gradle | 4 ++-- .../com/rtbishop/look4sat/ui/SharedViewModel.kt | 15 ++++++++------- .../com/rtbishop/look4sat/utility/PrefsManager.kt | 12 ++++++++++-- 3 files changed, 20 insertions(+), 11 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 9289f627..c5cf0ab4 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -13,8 +13,8 @@ android { applicationId "com.rtbishop.look4sat" minSdkVersion 21 targetSdkVersion 30 - versionCode 210 - versionName "2.1.0" + versionCode 211 + versionName "2.1.1" } buildTypes { diff --git a/app/src/main/java/com/rtbishop/look4sat/ui/SharedViewModel.kt b/app/src/main/java/com/rtbishop/look4sat/ui/SharedViewModel.kt index 18c18da5..356e85b4 100644 --- a/app/src/main/java/com/rtbishop/look4sat/ui/SharedViewModel.kt +++ b/app/src/main/java/com/rtbishop/look4sat/ui/SharedViewModel.kt @@ -103,11 +103,16 @@ class SharedViewModel @Inject constructor( } fun updateEntriesFromSources(sources: List) { + val sourcesList = if (sources.isEmpty()) { + prefsManager.getDefaultSources() + } else { + sources + } postAppEvent(Event(0)) viewModelScope.launch { try { - sourcesRepo.updateSources(sources) - entriesRepo.updateEntriesFromWeb(sources) + sourcesRepo.updateSources(sourcesList) + entriesRepo.updateEntriesFromWeb(sourcesList) transmittersRepo.updateTransmitters() } catch (exception: Exception) { postAppEvent(Event(1)) @@ -150,10 +155,6 @@ class SharedViewModel @Inject constructor( } private fun updateDefaultSourcesAndEntries() { - val defaultTleSources = listOf( - TleSource("https://celestrak.com/NORAD/elements/active.txt"), - TleSource("https://amsat.org/tle/current/nasabare.txt") - ) - updateEntriesFromSources(defaultTleSources) + updateEntriesFromSources(prefsManager.getDefaultSources()) } } diff --git a/app/src/main/java/com/rtbishop/look4sat/utility/PrefsManager.kt b/app/src/main/java/com/rtbishop/look4sat/utility/PrefsManager.kt index 937a7058..690a471d 100644 --- a/app/src/main/java/com/rtbishop/look4sat/utility/PrefsManager.kt +++ b/app/src/main/java/com/rtbishop/look4sat/utility/PrefsManager.kt @@ -23,6 +23,7 @@ import android.content.SharedPreferences import android.hardware.GeomagneticField import androidx.core.content.edit import com.github.amsacode.predict4java.GroundStationPosition +import com.rtbishop.look4sat.data.TleSource import javax.inject.Inject class PrefsManager @Inject constructor(val preferences: SharedPreferences) { @@ -84,12 +85,19 @@ class PrefsManager @Inject constructor(val preferences: SharedPreferences) { fun shouldUseCompass(): Boolean { return preferences.getBoolean(keyCompass, true) } - + fun isFirstLaunch(): Boolean { return preferences.getBoolean(keyIsFirstLaunch, true) } - + fun setFirstLaunchDone() { preferences.edit { putBoolean(keyIsFirstLaunch, false) } } + + fun getDefaultSources(): List { + return listOf( + TleSource("https://celestrak.com/NORAD/elements/active.txt"), + TleSource("https://amsat.org/tle/current/nasabare.txt") + ) + } }