From cad085c25b85510b57f82ae3610b1af5632e0815 Mon Sep 17 00:00:00 2001 From: atsunatsu Date: Sat, 3 Oct 2026 03:02:11 +0800 Subject: [PATCH] =?UTF-8?q?feat(settings):=20=E6=95=B0=E6=8D=AE=E6=BA=90?= =?UTF-8?q?=E5=88=86=E7=BB=84=E8=A1=A5=E6=8F=90=E7=A4=BA=EF=BC=8C=E8=AF=B4?= =?UTF-8?q?=E6=98=8E=E8=AF=A5=E9=A1=BA=E5=BA=8F=E5=8F=AA=E5=BD=B1=E5=93=8D?= =?UTF-8?q?=E5=8D=AB=E6=98=9F=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 轨道元素改为按历元取最新后,列表顺序只决定显示名;UI 不说明的话用户会 误以为顺序仍决定用哪份轨道(本轮实测的困惑即来自此)。补两组提示项并在 分组标题下小字展示(排版与上游一致:onSurfaceVariant,top 2dp/bottom 8dp): - 卫星数据(中文):轨道数据优先取列表最新星历,此顺序仅影响卫星名称 - 收发器数据:仍为"列表靠前优先"(tx 记录按 uuid 去重取首个源),提示沿用 上游措辞;es/ru/si/tr/uk 五种语言同样沿用上游译文 --- core/presentation/src/main/res/values-es/strings.xml | 2 ++ core/presentation/src/main/res/values-ru/strings.xml | 2 ++ core/presentation/src/main/res/values-si/strings.xml | 2 ++ core/presentation/src/main/res/values-tr/strings.xml | 2 ++ core/presentation/src/main/res/values-uk/strings.xml | 2 ++ core/presentation/src/main/res/values-zh/strings.xml | 2 ++ core/presentation/src/main/res/values/strings.xml | 2 ++ .../look4sat/feature/settings/SettingsDialog.kt | 12 ++++++++++++ 8 files changed, 26 insertions(+) diff --git a/core/presentation/src/main/res/values-es/strings.xml b/core/presentation/src/main/res/values-es/strings.xml index 81501d38..46b1f131 100644 --- a/core/presentation/src/main/res/values-es/strings.xml +++ b/core/presentation/src/main/res/values-es/strings.xml @@ -112,6 +112,8 @@ Actualización completada con éxito Custom data sources + Prioridad arriba: nombres de satélites + Prioridad arriba: datos de transceptores No satellites imported. Select a valid TLE/3LE (.txt) or OMM (.csv) file. No transceivers imported. Select a valid SatNOGS (.json) file. URL diff --git a/core/presentation/src/main/res/values-ru/strings.xml b/core/presentation/src/main/res/values-ru/strings.xml index e3b5b867..0d332c66 100644 --- a/core/presentation/src/main/res/values-ru/strings.xml +++ b/core/presentation/src/main/res/values-ru/strings.xml @@ -111,6 +111,8 @@ Обновление прошло успешно Свои источники данных + Приоритет сверху: названия спутников + Приоритет сверху: данные трансиверов No satellites imported. Select a valid TLE/3LE (.txt) or OMM (.csv) file. No transceivers imported. Select a valid SatNOGS (.json) file. URL diff --git a/core/presentation/src/main/res/values-si/strings.xml b/core/presentation/src/main/res/values-si/strings.xml index ffd7b92c..ec3ed49b 100644 --- a/core/presentation/src/main/res/values-si/strings.xml +++ b/core/presentation/src/main/res/values-si/strings.xml @@ -112,6 +112,8 @@ යාවත්කාලීනය සම්පූර්ණ කිරීම සාර්ථකයි Custom data sources + ඉහළ ප්‍රමුඛතාව: චන්ද්‍රිකා නම් + ඉහළ ප්‍රමුඛතාව: සම්ප්‍රේෂක දත්ත No satellites imported. Select a valid TLE/3LE (.txt) or OMM (.csv) file. No transceivers imported. Select a valid SatNOGS (.json) file. URL diff --git a/core/presentation/src/main/res/values-tr/strings.xml b/core/presentation/src/main/res/values-tr/strings.xml index d0d65250..7e57e25c 100644 --- a/core/presentation/src/main/res/values-tr/strings.xml +++ b/core/presentation/src/main/res/values-tr/strings.xml @@ -142,6 +142,8 @@ Güncelleme başarıyla tamamlandı Özel veri kaynakları + Öncelik üstte: uydu adları + Öncelik üstte: transceiver verileri No satellites imported. Select a valid TLE/3LE (.txt) or OMM (.csv) file. No transceivers imported. Select a valid SatNOGS (.json) file. Satellites data diff --git a/core/presentation/src/main/res/values-uk/strings.xml b/core/presentation/src/main/res/values-uk/strings.xml index 761a5178..d747a6bf 100644 --- a/core/presentation/src/main/res/values-uk/strings.xml +++ b/core/presentation/src/main/res/values-uk/strings.xml @@ -112,6 +112,8 @@ Оновлення успішне Custom data sources + Пріоритет зверху: назви супутників + Пріоритет зверху: дані трансиверів No satellites imported. Select a valid TLE/3LE (.txt) or OMM (.csv) file. No transceivers imported. Select a valid SatNOGS (.json) file. URL diff --git a/core/presentation/src/main/res/values-zh/strings.xml b/core/presentation/src/main/res/values-zh/strings.xml index 3b688448..95f56501 100644 --- a/core/presentation/src/main/res/values-zh/strings.xml +++ b/core/presentation/src/main/res/values-zh/strings.xml @@ -241,6 +241,8 @@ 未导入收发器。请选择有效的 SatNOGS (.json) 文件。 自定义数据源 + 轨道数据优先取列表最新星历,此顺序仅影响卫星名称 + 靠前优先:收发器数据 恢复默认数据源 自定义TLE URL 自定义收发器URL diff --git a/core/presentation/src/main/res/values/strings.xml b/core/presentation/src/main/res/values/strings.xml index 7a8c391e..a5e0dbbf 100644 --- a/core/presentation/src/main/res/values/strings.xml +++ b/core/presentation/src/main/res/values/strings.xml @@ -269,6 +269,8 @@ No transceivers imported. Select a valid SatNOGS (.json) file. Custom data sources + Orbital data takes the freshest elements; this order only affects satellite names + Top priority affects transceivers data Restore default sources Custom TLE URL Custom transceivers URL diff --git a/feature/settings/src/main/java/com/rtbishop/look4sat/feature/settings/SettingsDialog.kt b/feature/settings/src/main/java/com/rtbishop/look4sat/feature/settings/SettingsDialog.kt index 2ea779fe..3d5f8d03 100644 --- a/feature/settings/src/main/java/com/rtbishop/look4sat/feature/settings/SettingsDialog.kt +++ b/feature/settings/src/main/java/com/rtbishop/look4sat/feature/settings/SettingsDialog.kt @@ -469,6 +469,7 @@ fun DataSourcesDialog( sourceSection( sectionKey = "sat", labelResId = R.string.prefs_data_sources_satellites_label, + hintResId = R.string.prefs_data_sources_sat_hint, urls = satUrls, listState = listState, draggedId = satDraggedId, @@ -483,6 +484,7 @@ fun DataSourcesDialog( sourceSection( sectionKey = "tx", labelResId = R.string.prefs_data_sources_transceivers_label, + hintResId = R.string.prefs_data_sources_transceivers_hint, urls = txUrls, listState = listState, draggedId = txDraggedId, @@ -501,6 +503,7 @@ fun DataSourcesDialog( private fun LazyListScope.sourceSection( sectionKey: String, labelResId: Int, + hintResId: Int, urls: List>, listState: LazyListState, draggedId: MutableState, @@ -523,6 +526,15 @@ private fun LazyListScope.sourceSection( ) IconCard(action = onAdd, resId = R.drawable.ic_add) } + // States what the order below actually decides: for satellites the elements come from + // whichever enabled source has the freshest epoch, so the order only picks the name. + Text( + text = stringResource(hintResId), + color = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier + .fillMaxWidth() + .padding(top = 2.dp, bottom = 8.dp) + ) } itemsIndexed(urls, key = { _, entry -> "$sectionKey-${entry.first}" }) { index, (id, url) -> val enabledTint = MaterialTheme.colorScheme.onSurfaceVariant