Car display density takes any value from 60 to 480 DPI, typed in under Custom

This commit is contained in:
Seb3thehacker committed 2026-11-06 13:30:29 -08:00
1 parent bb7f2b93ea
commit f139ac48c4
20 files changed
+129 -3

No files matched your search

@@ -249,6 +249,8 @@ private const val KEY_CLUSTER_VIDEO = "cluster_video_enabled"
/** [carDensity] when it leaves the choice to the car. */ /** [carDensity] when it leaves the choice to the car. */
const val DENSITY_FROM_CAR = 0 const val DENSITY_FROM_CAR = 0
val DENSITIES = listOf(160, 180, 200, 220, 240) val DENSITIES = listOf(160, 180, 200, 220, 240)
/** The range a typed-in density may take (issue #82): small enough for more on screen, big enough to read. */
val CUSTOM_DENSITIES = 60..480
/** An absolute DPI for the car UI and its apps; the video's resolution doesn't change with it. */ /** An absolute DPI for the car UI and its apps; the video's resolution doesn't change with it. */
val carDensity: StateFlow<Int> = carDensityFlow val carDensity: StateFlow<Int> = carDensityFlow
@@ -381,7 +383,7 @@ private const val KEY_CLUSTER_VIDEO = "cluster_video_enabled"
fun init(context: Context) { fun init(context: Context) {
app = context.applicationContext app = context.applicationContext
scaleFlow.value = AppSettings.getString(app, KEY_SCALE, "1.0").toFloatOrNull() ?: 1f scaleFlow.value = AppSettings.getString(app, KEY_SCALE, "1.0").toFloatOrNull() ?: 1f
carDensityFlow.value = AppSettings.getString(app, KEY_DENSITY, "").toIntOrNull()?.takeIf { it in DENSITIES } ?: DENSITY_FROM_CAR carDensityFlow.value = AppSettings.getString(app, KEY_DENSITY, "").toIntOrNull()?.takeIf { it in DENSITIES || it in CUSTOM_DENSITIES } ?: DENSITY_FROM_CAR
openFlow.value = AppSettings.getString(app, KEY_OPEN, HOME) openFlow.value = AppSettings.getString(app, KEY_OPEN, HOME)
lastNavFlow.value = AppSettings.getString(app, KEY_LAST_NAV, "").ifEmpty { null } lastNavFlow.value = AppSettings.getString(app, KEY_LAST_NAV, "").ifEmpty { null }
lastMediaFlow.value = AppSettings.getString(app, KEY_LAST_MEDIA, "").ifEmpty { null } lastMediaFlow.value = AppSettings.getString(app, KEY_LAST_MEDIA, "").ifEmpty { null }
@@ -21,6 +21,11 @@ import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.verticalScroll import androidx.compose.foundation.verticalScroll
import androidx.compose.material3.Checkbox import androidx.compose.material3.Checkbox
import androidx.compose.ui.text.input.KeyboardType
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material3.TextButton
import androidx.compose.material3.OutlinedTextField
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.DropdownMenu import androidx.compose.material3.DropdownMenu
import androidx.compose.material3.DropdownMenuItem import androidx.compose.material3.DropdownMenuItem
import androidx.compose.material3.Icon import androidx.compose.material3.Icon
@@ -65,8 +70,44 @@ enum class CarGroup(@param:StringRes val title: Int) {
@Composable @Composable
private fun sizeChoices() = listOf(1f to stringResource(R.string.choice_size_normal), 1.25f to stringResource(R.string.choice_size_large), 1.5f to stringResource(R.string.choice_size_xlarge)) private fun sizeChoices() = listOf(1f to stringResource(R.string.choice_size_normal), 1.25f to stringResource(R.string.choice_size_large), 1.5f to stringResource(R.string.choice_size_xlarge))
/** Marks the menu's Custom entry, which opens [CustomDensityDialog] instead of choosing. */
private const val DENSITY_CUSTOM = -1
/** The presets, a typed-in value when that's what's set, and Custom to type one. */
@Composable @Composable
private fun densityChoices() = listOf(CarSettings.DENSITY_FROM_CAR to stringResource(R.string.choice_density_car)) + CarSettings.DENSITIES.map { it to stringResource(R.string.choice_density_dpi, it) } private fun densityChoices(current: Int): List<Pair<Int, String>> {
val values = CarSettings.DENSITIES.let { if (current != CarSettings.DENSITY_FROM_CAR && current !in it) (it + current).sorted() else it }
return listOf(CarSettings.DENSITY_FROM_CAR to stringResource(R.string.choice_density_car)) +
values.map { it to stringResource(R.string.choice_density_dpi, it) } +
(DENSITY_CUSTOM to stringResource(R.string.choice_density_custom))
}
/** Types in any density in [CarSettings.CUSTOM_DENSITIES] (issue #82). */
@Composable
private fun CustomDensityDialog(current: Int, onDismiss: () -> Unit, onSave: (Int) -> Unit) {
var text by remember { mutableStateOf(current.takeIf { it != CarSettings.DENSITY_FROM_CAR }?.toString().orEmpty()) }
val value = text.toIntOrNull()?.takeIf { it in CarSettings.CUSTOM_DENSITIES }
val range = CarSettings.CUSTOM_DENSITIES
AlertDialog(
onDismissRequest = onDismiss,
title = { Text(stringResource(R.string.density_custom_title)) },
text = {
Column(verticalArrangement = Arrangement.spacedBy(12.dp)) {
Text(stringResource(R.string.density_custom_note, range.first, range.last))
OutlinedTextField(
text, { text = it.filter(Char::isDigit).take(3) },
label = { Text(stringResource(R.string.density_custom_label)) },
singleLine = true,
isError = text.isNotEmpty() && value == null,
keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Number),
)
}
},
confirmButton = { TextButton(onClick = { value?.let(onSave) }, enabled = value != null) { Text(stringResource(R.string.save)) } },
dismissButton = { TextButton(onClick = onDismiss) { Text(stringResource(R.string.cancel)) } },
)
}
@Composable @Composable
private fun themeChoices() = listOf(AppTheme.PHONE to stringResource(R.string.choice_theme_phone), AppTheme.LIGHT to stringResource(R.string.choice_theme_light), AppTheme.DARK to stringResource(R.string.choice_theme_dark)) private fun themeChoices() = listOf(AppTheme.PHONE to stringResource(R.string.choice_theme_phone), AppTheme.LIGHT to stringResource(R.string.choice_theme_light), AppTheme.DARK to stringResource(R.string.choice_theme_dark))
@Composable @Composable
@@ -243,7 +284,18 @@ private fun GroupRows(group: CarGroup) {
SettingsDivider() SettingsDivider()
Choice(stringResource(R.string.car_size), sizeChoices(), scale, CarSettings::setScale) Choice(stringResource(R.string.car_size), sizeChoices(), scale, CarSettings::setScale)
SettingsDivider() SettingsDivider()
Choice(stringResource(R.string.car_density), densityChoices(), density, CarSettings::setCarDensity, note = stringResource(R.string.car_density_note)) var customDensity by remember { mutableStateOf(false) }
Choice(
stringResource(R.string.car_density), densityChoices(density), density,
{ if (it == DENSITY_CUSTOM) customDensity = true else CarSettings.setCarDensity(it) },
note = stringResource(R.string.car_density_note),
)
if (customDensity) {
CustomDensityDialog(density, onDismiss = { customDensity = false }) {
CarSettings.setCarDensity(it)
customDensity = false
}
}
SettingsDivider() SettingsDivider()
Choice(stringResource(R.string.car_app_theme), themeChoices(), theme, CarSettings::setAppTheme) Choice(stringResource(R.string.car_app_theme), themeChoices(), theme, CarSettings::setAppTheme)
SettingsDivider() SettingsDivider()
@@ -889,6 +889,7 @@
<string name="carset_fit_needs_car">وصّل سيارة لحفظ هذا الضبط لها.</string> <string name="carset_fit_needs_car">وصّل سيارة لحفظ هذا الضبط لها.</string>
<string name="choice_density_car">من السيارة</string> <string name="choice_density_car">من السيارة</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">مخصص…</string>
<string name="dialer_missed">فائتة · %1$s</string> <string name="dialer_missed">فائتة · %1$s</string>
<string name="dialer_no_recents">لا توجد مكالمات حديثة.</string> <string name="dialer_no_recents">لا توجد مكالمات حديثة.</string>
<string name="dialer_recents">الأخيرة</string> <string name="dialer_recents">الأخيرة</string>
@@ -944,4 +945,7 @@
<string name="assist_one_moment">لحظة…</string> <string name="assist_one_moment">لحظة…</string>
<string name="assist_examples">جرّب “navigate home” أو “play” ثم اسم فنان. قل “help” للمزيد.</string> <string name="assist_examples">جرّب “navigate home” أو “play” ثم اسم فنان. قل “help” للمزيد.</string>
<string name="assist_grant">منح الإذن</string> <string name="assist_grant">منح الإذن</string>
<string name="density_custom_title">كثافة مخصصة</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">أي قيمة من %1$d إلى %2$d. القيمة الأقل تُظهر محتوى أكثر على الشاشة، والأعلى تُكبّر كل شيء.</string>
</resources> </resources>
@@ -873,6 +873,7 @@
<string name="carset_fit_needs_car">Připojte auto, abyste pro něj tuto úpravu uložili.</string> <string name="carset_fit_needs_car">Připojte auto, abyste pro něj tuto úpravu uložili.</string>
<string name="choice_density_car">Z auta</string> <string name="choice_density_car">Z auta</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Vlastní…</string>
<string name="dialer_missed">Zmeškaný · %1$s</string> <string name="dialer_missed">Zmeškaný · %1$s</string>
<string name="dialer_no_recents">Žádné nedávné hovory.</string> <string name="dialer_no_recents">Žádné nedávné hovory.</string>
<string name="dialer_recents">Nedávné</string> <string name="dialer_recents">Nedávné</string>
@@ -924,4 +925,7 @@
<string name="assist_one_moment">Okamžik…</string> <string name="assist_one_moment">Okamžik…</string>
<string name="assist_examples">Zkuste „navigate home“ nebo „play“ a interpreta. Pro víc řekněte „help“.</string> <string name="assist_examples">Zkuste „navigate home“ nebo „play“ a interpreta. Pro víc řekněte „help“.</string>
<string name="assist_grant">Povolit</string> <string name="assist_grant">Povolit</string>
<string name="density_custom_title">Vlastní hustota</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Libovolná hodnota od %1$d do %2$d. Nižší vejde víc na obrazovku, vyšší vše zvětší.</string>
</resources> </resources>
@@ -739,6 +739,7 @@
<string name="carset_fit_needs_car">Verbinde ein Auto, um diese Anpassung dafür zu speichern.</string> <string name="carset_fit_needs_car">Verbinde ein Auto, um diese Anpassung dafür zu speichern.</string>
<string name="choice_density_car">Vom Auto</string> <string name="choice_density_car">Vom Auto</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Eigener Wert…</string>
<string name="dialer_missed">Verpasst · %1$s</string> <string name="dialer_missed">Verpasst · %1$s</string>
<string name="dialer_no_recents">Keine letzten Anrufe.</string> <string name="dialer_no_recents">Keine letzten Anrufe.</string>
<string name="dialer_recents">Letzte</string> <string name="dialer_recents">Letzte</string>
@@ -786,4 +787,7 @@
<string name="assist_one_moment">Einen Moment…</string> <string name="assist_one_moment">Einen Moment…</string>
<string name="assist_examples">Probier „navigate home“ oder „play“ und einen Künstler. Sag „help“ für mehr.</string> <string name="assist_examples">Probier „navigate home“ oder „play“ und einen Künstler. Sag „help“ für mehr.</string>
<string name="assist_grant">Erlauben</string> <string name="assist_grant">Erlauben</string>
<string name="density_custom_title">Eigene Dichte</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Ein Wert von %1$d bis %2$d. Kleiner passt mehr auf den Bildschirm, größer macht alles größer.</string>
</resources> </resources>
@@ -739,6 +739,7 @@
<string name="carset_fit_needs_car">Conecta un coche para guardar este ajuste para él.</string> <string name="carset_fit_needs_car">Conecta un coche para guardar este ajuste para él.</string>
<string name="choice_density_car">Desde el coche</string> <string name="choice_density_car">Desde el coche</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Personalizado…</string>
<string name="dialer_missed">Perdida · %1$s</string> <string name="dialer_missed">Perdida · %1$s</string>
<string name="dialer_no_recents">No hay llamadas recientes.</string> <string name="dialer_no_recents">No hay llamadas recientes.</string>
<string name="dialer_recents">Recientes</string> <string name="dialer_recents">Recientes</string>
@@ -788,4 +789,7 @@
<string name="assist_one_moment">Un momento…</string> <string name="assist_one_moment">Un momento…</string>
<string name="assist_examples">Prueba “navigate home” o “play” y un artista. Di “help” para ver más.</string> <string name="assist_examples">Prueba “navigate home” o “play” y un artista. Di “help” para ver más.</string>
<string name="assist_grant">Permitir</string> <string name="assist_grant">Permitir</string>
<string name="density_custom_title">Densidad personalizada</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Cualquier valor de %1$d a %2$d. Un valor menor muestra más en pantalla; uno mayor lo agranda todo.</string>
</resources> </resources>
@@ -865,6 +865,7 @@
<string name="carset_fit_needs_car">Connectez une voiture pour enregistrer ce réglage pour elle.</string> <string name="carset_fit_needs_car">Connectez une voiture pour enregistrer ce réglage pour elle.</string>
<string name="choice_density_car">Selon la voiture</string> <string name="choice_density_car">Selon la voiture</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Personnalisé…</string>
<string name="dialer_missed">Manqué · %1$s</string> <string name="dialer_missed">Manqué · %1$s</string>
<string name="dialer_no_recents">Aucun appel récent.</string> <string name="dialer_no_recents">Aucun appel récent.</string>
<string name="dialer_recents">Récents</string> <string name="dialer_recents">Récents</string>
@@ -914,4 +915,7 @@
<string name="assist_one_moment">Un instant…</string> <string name="assist_one_moment">Un instant…</string>
<string name="assist_examples">Essayez « navigate home » ou « play » suivi d\'un artiste. Dites « help » pour en savoir plus.</string> <string name="assist_examples">Essayez « navigate home » ou « play » suivi d\'un artiste. Dites « help » pour en savoir plus.</string>
<string name="assist_grant">Autoriser</string> <string name="assist_grant">Autoriser</string>
<string name="density_custom_title">Densité personnalisée</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Toute valeur de %1$d à %2$d. Plus bas affiche plus de choses à l’écran, plus haut agrandit tout.</string>
</resources> </resources>
@@ -865,6 +865,7 @@
<string name="carset_fit_needs_car">Collega un\'auto per salvare questa regolazione per lei.</string> <string name="carset_fit_needs_car">Collega un\'auto per salvare questa regolazione per lei.</string>
<string name="choice_density_car">Dall\'auto</string> <string name="choice_density_car">Dall\'auto</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Personalizzata…</string>
<string name="dialer_missed">Persa · %1$s</string> <string name="dialer_missed">Persa · %1$s</string>
<string name="dialer_no_recents">Nessuna chiamata recente.</string> <string name="dialer_no_recents">Nessuna chiamata recente.</string>
<string name="dialer_recents">Recenti</string> <string name="dialer_recents">Recenti</string>
@@ -914,4 +915,7 @@
<string name="assist_one_moment">Un momento…</string> <string name="assist_one_moment">Un momento…</string>
<string name="assist_examples">Prova “navigate home” o “play” e un artista. Di’ “help” per altro.</string> <string name="assist_examples">Prova “navigate home” o “play” e un artista. Di’ “help” per altro.</string>
<string name="assist_grant">Consenti</string> <string name="assist_grant">Consenti</string>
<string name="density_custom_title">Densità personalizzata</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Qualsiasi valore da %1$d a %2$d. Più basso mostra più cose sullo schermo, più alto ingrandisce tutto.</string>
</resources> </resources>
@@ -849,6 +849,7 @@
<string name="carset_fit_needs_car">この調整を保存するには車を接続してください。</string> <string name="carset_fit_needs_car">この調整を保存するには車を接続してください。</string>
<string name="choice_density_car">車に合わせる</string> <string name="choice_density_car">車に合わせる</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">カスタム…</string>
<string name="dialer_missed">不在着信 · %1$s</string> <string name="dialer_missed">不在着信 · %1$s</string>
<string name="dialer_no_recents">最近の通話はありません。</string> <string name="dialer_no_recents">最近の通話はありません。</string>
<string name="dialer_recents">履歴</string> <string name="dialer_recents">履歴</string>
@@ -894,4 +895,7 @@
<string name="assist_one_moment">少々お待ちください…</string> <string name="assist_one_moment">少々お待ちください…</string>
<string name="assist_examples">「navigate home」や「play」+アーティスト名を試してください。「help」で一覧を表示します。</string> <string name="assist_examples">「navigate home」や「play」+アーティスト名を試してください。「help」で一覧を表示します。</string>
<string name="assist_grant">許可</string> <string name="assist_grant">許可</string>
<string name="density_custom_title">カスタム密度</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">%1$d~%2$d の値を入力します。小さいほど画面に多く表示され、大きいほどすべてが大きくなります。</string>
</resources> </resources>
@@ -849,6 +849,7 @@
<string name="carset_fit_needs_car">이 조정을 저장하려면 차량을 연결하세요.</string> <string name="carset_fit_needs_car">이 조정을 저장하려면 차량을 연결하세요.</string>
<string name="choice_density_car">차량 기본값</string> <string name="choice_density_car">차량 기본값</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">사용자 지정…</string>
<string name="dialer_missed">부재중 · %1$s</string> <string name="dialer_missed">부재중 · %1$s</string>
<string name="dialer_no_recents">최근 통화가 없습니다.</string> <string name="dialer_no_recents">최근 통화가 없습니다.</string>
<string name="dialer_recents">최근 기록</string> <string name="dialer_recents">최근 기록</string>
@@ -894,4 +895,7 @@
<string name="assist_one_moment">잠시만요…</string> <string name="assist_one_moment">잠시만요…</string>
<string name="assist_examples">“navigate home” 또는 “play”와 아티스트 이름을 말해 보세요. 더 보려면 “help”라고 말하세요.</string> <string name="assist_examples">“navigate home” 또는 “play”와 아티스트 이름을 말해 보세요. 더 보려면 “help”라고 말하세요.</string>
<string name="assist_grant">허용</string> <string name="assist_grant">허용</string>
<string name="density_custom_title">사용자 지정 밀도</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">%1$d~%2$d 사이의 값을 입력하세요. 낮을수록 화면에 더 많이 표시되고, 높을수록 모든 것이 커집니다.</string>
</resources> </resources>
@@ -857,6 +857,7 @@
<string name="carset_fit_needs_car">Verbind een auto om deze aanpassing ervoor op te slaan.</string> <string name="carset_fit_needs_car">Verbind een auto om deze aanpassing ervoor op te slaan.</string>
<string name="choice_density_car">Van de auto</string> <string name="choice_density_car">Van de auto</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Aangepast…</string>
<string name="dialer_missed">Gemist · %1$s</string> <string name="dialer_missed">Gemist · %1$s</string>
<string name="dialer_no_recents">Geen recente oproepen.</string> <string name="dialer_no_recents">Geen recente oproepen.</string>
<string name="dialer_recents">Recent</string> <string name="dialer_recents">Recent</string>
@@ -904,4 +905,7 @@
<string name="assist_one_moment">Even geduld…</string> <string name="assist_one_moment">Even geduld…</string>
<string name="assist_examples">Probeer “navigate home” of “play” en een artiest. Zeg “help” voor meer.</string> <string name="assist_examples">Probeer “navigate home” of “play” en een artiest. Zeg “help” voor meer.</string>
<string name="assist_grant">Toestaan</string> <string name="assist_grant">Toestaan</string>
<string name="density_custom_title">Aangepaste dichtheid</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Elke waarde van %1$d tot %2$d. Lager past meer op het scherm, hoger maakt alles groter.</string>
</resources> </resources>
@@ -873,6 +873,7 @@
<string name="carset_fit_needs_car">Połącz samochód, aby zapisać dla niego to dopasowanie.</string> <string name="carset_fit_needs_car">Połącz samochód, aby zapisać dla niego to dopasowanie.</string>
<string name="choice_density_car">Z samochodu</string> <string name="choice_density_car">Z samochodu</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Własna…</string>
<string name="dialer_missed">Nieodebrane · %1$s</string> <string name="dialer_missed">Nieodebrane · %1$s</string>
<string name="dialer_no_recents">Brak ostatnich połączeń.</string> <string name="dialer_no_recents">Brak ostatnich połączeń.</string>
<string name="dialer_recents">Ostatnie</string> <string name="dialer_recents">Ostatnie</string>
@@ -924,4 +925,7 @@
<string name="assist_one_moment">Chwileczkę…</string> <string name="assist_one_moment">Chwileczkę…</string>
<string name="assist_examples">Spróbuj „navigate home” albo „play” i wykonawcę. Powiedz „help”, aby zobaczyć więcej.</string> <string name="assist_examples">Spróbuj „navigate home” albo „play” i wykonawcę. Powiedz „help”, aby zobaczyć więcej.</string>
<string name="assist_grant">Zezwól</string> <string name="assist_grant">Zezwól</string>
<string name="density_custom_title">Własna gęstość</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Dowolna wartość od %1$d do %2$d. Niższa mieści więcej na ekranie, wyższa wszystko powiększa.</string>
</resources> </resources>
@@ -865,6 +865,7 @@
<string name="carset_fit_needs_car">Conecte um carro para salvar este ajuste para ele.</string> <string name="carset_fit_needs_car">Conecte um carro para salvar este ajuste para ele.</string>
<string name="choice_density_car">Do carro</string> <string name="choice_density_car">Do carro</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Personalizado…</string>
<string name="dialer_missed">Perdida · %1$s</string> <string name="dialer_missed">Perdida · %1$s</string>
<string name="dialer_no_recents">Nenhuma chamada recente.</string> <string name="dialer_no_recents">Nenhuma chamada recente.</string>
<string name="dialer_recents">Recentes</string> <string name="dialer_recents">Recentes</string>
@@ -914,4 +915,7 @@
<string name="assist_one_moment">Um momento…</string> <string name="assist_one_moment">Um momento…</string>
<string name="assist_examples">Tente “navigate home” ou “play” e um artista. Diga “help” para ver mais.</string> <string name="assist_examples">Tente “navigate home” ou “play” e um artista. Diga “help” para ver mais.</string>
<string name="assist_grant">Permitir</string> <string name="assist_grant">Permitir</string>
<string name="density_custom_title">Densidade personalizada</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Qualquer valor de %1$d a %2$d. Menor cabe mais na tela; maior deixa tudo maior.</string>
</resources> </resources>
@@ -598,6 +598,7 @@
<string name="carset_fit_needs_car">Conectează o mașină ca să salvezi această ajustare pentru ea.</string> <string name="carset_fit_needs_car">Conectează o mașină ca să salvezi această ajustare pentru ea.</string>
<string name="choice_density_car">Din mașină</string> <string name="choice_density_car">Din mașină</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Personalizat…</string>
<string name="dialer_missed">Ratat · %1$s</string> <string name="dialer_missed">Ratat · %1$s</string>
<string name="dialer_no_recents">Niciun apel recent.</string> <string name="dialer_no_recents">Niciun apel recent.</string>
<string name="dialer_recents">Recente</string> <string name="dialer_recents">Recente</string>
@@ -796,4 +797,7 @@
<string name="assist_one_moment">Un moment…</string> <string name="assist_one_moment">Un moment…</string>
<string name="assist_examples">Încearcă „navigate home” sau „play” și un artist. Spune „help” pentru mai multe.</string> <string name="assist_examples">Încearcă „navigate home” sau „play” și un artist. Spune „help” pentru mai multe.</string>
<string name="assist_grant">Permite</string> <string name="assist_grant">Permite</string>
<string name="density_custom_title">Densitate personalizată</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Orice valoare între %1$d și %2$d. Mai mică încape mai mult pe ecran, mai mare mărește totul.</string>
</resources> </resources>
@@ -873,6 +873,7 @@
<string name="carset_fit_needs_car">Подключите машину, чтобы сохранить для неё эту подгонку.</string> <string name="carset_fit_needs_car">Подключите машину, чтобы сохранить для неё эту подгонку.</string>
<string name="choice_density_car">От машины</string> <string name="choice_density_car">От машины</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Своё значение…</string>
<string name="dialer_missed">Пропущенный · %1$s</string> <string name="dialer_missed">Пропущенный · %1$s</string>
<string name="dialer_no_recents">Нет недавних вызовов.</string> <string name="dialer_no_recents">Нет недавних вызовов.</string>
<string name="dialer_recents">Недавние</string> <string name="dialer_recents">Недавние</string>
@@ -924,4 +925,7 @@
<string name="assist_one_moment">Секунду…</string> <string name="assist_one_moment">Секунду…</string>
<string name="assist_examples">Попробуйте «navigate home» или «play» и исполнителя. Скажите «help», чтобы узнать больше.</string> <string name="assist_examples">Попробуйте «navigate home» или «play» и исполнителя. Скажите «help», чтобы узнать больше.</string>
<string name="assist_grant">Разрешить</string> <string name="assist_grant">Разрешить</string>
<string name="density_custom_title">Своя плотность</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Любое значение от %1$d до %2$d. Меньше — больше помещается на экране, больше — всё крупнее.</string>
</resources> </resources>
@@ -857,6 +857,7 @@
<string name="carset_fit_needs_car">Anslut en bil för att spara den här justeringen för den.</string> <string name="carset_fit_needs_car">Anslut en bil för att spara den här justeringen för den.</string>
<string name="choice_density_car">Från bilen</string> <string name="choice_density_car">Från bilen</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Anpassad…</string>
<string name="dialer_missed">Missat · %1$s</string> <string name="dialer_missed">Missat · %1$s</string>
<string name="dialer_no_recents">Inga senaste samtal.</string> <string name="dialer_no_recents">Inga senaste samtal.</string>
<string name="dialer_recents">Senaste</string> <string name="dialer_recents">Senaste</string>
@@ -904,4 +905,7 @@
<string name="assist_one_moment">Ett ögonblick…</string> <string name="assist_one_moment">Ett ögonblick…</string>
<string name="assist_examples">Prova ”navigate home” eller ”play” och en artist. Säg ”help” för mer.</string> <string name="assist_examples">Prova ”navigate home” eller ”play” och en artist. Säg ”help” för mer.</string>
<string name="assist_grant">Tillåt</string> <string name="assist_grant">Tillåt</string>
<string name="density_custom_title">Anpassad täthet</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Valfritt värde från %1$d till %2$d. Lägre får plats med mer på skärmen, högre gör allt större.</string>
</resources> </resources>
@@ -857,6 +857,7 @@
<string name="carset_fit_needs_car">Bu ayarı bir araba için kaydetmek üzere arabayı bağla.</string> <string name="carset_fit_needs_car">Bu ayarı bir araba için kaydetmek üzere arabayı bağla.</string>
<string name="choice_density_car">Arabadan</string> <string name="choice_density_car">Arabadan</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Özel…</string>
<string name="dialer_missed">Cevapsız · %1$s</string> <string name="dialer_missed">Cevapsız · %1$s</string>
<string name="dialer_no_recents">Son arama yok.</string> <string name="dialer_no_recents">Son arama yok.</string>
<string name="dialer_recents">Son aramalar</string> <string name="dialer_recents">Son aramalar</string>
@@ -904,4 +905,7 @@
<string name="assist_one_moment">Bir saniye…</string> <string name="assist_one_moment">Bir saniye…</string>
<string name="assist_examples">“navigate home” ya da “play” ve bir sanatçı adı dene. Daha fazlası için “help” de.</string> <string name="assist_examples">“navigate home” ya da “play” ve bir sanatçı adı dene. Daha fazlası için “help” de.</string>
<string name="assist_grant">İzin ver</string> <string name="assist_grant">İzin ver</string>
<string name="density_custom_title">Özel yoğunluk</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">%1$d ile %2$d arasında herhangi bir değer. Düşük değer ekrana daha çok sığdırır, yüksek değer her şeyi büyütür.</string>
</resources> </resources>
@@ -873,6 +873,7 @@
<string name="carset_fit_needs_car">Підключіть авто, щоб зберегти для нього це припасування.</string> <string name="carset_fit_needs_car">Підключіть авто, щоб зберегти для нього це припасування.</string>
<string name="choice_density_car">Від авто</string> <string name="choice_density_car">Від авто</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Своє значення…</string>
<string name="dialer_missed">Пропущений · %1$s</string> <string name="dialer_missed">Пропущений · %1$s</string>
<string name="dialer_no_recents">Немає недавніх дзвінків.</string> <string name="dialer_no_recents">Немає недавніх дзвінків.</string>
<string name="dialer_recents">Недавні</string> <string name="dialer_recents">Недавні</string>
@@ -924,4 +925,7 @@
<string name="assist_one_moment">Хвилинку…</string> <string name="assist_one_moment">Хвилинку…</string>
<string name="assist_examples">Спробуйте «navigate home» або «play» і виконавця. Скажіть «help», щоб дізнатися більше.</string> <string name="assist_examples">Спробуйте «navigate home» або «play» і виконавця. Скажіть «help», щоб дізнатися більше.</string>
<string name="assist_grant">Дозволити</string> <string name="assist_grant">Дозволити</string>
<string name="density_custom_title">Своя щільність</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Будь-яке значення від %1$d до %2$d. Менше — більше вміщується на екрані, більше — усе крупніше.</string>
</resources> </resources>
@@ -849,6 +849,7 @@
<string name="carset_fit_needs_car">连接汽车后才能为它保存此调整。</string> <string name="carset_fit_needs_car">连接汽车后才能为它保存此调整。</string>
<string name="choice_density_car">跟随汽车</string> <string name="choice_density_car">跟随汽车</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">自定义…</string>
<string name="dialer_missed">未接 · %1$s</string> <string name="dialer_missed">未接 · %1$s</string>
<string name="dialer_no_recents">没有最近通话。</string> <string name="dialer_no_recents">没有最近通话。</string>
<string name="dialer_recents">最近</string> <string name="dialer_recents">最近</string>
@@ -894,4 +895,7 @@
<string name="assist_one_moment">请稍候…</string> <string name="assist_one_moment">请稍候…</string>
<string name="assist_examples">试试说“navigate home”,或“play”加歌手名。说“help”查看更多。</string> <string name="assist_examples">试试说“navigate home”,或“play”加歌手名。说“help”查看更多。</string>
<string name="assist_grant">授权</string> <string name="assist_grant">授权</string>
<string name="density_custom_title">自定义密度</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">输入 %1$d 到 %2$d 之间的任意值。数值越小,屏幕上显示的内容越多;越大,所有内容越大。</string>
</resources> </resources>
+4
View File
@@ -196,6 +196,7 @@
<string name="car_density_note">Larger text and controls, including in apps. Try 200 DPI with Size on Normal. Reconnect the car or reopen the preview to apply it. If controls clip, choose a lower DPI or From car.</string> <string name="car_density_note">Larger text and controls, including in apps. Try 200 DPI with Size on Normal. Reconnect the car or reopen the preview to apply it. If controls clip, choose a lower DPI or From car.</string>
<string name="choice_density_car">From car</string> <string name="choice_density_car">From car</string>
<string name="choice_density_dpi">%1$d DPI</string> <string name="choice_density_dpi">%1$d DPI</string>
<string name="choice_density_custom">Custom…</string>
<string name="car_app_theme">App theme</string> <string name="car_app_theme">App theme</string>
<string name="car_dark_mode">Dark mode</string> <string name="car_dark_mode">Dark mode</string>
<string name="car_buttons">Buttons</string> <string name="car_buttons">Buttons</string>
@@ -953,4 +954,7 @@
<string name="settings_language">Language</string> <string name="settings_language">Language</string>
<string name="settings_language_phone">Same as the phone</string> <string name="settings_language_phone">Same as the phone</string>
<string name="player_next_chapter">Next chapter</string> <string name="player_next_chapter">Next chapter</string>
<string name="density_custom_title">Custom density</string>
<string name="density_custom_label">DPI</string>
<string name="density_custom_note">Any value from %1$d to %2$d. Lower fits more on the screen; higher makes everything bigger.</string>
</resources> </resources>