diff --git a/app/src/main/kotlin/com/sanmer/geomag/GeomagExt.kt b/app/src/main/kotlin/com/sanmer/geomag/Compat.kt similarity index 97% rename from app/src/main/kotlin/com/sanmer/geomag/GeomagExt.kt rename to app/src/main/kotlin/com/sanmer/geomag/Compat.kt index 3ae3124..783d64e 100644 --- a/app/src/main/kotlin/com/sanmer/geomag/GeomagExt.kt +++ b/app/src/main/kotlin/com/sanmer/geomag/Compat.kt @@ -4,7 +4,7 @@ import android.location.Location import dev.sanmer.geomag.Geomag import kotlinx.datetime.LocalDateTime -object GeomagExt { +object Compat { fun toDecimalYears(date: LocalDateTime) = Geomag.toDecimalYears(date) fun single( diff --git a/app/src/main/kotlin/com/sanmer/geomag/database/entity/RecordEntity.kt b/app/src/main/kotlin/com/sanmer/geomag/database/entity/RecordEntity.kt index 7ed1990..e045c35 100644 --- a/app/src/main/kotlin/com/sanmer/geomag/database/entity/RecordEntity.kt +++ b/app/src/main/kotlin/com/sanmer/geomag/database/entity/RecordEntity.kt @@ -4,7 +4,7 @@ import android.location.Location import android.location.LocationManager import androidx.room.Embedded import androidx.room.Entity -import com.sanmer.geomag.GeomagExt +import com.sanmer.geomag.Compat import com.sanmer.geomag.model.origin.DateTime import com.sanmer.geomag.model.origin.Record @@ -22,7 +22,7 @@ data class RecordEntity( ) fun toRecord() = Record( - model = GeomagExt.Models.valueOf(key.model), + model = Compat.Models.valueOf(key.model), time = DateTime.parse(key.time), location = Location(LocationManager.GPS_PROVIDER).apply { latitude = key.latitude diff --git a/app/src/main/kotlin/com/sanmer/geomag/datastore/UserPreferencesCompat.kt b/app/src/main/kotlin/com/sanmer/geomag/datastore/UserPreferencesCompat.kt index 7d9bcb8..2308b63 100644 --- a/app/src/main/kotlin/com/sanmer/geomag/datastore/UserPreferencesCompat.kt +++ b/app/src/main/kotlin/com/sanmer/geomag/datastore/UserPreferencesCompat.kt @@ -2,20 +2,20 @@ package com.sanmer.geomag.datastore import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.runtime.Composable -import com.sanmer.geomag.GeomagExt +import com.sanmer.geomag.Compat import com.sanmer.geomag.compat.BuildCompat import com.sanmer.geomag.ui.theme.Colors data class UserPreferencesCompat( val darkMode: DarkMode, val themeColor: Int, - val fieldModel: GeomagExt.Models, + val fieldModel: Compat.Models, val enableRecords: Boolean ) { constructor(original: UserPreferences) : this( darkMode = original.darkMode, themeColor = original.themeColor, - fieldModel = GeomagExt.Models.valueOf(original.fieldModel), + fieldModel = Compat.Models.valueOf(original.fieldModel), enableRecords = original.enableRecords ) @@ -37,7 +37,7 @@ data class UserPreferencesCompat( fun default() = UserPreferencesCompat( darkMode = DarkMode.FOLLOW_SYSTEM, themeColor = if (BuildCompat.atLeastS) Colors.Dynamic.id else Colors.Pourville.id, - fieldModel = GeomagExt.Models.IGRF, + fieldModel = Compat.Models.IGRF, enableRecords = true ) diff --git a/app/src/main/kotlin/com/sanmer/geomag/model/origin/DateTime.kt b/app/src/main/kotlin/com/sanmer/geomag/model/origin/DateTime.kt index 8ac7965..96653d1 100644 --- a/app/src/main/kotlin/com/sanmer/geomag/model/origin/DateTime.kt +++ b/app/src/main/kotlin/com/sanmer/geomag/model/origin/DateTime.kt @@ -1,6 +1,6 @@ package com.sanmer.geomag.model.origin -import com.sanmer.geomag.GeomagExt +import com.sanmer.geomag.Compat import com.sanmer.geomag.utils.extensions.now import com.sanmer.geomag.utils.extensions.toTimeZone import kotlinx.datetime.LocalDateTime @@ -24,9 +24,9 @@ class DateTime private constructor( ) val local = LocalDateTime(year, monthNumber, dayOfMonth, hour, minute, second) - val decimalOfLocal get() = GeomagExt.toDecimalYears(local) + val decimalOfLocal get() = Compat.toDecimalYears(local) private val utc get() = local.toTimeZone(TimeZone.UTC) - val decimalOfUtc get() = GeomagExt.toDecimalYears(utc) + val decimalOfUtc get() = Compat.toDecimalYears(utc) override fun toString(): String { return local.toString() diff --git a/app/src/main/kotlin/com/sanmer/geomag/model/origin/Record.kt b/app/src/main/kotlin/com/sanmer/geomag/model/origin/Record.kt index 40d16e1..d4f6db7 100644 --- a/app/src/main/kotlin/com/sanmer/geomag/model/origin/Record.kt +++ b/app/src/main/kotlin/com/sanmer/geomag/model/origin/Record.kt @@ -2,18 +2,18 @@ package com.sanmer.geomag.model.origin import android.location.Location import android.location.LocationManager -import com.sanmer.geomag.GeomagExt +import com.sanmer.geomag.Compat import dev.sanmer.geomag.MagneticField data class Record( - val model: GeomagExt.Models, + val model: Compat.Models, val time: DateTime, val location: Location, val values: MagneticField ) { companion object { fun empty() = Record( - model = GeomagExt.Models.IGRF, + model = Compat.Models.IGRF, time = DateTime.now(), location = Location(LocationManager.GPS_PROVIDER), values = MagneticField( diff --git a/app/src/main/kotlin/com/sanmer/geomag/repository/UserPreferencesRepository.kt b/app/src/main/kotlin/com/sanmer/geomag/repository/UserPreferencesRepository.kt index 0eef158..1800d23 100644 --- a/app/src/main/kotlin/com/sanmer/geomag/repository/UserPreferencesRepository.kt +++ b/app/src/main/kotlin/com/sanmer/geomag/repository/UserPreferencesRepository.kt @@ -1,6 +1,6 @@ package com.sanmer.geomag.repository -import com.sanmer.geomag.GeomagExt +import com.sanmer.geomag.Compat import com.sanmer.geomag.datastore.DarkMode import com.sanmer.geomag.datastore.UserPreferencesDataSource import com.sanmer.geomag.di.ApplicationScope @@ -24,7 +24,7 @@ class UserPreferencesRepository @Inject constructor( userPreferencesDataSource.setThemeColor(value) } - fun setFieldModel(value: GeomagExt.Models) = applicationScope.launch { + fun setFieldModel(value: Compat.Models) = applicationScope.launch { userPreferencesDataSource.setFieldModel(value.name) } diff --git a/app/src/main/kotlin/com/sanmer/geomag/ui/screens/home/items/CalculationItem.kt b/app/src/main/kotlin/com/sanmer/geomag/ui/screens/home/items/CalculationItem.kt index 89b3061..f74f60a 100644 --- a/app/src/main/kotlin/com/sanmer/geomag/ui/screens/home/items/CalculationItem.kt +++ b/app/src/main/kotlin/com/sanmer/geomag/ui/screens/home/items/CalculationItem.kt @@ -27,7 +27,7 @@ import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import androidx.navigation.NavController import com.sanmer.geomag.BuildConfig -import com.sanmer.geomag.GeomagExt +import com.sanmer.geomag.Compat import com.sanmer.geomag.R import com.sanmer.geomag.ui.component.DropdownMenu import com.sanmer.geomag.ui.component.OverviewButton @@ -38,8 +38,8 @@ import com.sanmer.geomag.ui.utils.navigateSingleTopTo @Composable fun CalculationItem( navController: NavController, - fieldModel: GeomagExt.Models, - setFieldModel: (GeomagExt.Models) -> Unit, + fieldModel: Compat.Models, + setFieldModel: (Compat.Models) -> Unit, singleCalculate: () -> Unit ) = OverviewCard( expanded = true, @@ -73,8 +73,8 @@ fun CalculationItem( @Composable private fun ModelSelect( - selected: GeomagExt.Models, - onChange: (GeomagExt.Models) -> Unit, + selected: Compat.Models, + onChange: (Compat.Models) -> Unit, ) { var expanded by remember { mutableStateOf(false) } val animateZ by animateFloatAsState( @@ -109,7 +109,7 @@ private fun ModelSelect( ) } ) { - GeomagExt.Models.entries.forEach { + Compat.Models.entries.forEach { MenuItem( value = it.name, selected = selected.name, diff --git a/app/src/main/kotlin/com/sanmer/geomag/viewmodel/HomeViewModel.kt b/app/src/main/kotlin/com/sanmer/geomag/viewmodel/HomeViewModel.kt index 88f4f4b..5926527 100644 --- a/app/src/main/kotlin/com/sanmer/geomag/viewmodel/HomeViewModel.kt +++ b/app/src/main/kotlin/com/sanmer/geomag/viewmodel/HomeViewModel.kt @@ -9,7 +9,7 @@ import androidx.compose.runtime.setValue import androidx.lifecycle.ViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.viewModelScope -import com.sanmer.geomag.GeomagExt +import com.sanmer.geomag.Compat import com.sanmer.geomag.model.origin.DateTime import com.sanmer.geomag.model.origin.Record import com.sanmer.geomag.repository.LocalRepository @@ -78,7 +78,7 @@ class HomeViewModel @Inject constructor( model = model, time = dateTime, location = location, - values = GeomagExt.single(model, location, dateTime.decimalOfUtc) + values = Compat.single(model, location, dateTime.decimalOfUtc) ) if (enableRecords) { @@ -98,7 +98,7 @@ class HomeViewModel @Inject constructor( } } - fun setFieldModel(value: GeomagExt.Models) = + fun setFieldModel(value: Compat.Models) = userPreferencesRepository.setFieldModel(value) fun setEnableRecords(value: Boolean) =