From c370d9febdc0550727128e8b075e5c23debf65e2 Mon Sep 17 00:00:00 2001 From: Arty Bishop Date: Tue, 2 Dec 2025 19:10:19 +0000 Subject: [PATCH] Added more tweaks to components and dependencies --- app/build.gradle.kts | 1 + app/src/main/AndroidManifest.xml | 8 +- .../com/rtbishop/look4sat/MainApplication.kt | 24 --- .../look4sat/presentation/MainScreen.kt | 12 +- .../presentation/common/Components.kt | 10 + .../presentation/radar/RadarViewModel.kt | 18 +- app/src/main/res/value-es-rES/strings.xml | 176 ------------------ app/src/main/res/values-ru/strings.xml | 2 +- app/src/main/res/values-si/strings.xml | 2 +- app/src/main/res/values-sw600dp/themes.xml | 3 - app/src/main/res/values-uk/strings.xml | 2 +- app/src/main/res/values-zh-rCN/strings.xml | 2 +- app/src/main/res/values/themes.xml | 1 - gradle.properties | 13 +- gradle/libs.versions.toml | 12 +- gradle/wrapper/gradle-wrapper.properties | 4 +- 16 files changed, 50 insertions(+), 240 deletions(-) delete mode 100644 app/src/main/res/value-es-rES/strings.xml delete mode 100644 app/src/main/res/values-sw600dp/themes.xml diff --git a/app/build.gradle.kts b/app/build.gradle.kts index b6c72e76..2abfa0b2 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -35,6 +35,7 @@ android { } androidResources { generateLocaleConfig = true + localeFilters.addAll(listOf("en", "es-rES", "ru", "si", "uk", "zh-rCN")) } } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index baa973ef..b9fd2b76 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -7,7 +7,6 @@ - + android:theme="@style/Theme.Look4Sat.SplashScreen"> + + diff --git a/app/src/main/java/com/rtbishop/look4sat/MainApplication.kt b/app/src/main/java/com/rtbishop/look4sat/MainApplication.kt index bff62d58..317d0b91 100644 --- a/app/src/main/java/com/rtbishop/look4sat/MainApplication.kt +++ b/app/src/main/java/com/rtbishop/look4sat/MainApplication.kt @@ -17,11 +17,7 @@ */ package com.rtbishop.look4sat -import android.annotation.SuppressLint -import android.app.Activity import android.app.Application -import android.content.pm.ActivityInfo -import android.os.Bundle import java.text.SimpleDateFormat import java.util.Date import java.util.Locale @@ -32,7 +28,6 @@ class MainApplication : Application() { lateinit var container: MainContainer override fun onCreate() { - disableMobileLandscapeLayout() super.onCreate() container = MainContainer(this) // trigger automatic update every 48 hours @@ -51,23 +46,4 @@ class MainApplication : Application() { } } } - - @SuppressLint("SourceLockedOrientationActivity") - private fun disableMobileLandscapeLayout() { - val isTablet = applicationContext.resources?.getBoolean(R.bool.isTablet) ?: true - val lifecycleAdapter = object : ActivityLifecycleCallbacks { - override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) { - if (!isTablet) { - activity.requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT - } - } - override fun onActivityStarted(activity: Activity) {} - override fun onActivityResumed(activity: Activity) {} - override fun onActivityPaused(activity: Activity) {} - override fun onActivityStopped(activity: Activity) {} - override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {} - override fun onActivityDestroyed(activity: Activity) {} - } - registerActivityLifecycleCallbacks(lifecycleAdapter) - } } diff --git a/app/src/main/java/com/rtbishop/look4sat/presentation/MainScreen.kt b/app/src/main/java/com/rtbishop/look4sat/presentation/MainScreen.kt index a942099a..ff3a89f3 100644 --- a/app/src/main/java/com/rtbishop/look4sat/presentation/MainScreen.kt +++ b/app/src/main/java/com/rtbishop/look4sat/presentation/MainScreen.kt @@ -1,7 +1,9 @@ package com.rtbishop.look4sat.presentation import androidx.compose.material3.Icon +import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text +import androidx.compose.material3.adaptive.navigationsuite.NavigationSuiteDefaults import androidx.compose.material3.adaptive.navigationsuite.NavigationSuiteScaffold import androidx.compose.material3.adaptive.navigationsuite.NavigationSuiteType import androidx.compose.runtime.Composable @@ -12,7 +14,8 @@ import androidx.navigation.compose.NavHost import androidx.navigation.compose.currentBackStackEntryAsState import androidx.navigation.compose.rememberNavController import com.rtbishop.look4sat.R -import com.rtbishop.look4sat.presentation.common.isVerticalLayout +import com.rtbishop.look4sat.presentation.common.hasEnoughHeight +import com.rtbishop.look4sat.presentation.common.hasEnoughWidth import com.rtbishop.look4sat.presentation.map.mapDestination import com.rtbishop.look4sat.presentation.passes.passesDestination import com.rtbishop.look4sat.presentation.radar.radarDestination @@ -48,8 +51,11 @@ fun MainScreen(navController: NavHostController = rememberNavController()) { } }) } - }, layoutType = when { - isVerticalLayout() -> NavigationSuiteType.ShortNavigationBarCompact + }, navigationSuiteColors = NavigationSuiteDefaults.colors( + navigationRailContainerColor = MaterialTheme.colorScheme.surfaceContainer + ), layoutType = when { + !hasEnoughHeight() && hasEnoughWidth() -> NavigationSuiteType.NavigationRail + !hasEnoughWidth() -> NavigationSuiteType.ShortNavigationBarCompact else -> NavigationSuiteType.ShortNavigationBarMedium } ) { diff --git a/app/src/main/java/com/rtbishop/look4sat/presentation/common/Components.kt b/app/src/main/java/com/rtbishop/look4sat/presentation/common/Components.kt index 74d35a13..75729d6e 100644 --- a/app/src/main/java/com/rtbishop/look4sat/presentation/common/Components.kt +++ b/app/src/main/java/com/rtbishop/look4sat/presentation/common/Components.kt @@ -310,6 +310,16 @@ fun InfoDialog(title: String, text: String, onDismiss: () -> Unit) { } } +@Composable +fun hasEnoughHeight(): Boolean { + return currentWindowAdaptiveInfo().windowSizeClass.isHeightAtLeastBreakpoint(480) +} + +@Composable +fun hasEnoughWidth(): Boolean { + return currentWindowAdaptiveInfo().windowSizeClass.isWidthAtLeastBreakpoint(600) +} + @Composable fun isVerticalLayout(): Boolean { return currentWindowAdaptiveInfo().windowSizeClass.isWidthAtLeastBreakpoint(600).not() diff --git a/app/src/main/java/com/rtbishop/look4sat/presentation/radar/RadarViewModel.kt b/app/src/main/java/com/rtbishop/look4sat/presentation/radar/RadarViewModel.kt index 54dfe616..fb55258b 100644 --- a/app/src/main/java/com/rtbishop/look4sat/presentation/radar/RadarViewModel.kt +++ b/app/src/main/java/com/rtbishop/look4sat/presentation/radar/RadarViewModel.kt @@ -137,15 +137,15 @@ class RadarViewModel( ) } _uiState.update { it.copy(orbitalPos = orbitalPos, satTrack = track) } -// viewModelScope.launch { -// if (settingsRepo.getRotatorState()) { -// val server = settingsRepo.getRotatorAddress() -// val port = settingsRepo.getRotatorPort().toInt() -// val azimuth = orbitalPos.azimuth.toDegrees().round(2) -// val elevation = orbitalPos.elevation.toDegrees().round(2) -// networkReporter.reportRotation(server, port, azimuth, elevation) -// } -// } + viewModelScope.launch { + if (settingsRepo.rcSettings.value.rotatorState) { + val server = settingsRepo.rcSettings.value.rotatorAddress + val port = settingsRepo.rcSettings.value.rotatorPort.toInt() + val azimuth = orbitalPos.azimuth.toDegrees().round(2) + val elevation = orbitalPos.elevation.toDegrees().round(2) + networkReporter.reportRotation(server, port, azimuth, elevation) + } + } } private fun sendPassDataBT(orbitalPos: OrbitalPos) { diff --git a/app/src/main/res/value-es-rES/strings.xml b/app/src/main/res/value-es-rES/strings.xml deleted file mode 100644 index 8691ed4b..00000000 --- a/app/src/main/res/value-es-rES/strings.xml +++ /dev/null @@ -1,176 +0,0 @@ - - - Look4Sat - 00:00:00 - Versión: %s - Rastreador y predictor de satélites - - - - Añadir - Aceptar - Cancelar - Atrás - Modos - Seleccionar todo - OK - Vaciar - Vaciar todo - Recargar - Mapa - Filtro - Satélites - Ajustes - Anterior - Siguiente - Notificar - GPS - Manual - QTH - Online - Importar - GitHub - Soporte - F-Droid - - - - Filtrar pases - Horas por delante - Mostrar pases que ocurrirán en X horas - Elevación mínima - Mostar primero pases con elevación máxima - - Ajustes ubicación QTH - Ajustar posición de la estación con tu ubicación - QTH - - Tipo de modulación - - Ajustar ubicaicón de la estación - Latitud de tu estación terrestre - Latitud - Longitud de tu estación terrestre - Longitud - - Gestionar fuentes de datos - Fuente HTTPS - - Seleccionar tipo de satélite - Tipo: %s - - - - Buscar por Nombre / Id - - No hay pases de satélite próximos para mostrar - No hay datos para mostrar. Por favor, actualiza la base de datos a través del menú Ajustes. - - %s - Id:%d - AOS - %.1f° - ELEV: %.1f° - %.1f° - LOS - ALT: %.0f km - - - : - - - HH:mm:ss - MMM dd - dd MMM - HH:mm:ss - - Ácimut - %.1f° - Elevación - %.1f° - Altitud - %.0f km - Distancia - %.0f km - Visible - Eclipsado - %s - Id:%d - - Modo: %s - Invertido: %s - %s - - - . - - - %.4f - %.4f - %.4f - Transmisores satélite: - Este satélite no lleva transmisores - Si - No - Downlink - Uplink - - Mapa mundo - %s - Id:%d - Ácimut: %.1f° - Elevación: %.1f° - Latitud: %.1f° - Longitud: %.1f° - Ubicación QTH: %s - Visible - Eclipsado - Visibilidad: %s - Período: %.0f min - Fase: %.1f° - Altitud: %.0f km - Distancia: %.0f km - Velocidad: %.2f km/s - Wikimedia maps | Map data © OpenStreetMap contributors - - - - Ubicación estación - Latitud: %.4f° - Longitud: %.4f° - Sin datos de geolocalización - Revisa los permisos de ubicación - Ubicación no válida - Ubicación QTH no válida - Ubicación actualizada con éxito - - Actualizar datos de satélites - Actualización completada con errores - Última actualización: %s - Satélites: %s - Transmisores: %s - Actualización completada con éxito - Datos eliminados con éxito - - Preferencias Rotator - Habilitar control remoto - Dirección IP - Puerto - - Salida por Bluetooth - Habilitar salida - Id dispositivo - Formato de datos - Revisa los permisos de Bluetooth - - Otras preferencias - Mostrar tiempos de pase en UTC - Habilitar auto actualización de datos - Habilitar animaciones radar - Usar sensores para rotar vista de radar - - Me gustaría dar las gracias a: - • tí por descargar y usar Look4Sat! \nQue tengas cielos despejados! - \n • David A. B. Johnson - y Dave Moten por crear predict4java lib - bajo GNU GPLv2. - \n • Alexandru Csete por crear el rastreador de satélites Gpredict - que ha inspirado la creación de Look4Sat. - \n • Dr T.S. Kelso por mantener - Celestrak que proporciona acceso a datos TLE. - \n • Libre Space Foundation por la API y base de datos - SatNOGS que proporciona gran cantidad de datos de satélites. - \n • DownloadAstro - por su interés en la app y la entrevista publicada. - - Política de privacidad. - La app viene sin garantías de ningún tipo. \nPara más información revisa la licencia GNU GPLv3. - - diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 0167df7c..e63c59c8 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -7,9 +7,9 @@ Спутники Пролеты + Radar Карта Настройки - Инфо diff --git a/app/src/main/res/values-si/strings.xml b/app/src/main/res/values-si/strings.xml index d4d6b809..7e2764c1 100644 --- a/app/src/main/res/values-si/strings.xml +++ b/app/src/main/res/values-si/strings.xml @@ -7,9 +7,9 @@ චන්ද්‍රිකා පසුකර යෑම් + Radar ලෝක සිතියම පසුතල - ගැන diff --git a/app/src/main/res/values-sw600dp/themes.xml b/app/src/main/res/values-sw600dp/themes.xml deleted file mode 100644 index 3dd57b65..00000000 --- a/app/src/main/res/values-sw600dp/themes.xml +++ /dev/null @@ -1,3 +0,0 @@ - - true - diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index a59dc6bf..2e106bb1 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -7,9 +7,9 @@ Супутники Прольоти + Radar Мапа Налаштування - Інфо Додати diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 638ef8a0..de2fcc0d 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -7,9 +7,9 @@ 卫星 过境 + Radar 世界地图 设置 - 关于 diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 494a7038..fbeac9dd 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -1,5 +1,4 @@ - false #FFE082 #121212