From 4c62b2dfb26ed5dfba1f32eb2299f5b6c6b1c573 Mon Sep 17 00:00:00 2001 From: QIU Date: Wed, 5 Aug 2026 10:07:45 +0000 Subject: [PATCH] Revert "feat(nav): 4.5.6 AMSAT to bottom bar, Radar to More menu, tablet rail" This reverts commit d8e1ee3266eb3fd603d86ead5510a40b2c8f39bd. --- .../main/java/com/rtbishop/look4sat/MainScreen.kt | 14 ++++---------- .../look4sat/core/presentation/Navigation.kt | 6 +++--- .../src/main/res/drawable/ic_satellite_alt.xml | 11 ----------- .../src/main/res/values-id/strings.xml | 8 +++++--- .../src/main/res/values-in/strings.xml | 8 +++++--- .../src/main/res/values-tr/strings.xml | 8 +++++--- .../src/main/res/values-zh/strings.xml | 8 +++++--- core/presentation/src/main/res/values/strings.xml | 8 +++++--- gradle/libs.versions.toml | 4 ++-- 9 files changed, 34 insertions(+), 41 deletions(-) delete mode 100644 core/presentation/src/main/res/drawable/ic_satellite_alt.xml diff --git a/app/src/main/java/com/rtbishop/look4sat/MainScreen.kt b/app/src/main/java/com/rtbishop/look4sat/MainScreen.kt index 7fbfcc64..c9af6d1a 100644 --- a/app/src/main/java/com/rtbishop/look4sat/MainScreen.kt +++ b/app/src/main/java/com/rtbishop/look4sat/MainScreen.kt @@ -149,14 +149,10 @@ fun MainScreen(navigateToRadar: () -> Unit = {}) { val trackingState by container.radioTrackingService.state.collectAsStateWithLifecycle() val otherSettings by container.settingsRepo.otherSettings.collectAsStateWithLifecycle() // UI settings: sort by screenOrder (empty = default order), then filter by hiddenScreens (Settings always kept) - - val screenOrder = if (otherSettings.screenOrder.isEmpty()) emptyList() - else otherSettings.screenOrder.filter { it != "Radar" } - .let { list -> if ("AMSAT" in list) list else list + "AMSAT" } val allNavItems = listOf(Screen.Satellites, Screen.Passes, Screen.Radar, Screen.Mutual, Screen.Roaming, Screen.CwDecode, Screen.WavelogLog, Screen.AmSat, Screen.Map, Screen.Settings) .sortedBy { screen -> // Unknown pages (e.g. CwDecode not in old persisted order): use default-order position (Roaming<->Map), then fall back to last - val idx = screenOrder.indexOf(screen.screenId) + val idx = otherSettings.screenOrder.indexOf(screen.screenId) if (idx != -1) idx else com.rtbishop.look4sat.core.presentation.defaultScreenOrder.indexOf(screen.screenId).let { if (it != -1) it else Int.MAX_VALUE @@ -164,12 +160,10 @@ fun MainScreen(navigateToRadar: () -> Unit = {}) { } .filter { it.screenId !in otherSettings.hiddenScreens || it is Screen.Settings } // 4.5.1 foldable menu: main menu (5 bottom-bar slots) + More menu (overflow page) - // 4.5.6 migration: Radar moved to the More menu, AMSAT promoted to the main menu // Legacy migration: persisted subMenuOrder lacks new pages (WavelogLog) -> append to the sub-menu tail val subOrder = (otherSettings.subMenuOrder.ifEmpty { com.rtbishop.look4sat.core.presentation.defaultSubMenuOrder }) - .filter { it != "AMSAT" } .let { list -> if ("WavelogLog" in list) list else list + "WavelogLog" } - .let { list -> if ("Radar" in list) list else list + "Radar" } + .let { list -> if ("AMSAT" in list) list else list + "AMSAT" } val mainNavItems = remember(allNavItems, subOrder) { allNavItems.filter { it.screenId !in subOrder }.take(5) } @@ -237,8 +231,8 @@ fun MainScreen(navigateToRadar: () -> Unit = {}) { navigationRailContainerColor = MaterialTheme.colorScheme.surfaceContainer ), layoutType = when { - hasEnoughWidth() -> NavigationSuiteType.NavigationRail - !hasEnoughHeight() -> NavigationSuiteType.ShortNavigationBarCompact + !hasEnoughHeight() && hasEnoughWidth() -> NavigationSuiteType.NavigationRail + !hasEnoughWidth() -> NavigationSuiteType.ShortNavigationBarCompact else -> NavigationSuiteType.ShortNavigationBarMedium } ) { diff --git a/core/presentation/src/main/java/com/rtbishop/look4sat/core/presentation/Navigation.kt b/core/presentation/src/main/java/com/rtbishop/look4sat/core/presentation/Navigation.kt index 2bcd4150..a722be18 100644 --- a/core/presentation/src/main/java/com/rtbishop/look4sat/core/presentation/Navigation.kt +++ b/core/presentation/src/main/java/com/rtbishop/look4sat/core/presentation/Navigation.kt @@ -48,17 +48,17 @@ sealed class Screen(val iconResId: Int, val titleResId: Int, val screenId: Strin data object WavelogLog : Screen(R.drawable.ic_log, R.string.nav_log, "WavelogLog") @Serializable - data object AmSat : Screen(R.drawable.ic_satellite_alt, R.string.nav_amsat, "AMSAT") + data object AmSat : Screen(R.drawable.ic_satellites, R.string.nav_amsat, "AMSAT") @Serializable data object Settings : Screen(R.drawable.ic_settings, R.string.nav_prefs, "Settings") } // UI settings: default main-menu page order (5 bottom-bar slots) -val defaultScreenOrder = listOf("Satellites", "Passes", "AMSAT", "Map", "Settings") +val defaultScreenOrder = listOf("Satellites", "Passes", "Radar", "Map", "Settings") // UI settings: default More-menu order (pages behind "More") -val defaultSubMenuOrder = listOf("Mutual", "Radar", "Roaming", "CwDecode", "WavelogLog") +val defaultSubMenuOrder = listOf("Mutual", "Roaming", "CwDecode", "WavelogLog", "AMSAT") @Serializable data object RadarDestination : NavKey diff --git a/core/presentation/src/main/res/drawable/ic_satellite_alt.xml b/core/presentation/src/main/res/drawable/ic_satellite_alt.xml deleted file mode 100644 index 524b11e1..00000000 --- a/core/presentation/src/main/res/drawable/ic_satellite_alt.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/core/presentation/src/main/res/values-id/strings.xml b/core/presentation/src/main/res/values-id/strings.xml index 01ebc38a..e7a1ef22 100644 --- a/core/presentation/src/main/res/values-id/strings.xml +++ b/core/presentation/src/main/res/values-id/strings.xml @@ -93,9 +93,11 @@ \n\nPerbarui database setidaknya seminggu sekali untuk prediksi yang akurat. Apa yang baru di Look4Sat - * Navigasi: AMSAT dipindahkan ke bilah bawah, Radar dipindahkan ke menu Lainnya (maks 5 tujuan utama) - * Layar lebar / tablet: rel navigasi samping, bukan bilah bawah (strip kosong bawah dihilangkan) - * Ikon tab AMSAT baru (MDI satellite-variant, Apache 2.0) + * BARU: Status satelit AMSAT kini menggunakan API resmi AMSAT (v1 JSON, lebih cepat dan andal) + * Halaman status AMSAT kini mendukung layar penuh (tombol refresh dan waktu selalu dapat diakses) + * WaveLog: pencarian grid lawan QRZ (dialog ⚙ tempel Cookie + uji query) + * WaveLog: tombol perbarui daftar satelit LoTW (112 satelit bawaan) + * WaveLog: laporan sinyal RST 59/59 untuk QSO (v1 dan v2) Kembali Beri tahu diff --git a/core/presentation/src/main/res/values-in/strings.xml b/core/presentation/src/main/res/values-in/strings.xml index 97d31c92..f5dc4c16 100644 --- a/core/presentation/src/main/res/values-in/strings.xml +++ b/core/presentation/src/main/res/values-in/strings.xml @@ -92,9 +92,11 @@ \n\nPerbarui database setidaknya seminggu sekali untuk prediksi yang akurat. Apa yang baru di Look4Sat - * Navigasi: AMSAT dipindahkan ke bilah bawah, Radar dipindahkan ke menu Lainnya (maks 5 tujuan utama) - * Layar lebar / tablet: rel navigasi samping, bukan bilah bawah (strip kosong bawah dihilangkan) - * Ikon tab AMSAT baru (MDI satellite-variant, Apache 2.0) + * BARU: Status satelit AMSAT kini menggunakan API resmi AMSAT (v1 JSON, lebih cepat dan andal) + * Halaman status AMSAT kini mendukung layar penuh (tombol refresh dan waktu selalu dapat diakses) + * WaveLog: pencarian grid lawan QRZ (dialog ⚙ tempel Cookie + uji query) + * WaveLog: tombol perbarui daftar satelit LoTW (112 satelit bawaan) + * WaveLog: laporan sinyal RST 59/59 untuk QSO (v1 dan v2) Kembali Beri tahu diff --git a/core/presentation/src/main/res/values-tr/strings.xml b/core/presentation/src/main/res/values-tr/strings.xml index 869c7cd5..1140df02 100644 --- a/core/presentation/src/main/res/values-tr/strings.xml +++ b/core/presentation/src/main/res/values-tr/strings.xml @@ -97,9 +97,11 @@ \n\nDoğru tahminler alabilmek için veritabanını en az haftada bir güncelleyin. What\'s new in Look4Sat - * Gezinme: AMSAT alt çubuğa taşındı, Radar Daha Fazla menüsüne taşındı (en fazla 5 ana hedef) - * Geniş ekran / tablet: alt çubuk yerine yan gezinme rayı (alttaki boş şerit kaldırıldı) - * Yeni AMSAT sekme simgesi (MDI satellite-variant, Apache 2.0) + * YENİ: AMSAT uydu durumu resmi AMSAT API kullanıyor (v1 JSON, daha hızlı ve güvenilir) + * AMSAT durum sayfası tam ekran cihazlara uyumlu (yenileme düğmesi ve saat her zaman erişilebilir) + * WaveLog: QRZ karşı grid sorgulama (⚙ diyalogda Cookie yapıştır + test sorgusu) + * WaveLog: LoTW uydu listesi güncelleme düğmesi (112 uydu yerleşik) + * WaveLog: RST 59/59 sinyal raporu (v1 ve v2) diff --git a/core/presentation/src/main/res/values-zh/strings.xml b/core/presentation/src/main/res/values-zh/strings.xml index 12e2b44d..82d4b412 100644 --- a/core/presentation/src/main/res/values-zh/strings.xml +++ b/core/presentation/src/main/res/values-zh/strings.xml @@ -87,9 +87,11 @@ 请务必在设置中通过GPS、经纬度或QTH定位您的位置\n建议至少每周更新一次数据库,以确保预测结果的准确性 Look4Sat Pro 更新内容 - * 导航: AMSAT 移到底部栏,雷达移到更多菜单(主目的地最多 5 个) - * 宽屏/平板: 改为侧边导航栏(不再有底部空白条) - * AMSAT 标签新图标(MDI satellite-variant,Apache 2.0) + * 新: AMSAT 卫星状态改用官方 AMSAT API(v1 JSON,更快更稳) + * AMSAT 状态页适配全面屏(刷新按钮和更新时间始终可点) + * WaveLog: QRZ 对方网格查询(⚙ 弹窗粘贴 Cookie + 测试查询) + * WaveLog: LoTW 卫星列表更新按钮(内置 112 颗卫星) + * WaveLog: 信号报告 59/59(v1 和 v2) diff --git a/core/presentation/src/main/res/values/strings.xml b/core/presentation/src/main/res/values/strings.xml index ee41e1bf..75fdb622 100644 --- a/core/presentation/src/main/res/values/strings.xml +++ b/core/presentation/src/main/res/values/strings.xml @@ -99,9 +99,11 @@ \n\nPlease update the database at least weekly to get accurate predictions. What\'s new in Look4Sat - * Navigation: AMSAT moved to the bottom bar, Radar moved to the More menu (5 primary destinations max) - * Wide screens / tablets: side navigation rail instead of the bottom bar (no more wasted bottom strip) - * New AMSAT tab icon (MDI satellite-variant, Apache 2.0) + * NEW: AMSAT satellite status now uses the official AMSAT API (v1 JSON, faster and more reliable) + * AMSAT status page fits edge-to-edge screens (refresh button and update time always reachable) + * WaveLog: QRZ counterpart grid lookup (gear dialog > paste QRZ cookies > test query) + * WaveLog: LoTW satellite list refresh button (112 satellites built in) + * WaveLog: RST 59/59 signal reports for QSOs (v1 and v2) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index cc256dba..32890d54 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,8 +1,8 @@ [versions] #noinspection UnusedVersionCatalogEntry -appVersionCode = "457" +appVersionCode = "456" #noinspection UnusedVersionCatalogEntry -appVersionName = "4.5.6" +appVersionName = "4.5.5" #noinspection UnusedVersionCatalogEntry compileSdk = "37" #noinspection UnusedVersionCatalogEntry