diff --git a/gearslip/src/main/java/app/seb3thehacker/gearslip/car/AssistantOverlay.kt b/gearslip/src/main/java/app/seb3thehacker/gearslip/car/AssistantOverlay.kt index 35f5814..d19783a 100644 --- a/gearslip/src/main/java/app/seb3thehacker/gearslip/car/AssistantOverlay.kt +++ b/gearslip/src/main/java/app/seb3thehacker/gearslip/car/AssistantOverlay.kt @@ -39,6 +39,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.res.vectorResource import app.seb3thehacker.gearslip.R +import androidx.compose.ui.res.stringResource import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp @@ -69,7 +70,8 @@ fun AssistantOverlay(modifier: Modifier = Modifier) { modifier .fillMaxWidth() .drawBehind { - drawRect(Brush.verticalGradient(0f to Color.Transparent, 0.45f to Color.Black.copy(alpha = 0.6f), 1f to Color.Black.copy(alpha = 0.85f))) + // Dark enough by the text that nothing on the screen behind reads through it. + drawRect(Brush.verticalGradient(0f to Color.Transparent, 0.3f to Color.Black.copy(alpha = 0.8f), 1f to Color.Black.copy(alpha = 0.92f))) // A wide, flat oval of light rising from the bottom edge. scale(1f, 0.22f, Offset(size.width / 2, size.height)) { drawCircle( @@ -86,8 +88,12 @@ fun AssistantOverlay(modifier: Modifier = Modifier) { Row(verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(16.dp)) { PulsingMic(listening) Column(Modifier.weight(1f), horizontalAlignment = Alignment.CenterHorizontally) { + val listeningText = stringResource(R.string.assist_listening) + val momentText = stringResource(R.string.assist_one_moment) + val waiting = state.heard.isBlank() && + (state.phase == CarAssistant.Phase.LISTENING || state.phase == CarAssistant.Phase.THINKING) val (small, big) = when (state.phase) { - CarAssistant.Phase.LISTENING -> "" to state.heard.ifBlank { if (state.ready) "Listening…" else "One moment…" } + CarAssistant.Phase.LISTENING -> "" to state.heard.ifBlank { if (state.ready) listeningText else momentText } CarAssistant.Phase.THINKING -> "" to state.heard.ifBlank { "…" } else -> state.heard to state.reply } @@ -96,22 +102,33 @@ fun AssistantOverlay(modifier: Modifier = Modifier) { } Text( big, - color = if (big == "Listening…" || big == "One moment…" || big == "…") Color.White.copy(alpha = 0.7f) else Color.White, + color = if (waiting) Color.White.copy(alpha = 0.7f) else Color.White, style = MaterialTheme.typography.headlineSmall, fontWeight = FontWeight.SemiBold, textAlign = TextAlign.Center, maxLines = 2, overflow = TextOverflow.Ellipsis, ) + // What to say, until the driver starts saying it. + if (state.phase == CarAssistant.Phase.LISTENING && state.ready && state.heard.isBlank()) { + Text( + stringResource(R.string.assist_examples), + color = Color.White.copy(alpha = 0.6f), + style = MaterialTheme.typography.bodyMedium, + textAlign = TextAlign.Center, + maxLines = 2, + modifier = Modifier.padding(top = 4.dp), + ) + } } if (state.missingPermission) { GsButton(tone = GsTone.Tonal, onClick = { context.startActivity( Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, Uri.fromParts("package", context.packageName, null)), ) - }) { Text("Grant") } + }) { Text(stringResource(R.string.assist_grant)) } } - GsIconButton(Icons.Filled.Close, "Dismiss", CarAssistant::cancel) + GsIconButton(Icons.Filled.Close, stringResource(R.string.msg_dismiss), CarAssistant::cancel) } } } diff --git a/gearslip/src/main/res/values-ar/strings.xml b/gearslip/src/main/res/values-ar/strings.xml index 76de5c0..73cb211 100644 --- a/gearslip/src/main/res/values-ar/strings.xml +++ b/gearslip/src/main/res/values-ar/strings.xml @@ -940,4 +940,8 @@ حُدّث Gearslip إلى %1$s تثبيت التحديثات تلقائيًا الإصدارات النهائية فقط، عبر Wi-Fi، عندما لا تكون أي سيارة متصلة + جارٍ الاستماع… + لحظة… + جرّب “navigate home” أو “play” ثم اسم فنان. قل “help” للمزيد. + منح الإذن diff --git a/gearslip/src/main/res/values-cs/strings.xml b/gearslip/src/main/res/values-cs/strings.xml index 5815af1..37b4162 100644 --- a/gearslip/src/main/res/values-cs/strings.xml +++ b/gearslip/src/main/res/values-cs/strings.xml @@ -920,4 +920,8 @@ Gearslip aktualizován na %1$s Instalovat aktualizace samo Jen hotová vydání, přes Wi-Fi, když není připojené žádné auto + Poslouchám… + Okamžik… + Zkuste „navigate home“ nebo „play“ a interpreta. Pro víc řekněte „help“. + Povolit diff --git a/gearslip/src/main/res/values-de/strings.xml b/gearslip/src/main/res/values-de/strings.xml index fb62ca3..e8aff6b 100644 --- a/gearslip/src/main/res/values-de/strings.xml +++ b/gearslip/src/main/res/values-de/strings.xml @@ -782,4 +782,8 @@ Gearslip auf %1$s aktualisiert Updates selbst installieren Nur fertige Versionen, über WLAN, wenn kein Auto verbunden ist + Ich höre zu… + Einen Moment… + Probier „navigate home“ oder „play“ und einen Künstler. Sag „help“ für mehr. + Erlauben diff --git a/gearslip/src/main/res/values-es/strings.xml b/gearslip/src/main/res/values-es/strings.xml index 4733cb3..767e542 100644 --- a/gearslip/src/main/res/values-es/strings.xml +++ b/gearslip/src/main/res/values-es/strings.xml @@ -784,4 +784,8 @@ Gearslip actualizado a %1$s Instalar actualizaciones solo Solo versiones finales, por Wi-Fi, cuando no hay ningún coche conectado + Escuchando… + Un momento… + Prueba “navigate home” o “play” y un artista. Di “help” para ver más. + Permitir diff --git a/gearslip/src/main/res/values-fr/strings.xml b/gearslip/src/main/res/values-fr/strings.xml index 8ab2238..72bdbf3 100644 --- a/gearslip/src/main/res/values-fr/strings.xml +++ b/gearslip/src/main/res/values-fr/strings.xml @@ -910,4 +910,8 @@ Gearslip mis à jour en %1$s Installer les mises à jour tout seul Versions finales uniquement, en Wi-Fi, quand aucune voiture n\'est connectée + J\'écoute… + Un instant… + Essayez « navigate home » ou « play » suivi d\'un artiste. Dites « help » pour en savoir plus. + Autoriser diff --git a/gearslip/src/main/res/values-it/strings.xml b/gearslip/src/main/res/values-it/strings.xml index ca8c4ca..ad54147 100644 --- a/gearslip/src/main/res/values-it/strings.xml +++ b/gearslip/src/main/res/values-it/strings.xml @@ -910,4 +910,8 @@ Gearslip aggiornato a %1$s Installa gli aggiornamenti da solo Solo versioni definitive, via Wi-Fi, quando nessuna auto è collegata + Ti ascolto… + Un momento… + Prova “navigate home” o “play” e un artista. Di’ “help” per altro. + Consenti diff --git a/gearslip/src/main/res/values-ja/strings.xml b/gearslip/src/main/res/values-ja/strings.xml index f2e5c8a..4bb6b33 100644 --- a/gearslip/src/main/res/values-ja/strings.xml +++ b/gearslip/src/main/res/values-ja/strings.xml @@ -890,4 +890,8 @@ Gearslip を %1$s に更新しました アップデートを自動でインストール 正式版のみ、Wi-Fi 接続時、車が接続されていないときに + 聞いています… + 少々お待ちください… + 「navigate home」や「play」+アーティスト名を試してください。「help」で一覧を表示します。 + 許可 diff --git a/gearslip/src/main/res/values-ko/strings.xml b/gearslip/src/main/res/values-ko/strings.xml index e12eccf..94812e0 100644 --- a/gearslip/src/main/res/values-ko/strings.xml +++ b/gearslip/src/main/res/values-ko/strings.xml @@ -890,4 +890,8 @@ Gearslip이 %1$s(으)로 업데이트됨 업데이트 자동 설치 정식 버전만, Wi-Fi에서, 차량이 연결되지 않았을 때 + 듣는 중… + 잠시만요… + “navigate home” 또는 “play”와 아티스트 이름을 말해 보세요. 더 보려면 “help”라고 말하세요. + 허용 diff --git a/gearslip/src/main/res/values-nl/strings.xml b/gearslip/src/main/res/values-nl/strings.xml index 67e9e44..7cd9aa6 100644 --- a/gearslip/src/main/res/values-nl/strings.xml +++ b/gearslip/src/main/res/values-nl/strings.xml @@ -900,4 +900,8 @@ Gearslip bijgewerkt naar %1$s Updates zelf installeren Alleen definitieve versies, via wifi, als er geen auto verbonden is + Ik luister… + Even geduld… + Probeer “navigate home” of “play” en een artiest. Zeg “help” voor meer. + Toestaan diff --git a/gearslip/src/main/res/values-pl/strings.xml b/gearslip/src/main/res/values-pl/strings.xml index 5f29a45..5b10bcb 100644 --- a/gearslip/src/main/res/values-pl/strings.xml +++ b/gearslip/src/main/res/values-pl/strings.xml @@ -920,4 +920,8 @@ Gearslip zaktualizowany do %1$s Instaluj aktualizacje samodzielnie Tylko wydania stabilne, przez Wi-Fi, gdy żaden samochód nie jest połączony + Słucham… + Chwileczkę… + Spróbuj „navigate home” albo „play” i wykonawcę. Powiedz „help”, aby zobaczyć więcej. + Zezwól diff --git a/gearslip/src/main/res/values-pt-rBR/strings.xml b/gearslip/src/main/res/values-pt-rBR/strings.xml index 3df7b30..b951cb0 100644 --- a/gearslip/src/main/res/values-pt-rBR/strings.xml +++ b/gearslip/src/main/res/values-pt-rBR/strings.xml @@ -910,4 +910,8 @@ Gearslip atualizado para %1$s Instalar atualizações sozinho Só versões finais, pelo Wi-Fi, quando nenhum carro está conectado + Ouvindo… + Um momento… + Tente “navigate home” ou “play” e um artista. Diga “help” para ver mais. + Permitir diff --git a/gearslip/src/main/res/values-ro/strings.xml b/gearslip/src/main/res/values-ro/strings.xml index 3c230f0..9b9892c 100644 --- a/gearslip/src/main/res/values-ro/strings.xml +++ b/gearslip/src/main/res/values-ro/strings.xml @@ -792,4 +792,8 @@ Te caut… Gearslip nu a găsit unde ești. Verifică dacă locația e pornită. Șterge + Ascult… + Un moment… + Încearcă „navigate home” sau „play” și un artist. Spune „help” pentru mai multe. + Permite diff --git a/gearslip/src/main/res/values-ru/strings.xml b/gearslip/src/main/res/values-ru/strings.xml index f50fab6..40032ad 100644 --- a/gearslip/src/main/res/values-ru/strings.xml +++ b/gearslip/src/main/res/values-ru/strings.xml @@ -920,4 +920,8 @@ Gearslip обновлён до %1$s Устанавливать обновления самостоятельно Только готовые версии, по Wi-Fi, когда машина не подключена + Слушаю… + Секунду… + Попробуйте «navigate home» или «play» и исполнителя. Скажите «help», чтобы узнать больше. + Разрешить diff --git a/gearslip/src/main/res/values-sv/strings.xml b/gearslip/src/main/res/values-sv/strings.xml index 56bb342..88c7144 100644 --- a/gearslip/src/main/res/values-sv/strings.xml +++ b/gearslip/src/main/res/values-sv/strings.xml @@ -900,4 +900,8 @@ Gearslip uppdaterad till %1$s Installera uppdateringar själv Bara färdiga versioner, via wifi, när ingen bil är ansluten + Lyssnar… + Ett ögonblick… + Prova ”navigate home” eller ”play” och en artist. Säg ”help” för mer. + Tillåt diff --git a/gearslip/src/main/res/values-tr/strings.xml b/gearslip/src/main/res/values-tr/strings.xml index a816c79..7d6f96f 100644 --- a/gearslip/src/main/res/values-tr/strings.xml +++ b/gearslip/src/main/res/values-tr/strings.xml @@ -900,4 +900,8 @@ Gearslip %1$s sürümüne güncellendi Güncellemeleri kendisi yüklesin Yalnızca tamamlanmış sürümler, Wi-Fi üzerinden, araba bağlı değilken + Dinliyorum… + Bir saniye… + “navigate home” ya da “play” ve bir sanatçı adı dene. Daha fazlası için “help” de. + İzin ver diff --git a/gearslip/src/main/res/values-uk/strings.xml b/gearslip/src/main/res/values-uk/strings.xml index c1cd156..c233d81 100644 --- a/gearslip/src/main/res/values-uk/strings.xml +++ b/gearslip/src/main/res/values-uk/strings.xml @@ -920,4 +920,8 @@ Gearslip оновлено до %1$s Встановлювати оновлення самостійно Лише готові версії, через Wi-Fi, коли авто не підключено + Слухаю… + Хвилинку… + Спробуйте «navigate home» або «play» і виконавця. Скажіть «help», щоб дізнатися більше. + Дозволити diff --git a/gearslip/src/main/res/values-zh-rCN/strings.xml b/gearslip/src/main/res/values-zh-rCN/strings.xml index 791934b..4b00235 100644 --- a/gearslip/src/main/res/values-zh-rCN/strings.xml +++ b/gearslip/src/main/res/values-zh-rCN/strings.xml @@ -890,4 +890,8 @@ Gearslip 已更新到 %1$s 自动安装更新 仅正式版本,通过 Wi-Fi,在未连接汽车时安装 + 正在聆听… + 请稍候… + 试试说“navigate home”,或“play”加歌手名。说“help”查看更多。 + 授权 diff --git a/gearslip/src/main/res/values/strings.xml b/gearslip/src/main/res/values/strings.xml index 612e196..4228766 100644 --- a/gearslip/src/main/res/values/strings.xml +++ b/gearslip/src/main/res/values/strings.xml @@ -603,6 +603,12 @@ Reply to %1$s Listening + + Listening… + One moment… + + Try “navigate home” or “play” and an artist. Say “help” for more. + Grant Sending to %1$s Sent to %1$s Couldn\'t reply