mirror of
https://github.com/twinksoftware/Gearslip.git
synced 2026-11-11 00:12:24 +01:00
The nav bar's mic button can be hidden; the car's voice key still works
This commit is contained in:
1 parent
6822abba90
commit
3cf41d3fc2
22 files changed
+57
No files matched your search
@@ -170,6 +170,7 @@ internal fun CarNavBar(navigator: CarNavigator) {
|
|||||||
// the screen above rather than a panel on it. Over the player it's see-through, so the
|
// the screen above rather than a panel on it. Over the player it's see-through, so the
|
||||||
// cover's glow carries on behind it.
|
// cover's glow carries on behind it.
|
||||||
val overPlayer = navigator.current == CarScreen.Media
|
val overPlayer = navigator.current == CarScreen.Media
|
||||||
|
val navMic by CarSettings.navMic.collectAsState()
|
||||||
Surface(color = if (overPlayer) androidx.compose.ui.graphics.Color.Transparent else MaterialTheme.colorScheme.background) {
|
Surface(color = if (overPlayer) androidx.compose.ui.graphics.Color.Transparent else MaterialTheme.colorScheme.background) {
|
||||||
BoxWithConstraints(Modifier.fillMaxWidth().height(NAV_BAR_HEIGHT).padding(horizontal = 10.dp)) {
|
BoxWithConstraints(Modifier.fillMaxWidth().height(NAV_BAR_HEIGHT).padding(horizontal = 10.dp)) {
|
||||||
Row(Modifier.fillMaxSize(), verticalAlignment = Alignment.CenterVertically) {
|
Row(Modifier.fillMaxSize(), verticalAlignment = Alignment.CenterVertically) {
|
||||||
@@ -180,8 +181,10 @@ internal fun CarNavBar(navigator: CarNavigator) {
|
|||||||
NavHomeButton(navigator, entries, running)
|
NavHomeButton(navigator, entries, running)
|
||||||
Spacer(Modifier.width(6.dp))
|
Spacer(Modifier.width(6.dp))
|
||||||
NavItem(MediaIcons.Apps, navigator.current == CarScreen.Apps) { navigator.apps() }
|
NavItem(MediaIcons.Apps, navigator.current == CarScreen.Apps) { navigator.apps() }
|
||||||
|
if (navMic) {
|
||||||
Spacer(Modifier.width(6.dp))
|
Spacer(Modifier.width(6.dp))
|
||||||
NavAssistantIcon()
|
NavAssistantIcon()
|
||||||
|
}
|
||||||
|
|
||||||
// Pinned shortcuts, then whatever else is open right now. A pinned app that's also
|
// Pinned shortcuts, then whatever else is open right now. A pinned app that's also
|
||||||
// open stays in its pinned spot, marked with a dot, instead of showing up twice.
|
// open stays in its pinned spot, marked with a dot, instead of showing up twice.
|
||||||
|
|||||||
@@ -68,6 +68,7 @@ private const val KEY_LOCATION_WARNING = "car_location_warning"
|
|||||||
private const val KEY_AUTOPLAY = "car_autoplay"
|
private const val KEY_AUTOPLAY = "car_autoplay"
|
||||||
private const val KEY_PLAYER_TITLE = "car_player_title"
|
private const val KEY_PLAYER_TITLE = "car_player_title"
|
||||||
private const val KEY_PLAYER_LEFT = "car_player_left"
|
private const val KEY_PLAYER_LEFT = "car_player_left"
|
||||||
|
private const val KEY_NAV_MIC = "car_nav_mic"
|
||||||
private const val KEY_THEME = "car_app_theme"
|
private const val KEY_THEME = "car_app_theme"
|
||||||
private const val KEY_UI_THEME = "car_ui_theme"
|
private const val KEY_UI_THEME = "car_ui_theme"
|
||||||
private const val KEY_DARK_STYLE = "car_dark_style"
|
private const val KEY_DARK_STYLE = "car_dark_style"
|
||||||
@@ -113,6 +114,7 @@ private const val KEY_CLUSTER_VIDEO = "cluster_video_enabled"
|
|||||||
private val autoplayFlow = MutableStateFlow(false)
|
private val autoplayFlow = MutableStateFlow(false)
|
||||||
private val playerTitleFlow = MutableStateFlow(false)
|
private val playerTitleFlow = MutableStateFlow(false)
|
||||||
private val playerLeftFlow = MutableStateFlow(false)
|
private val playerLeftFlow = MutableStateFlow(false)
|
||||||
|
private val navMicFlow = MutableStateFlow(true)
|
||||||
private val themeFlow = MutableStateFlow(AppTheme.PHONE)
|
private val themeFlow = MutableStateFlow(AppTheme.PHONE)
|
||||||
val appTheme: StateFlow<AppTheme> = themeFlow
|
val appTheme: StateFlow<AppTheme> = themeFlow
|
||||||
private val darkStyleFlow = MutableStateFlow(DarkStyle.BLACK)
|
private val darkStyleFlow = MutableStateFlow(DarkStyle.BLACK)
|
||||||
@@ -242,6 +244,9 @@ private const val KEY_CLUSTER_VIDEO = "cluster_video_enabled"
|
|||||||
/** The home screen's player sits left of the map instead of right of it. */
|
/** The home screen's player sits left of the map instead of right of it. */
|
||||||
val playerLeft: StateFlow<Boolean> = playerLeftFlow
|
val playerLeft: StateFlow<Boolean> = playerLeftFlow
|
||||||
|
|
||||||
|
/** The assistant's mic button in the nav bar. Off hides only the button: the car's voice key still works. */
|
||||||
|
val navMic: StateFlow<Boolean> = navMicFlow
|
||||||
|
|
||||||
/** Lyrics from BetterLyrics and KuGou as well as LRCLIB; off sends song details to LRCLIB only. */
|
/** Lyrics from BetterLyrics and KuGou as well as LRCLIB; off sends song details to LRCLIB only. */
|
||||||
|
|
||||||
val scale: StateFlow<Float> = scaleFlow
|
val scale: StateFlow<Float> = scaleFlow
|
||||||
@@ -397,6 +402,7 @@ private const val KEY_CLUSTER_VIDEO = "cluster_video_enabled"
|
|||||||
autoplayFlow.value = AppSettings.getString(app, KEY_AUTOPLAY, "false") == "true"
|
autoplayFlow.value = AppSettings.getString(app, KEY_AUTOPLAY, "false") == "true"
|
||||||
playerTitleFlow.value = AppSettings.getString(app, KEY_PLAYER_TITLE, "false") == "true"
|
playerTitleFlow.value = AppSettings.getString(app, KEY_PLAYER_TITLE, "false") == "true"
|
||||||
playerLeftFlow.value = AppSettings.getString(app, KEY_PLAYER_LEFT, "false") == "true"
|
playerLeftFlow.value = AppSettings.getString(app, KEY_PLAYER_LEFT, "false") == "true"
|
||||||
|
navMicFlow.value = AppSettings.getString(app, KEY_NAV_MIC, "true") == "true"
|
||||||
pipeAudioFlow.value = AppSettings.getString(app, KEY_PIPE_AUDIO, "true") == "true"
|
pipeAudioFlow.value = AppSettings.getString(app, KEY_PIPE_AUDIO, "true") == "true"
|
||||||
// Until the driver sets it, on for USB audio and off for Bluetooth, where the map app's
|
// Until the driver sets it, on for USB audio and off for Bluetooth, where the map app's
|
||||||
// own voice already reaches the car.
|
// own voice already reaches the car.
|
||||||
@@ -483,6 +489,11 @@ private const val KEY_CLUSTER_VIDEO = "cluster_video_enabled"
|
|||||||
AppSettings.putString(app, KEY_PLAYER_TITLE, on.toString())
|
AppSettings.putString(app, KEY_PLAYER_TITLE, on.toString())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun setNavMic(on: Boolean) {
|
||||||
|
navMicFlow.value = on
|
||||||
|
AppSettings.putString(app, KEY_NAV_MIC, on.toString())
|
||||||
|
}
|
||||||
|
|
||||||
fun setPlayerLeft(on: Boolean) {
|
fun setPlayerLeft(on: Boolean) {
|
||||||
playerLeftFlow.value = on
|
playerLeftFlow.value = on
|
||||||
AppSettings.putString(app, KEY_PLAYER_LEFT, on.toString())
|
AppSettings.putString(app, KEY_PLAYER_LEFT, on.toString())
|
||||||
|
|||||||
@@ -69,6 +69,7 @@ fun CarSettingsScreen() {
|
|||||||
val autoplay by CarSettings.autoplay.collectAsState()
|
val autoplay by CarSettings.autoplay.collectAsState()
|
||||||
val playerTitle by CarSettings.playerTitle.collectAsState()
|
val playerTitle by CarSettings.playerTitle.collectAsState()
|
||||||
val playerLeft by CarSettings.playerLeft.collectAsState()
|
val playerLeft by CarSettings.playerLeft.collectAsState()
|
||||||
|
val navMic by CarSettings.navMic.collectAsState()
|
||||||
val theme by CarSettings.appTheme.collectAsState()
|
val theme by CarSettings.appTheme.collectAsState()
|
||||||
val uiTheme by CarSettings.uiTheme.collectAsState()
|
val uiTheme by CarSettings.uiTheme.collectAsState()
|
||||||
val darkStyle by CarSettings.darkStyle.collectAsState()
|
val darkStyle by CarSettings.darkStyle.collectAsState()
|
||||||
@@ -186,6 +187,9 @@ fun CarSettingsScreen() {
|
|||||||
navBar,
|
navBar,
|
||||||
) { CarSettings.setNavBarMode(it) }
|
) { CarSettings.setNavBarMode(it) }
|
||||||
}
|
}
|
||||||
|
item {
|
||||||
|
SwitchRow(stringResource(R.string.car_nav_mic), stringResource(R.string.car_nav_mic_note), navMic) { CarSettings.setNavMic(it) }
|
||||||
|
}
|
||||||
item {
|
item {
|
||||||
ChoiceRow(
|
ChoiceRow(
|
||||||
stringResource(R.string.car_player_nav_bar),
|
stringResource(R.string.car_player_nav_bar),
|
||||||
|
|||||||
@@ -275,6 +275,7 @@ private fun GroupRows(group: CarGroup) {
|
|||||||
val autoplay by CarSettings.autoplay.collectAsState()
|
val autoplay by CarSettings.autoplay.collectAsState()
|
||||||
val playerTitle by CarSettings.playerTitle.collectAsState()
|
val playerTitle by CarSettings.playerTitle.collectAsState()
|
||||||
val playerLeft by CarSettings.playerLeft.collectAsState()
|
val playerLeft by CarSettings.playerLeft.collectAsState()
|
||||||
|
val navMic by CarSettings.navMic.collectAsState()
|
||||||
val theme by CarSettings.appTheme.collectAsState()
|
val theme by CarSettings.appTheme.collectAsState()
|
||||||
val uiTheme by CarSettings.uiTheme.collectAsState()
|
val uiTheme by CarSettings.uiTheme.collectAsState()
|
||||||
val darkStyle by CarSettings.darkStyle.collectAsState()
|
val darkStyle by CarSettings.darkStyle.collectAsState()
|
||||||
@@ -318,6 +319,8 @@ private fun GroupRows(group: CarGroup) {
|
|||||||
CarGroup.NAV_BAR -> {
|
CarGroup.NAV_BAR -> {
|
||||||
Choice(stringResource(R.string.car_nav_bar), navBarChoices(), navBar, CarSettings::setNavBarMode)
|
Choice(stringResource(R.string.car_nav_bar), navBarChoices(), navBar, CarSettings::setNavBarMode)
|
||||||
SettingsDivider()
|
SettingsDivider()
|
||||||
|
Toggle(stringResource(R.string.car_nav_mic), navMic, CarSettings::setNavMic, note = stringResource(R.string.car_nav_mic_note))
|
||||||
|
SettingsDivider()
|
||||||
Choice(stringResource(R.string.car_player_nav_bar), listOf(false to stringResource(R.string.car_skip_buttons), true to stringResource(R.string.car_song_title)), playerTitle, CarSettings::setPlayerTitle)
|
Choice(stringResource(R.string.car_player_nav_bar), listOf(false to stringResource(R.string.car_skip_buttons), true to stringResource(R.string.car_song_title)), playerTitle, CarSettings::setPlayerTitle)
|
||||||
SettingsDivider()
|
SettingsDivider()
|
||||||
Choice(stringResource(R.string.car_player_beside_map), listOf(false to stringResource(R.string.car_right), true to stringResource(R.string.car_left)), playerLeft, CarSettings::setPlayerLeft, note = stringResource(R.string.car_player_beside_map_note))
|
Choice(stringResource(R.string.car_player_beside_map), listOf(false to stringResource(R.string.car_right), true to stringResource(R.string.car_left)), playerLeft, CarSettings::setPlayerLeft, note = stringResource(R.string.car_player_beside_map_note))
|
||||||
|
|||||||
@@ -980,4 +980,6 @@
|
|||||||
<string name="browser_share_label">صفحة البدء في Gearslip</string>
|
<string name="browser_share_label">صفحة البدء في Gearslip</string>
|
||||||
<string name="summary_adblock_on">الإعلانات محظورة</string>
|
<string name="summary_adblock_on">الإعلانات محظورة</string>
|
||||||
<string name="summary_adblock_off">الإعلانات غير محظورة</string>
|
<string name="summary_adblock_off">الإعلانات غير محظورة</string>
|
||||||
|
<string name="car_nav_mic">زر الميكروفون</string>
|
||||||
|
<string name="car_nav_mic_note">زر المساعد في شريط التنقل. يعمل زر الصوت في السيارة في كل الأحوال.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -960,4 +960,6 @@
|
|||||||
<string name="browser_share_label">Úvodní stránka Gearslip</string>
|
<string name="browser_share_label">Úvodní stránka Gearslip</string>
|
||||||
<string name="summary_adblock_on">Reklamy blokovány</string>
|
<string name="summary_adblock_on">Reklamy blokovány</string>
|
||||||
<string name="summary_adblock_off">Reklamy neblokovány</string>
|
<string name="summary_adblock_off">Reklamy neblokovány</string>
|
||||||
|
<string name="car_nav_mic">Tlačítko mikrofonu</string>
|
||||||
|
<string name="car_nav_mic_note">Tlačítko asistenta na navigační liště. Hlasové tlačítko auta funguje tak jako tak.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -822,4 +822,6 @@
|
|||||||
<string name="browser_share_label">Gearslip-Startseite</string>
|
<string name="browser_share_label">Gearslip-Startseite</string>
|
||||||
<string name="summary_adblock_on">Werbung blockiert</string>
|
<string name="summary_adblock_on">Werbung blockiert</string>
|
||||||
<string name="summary_adblock_off">Werbung nicht blockiert</string>
|
<string name="summary_adblock_off">Werbung nicht blockiert</string>
|
||||||
|
<string name="car_nav_mic">Mikrofontaste</string>
|
||||||
|
<string name="car_nav_mic_note">Die Assistent-Taste in der Navigationsleiste. Die Sprachtaste des Autos funktioniert so oder so.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -824,4 +824,6 @@
|
|||||||
<string name="browser_share_label">Inicio de Gearslip</string>
|
<string name="browser_share_label">Inicio de Gearslip</string>
|
||||||
<string name="summary_adblock_on">Anuncios bloqueados</string>
|
<string name="summary_adblock_on">Anuncios bloqueados</string>
|
||||||
<string name="summary_adblock_off">Anuncios sin bloquear</string>
|
<string name="summary_adblock_off">Anuncios sin bloquear</string>
|
||||||
|
<string name="car_nav_mic">Botón del micrófono</string>
|
||||||
|
<string name="car_nav_mic_note">El botón del asistente en la barra de navegación. El botón de voz del coche funciona igualmente.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -950,4 +950,6 @@
|
|||||||
<string name="browser_share_label">Page d’accueil Gearslip</string>
|
<string name="browser_share_label">Page d’accueil Gearslip</string>
|
||||||
<string name="summary_adblock_on">Pubs bloquées</string>
|
<string name="summary_adblock_on">Pubs bloquées</string>
|
||||||
<string name="summary_adblock_off">Pubs non bloquées</string>
|
<string name="summary_adblock_off">Pubs non bloquées</string>
|
||||||
|
<string name="car_nav_mic">Bouton micro</string>
|
||||||
|
<string name="car_nav_mic_note">Le bouton de l’assistant dans la barre de navigation. Le bouton vocal de la voiture fonctionne dans tous les cas.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -950,4 +950,6 @@
|
|||||||
<string name="browser_share_label">Pagina iniziale Gearslip</string>
|
<string name="browser_share_label">Pagina iniziale Gearslip</string>
|
||||||
<string name="summary_adblock_on">Pubblicità bloccata</string>
|
<string name="summary_adblock_on">Pubblicità bloccata</string>
|
||||||
<string name="summary_adblock_off">Pubblicità non bloccata</string>
|
<string name="summary_adblock_off">Pubblicità non bloccata</string>
|
||||||
|
<string name="car_nav_mic">Pulsante microfono</string>
|
||||||
|
<string name="car_nav_mic_note">Il pulsante dell’assistente nella barra di navigazione. Il tasto vocale dell’auto funziona comunque.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -930,4 +930,6 @@
|
|||||||
<string name="browser_share_label">Gearslip スタートページ</string>
|
<string name="browser_share_label">Gearslip スタートページ</string>
|
||||||
<string name="summary_adblock_on">広告をブロック中</string>
|
<string name="summary_adblock_on">広告をブロック中</string>
|
||||||
<string name="summary_adblock_off">広告をブロックしない</string>
|
<string name="summary_adblock_off">広告をブロックしない</string>
|
||||||
|
<string name="car_nav_mic">マイクボタン</string>
|
||||||
|
<string name="car_nav_mic_note">ナビゲーションバーのアシスタントボタンです。車の音声ボタンはどちらでも使えます。</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -930,4 +930,6 @@
|
|||||||
<string name="browser_share_label">Gearslip 시작 페이지</string>
|
<string name="browser_share_label">Gearslip 시작 페이지</string>
|
||||||
<string name="summary_adblock_on">광고 차단 중</string>
|
<string name="summary_adblock_on">광고 차단 중</string>
|
||||||
<string name="summary_adblock_off">광고 차단 안 함</string>
|
<string name="summary_adblock_off">광고 차단 안 함</string>
|
||||||
|
<string name="car_nav_mic">마이크 버튼</string>
|
||||||
|
<string name="car_nav_mic_note">내비게이션 바의 어시스턴트 버튼입니다. 차량의 음성 버튼은 어느 쪽이든 작동합니다.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -940,4 +940,6 @@
|
|||||||
<string name="browser_share_label">Gearslip-startpagina</string>
|
<string name="browser_share_label">Gearslip-startpagina</string>
|
||||||
<string name="summary_adblock_on">Advertenties geblokkeerd</string>
|
<string name="summary_adblock_on">Advertenties geblokkeerd</string>
|
||||||
<string name="summary_adblock_off">Advertenties niet geblokkeerd</string>
|
<string name="summary_adblock_off">Advertenties niet geblokkeerd</string>
|
||||||
|
<string name="car_nav_mic">Microfoonknop</string>
|
||||||
|
<string name="car_nav_mic_note">De assistentknop in de navigatiebalk. De spraakknop van de auto werkt hoe dan ook.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -960,4 +960,6 @@
|
|||||||
<string name="browser_share_label">Strona startowa Gearslip</string>
|
<string name="browser_share_label">Strona startowa Gearslip</string>
|
||||||
<string name="summary_adblock_on">Reklamy blokowane</string>
|
<string name="summary_adblock_on">Reklamy blokowane</string>
|
||||||
<string name="summary_adblock_off">Reklamy nieblokowane</string>
|
<string name="summary_adblock_off">Reklamy nieblokowane</string>
|
||||||
|
<string name="car_nav_mic">Przycisk mikrofonu</string>
|
||||||
|
<string name="car_nav_mic_note">Przycisk asystenta na pasku nawigacji. Przycisk głosowy w samochodzie działa niezależnie od tego.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -950,4 +950,6 @@
|
|||||||
<string name="browser_share_label">Página inicial do Gearslip</string>
|
<string name="browser_share_label">Página inicial do Gearslip</string>
|
||||||
<string name="summary_adblock_on">Anúncios bloqueados</string>
|
<string name="summary_adblock_on">Anúncios bloqueados</string>
|
||||||
<string name="summary_adblock_off">Anúncios não bloqueados</string>
|
<string name="summary_adblock_off">Anúncios não bloqueados</string>
|
||||||
|
<string name="car_nav_mic">Botão do microfone</string>
|
||||||
|
<string name="car_nav_mic_note">O botão do assistente na barra de navegação. O botão de voz do carro funciona de qualquer jeito.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -832,4 +832,6 @@
|
|||||||
<string name="browser_share_label">Pagina de start Gearslip</string>
|
<string name="browser_share_label">Pagina de start Gearslip</string>
|
||||||
<string name="summary_adblock_on">Reclame blocate</string>
|
<string name="summary_adblock_on">Reclame blocate</string>
|
||||||
<string name="summary_adblock_off">Reclame neblocate</string>
|
<string name="summary_adblock_off">Reclame neblocate</string>
|
||||||
|
<string name="car_nav_mic">Butonul microfonului</string>
|
||||||
|
<string name="car_nav_mic_note">Butonul asistentului din bara de navigare. Butonul vocal al mașinii funcționează oricum.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -960,4 +960,6 @@
|
|||||||
<string name="browser_share_label">Стартовая страница Gearslip</string>
|
<string name="browser_share_label">Стартовая страница Gearslip</string>
|
||||||
<string name="summary_adblock_on">Реклама блокируется</string>
|
<string name="summary_adblock_on">Реклама блокируется</string>
|
||||||
<string name="summary_adblock_off">Реклама не блокируется</string>
|
<string name="summary_adblock_off">Реклама не блокируется</string>
|
||||||
|
<string name="car_nav_mic">Кнопка микрофона</string>
|
||||||
|
<string name="car_nav_mic_note">Кнопка ассистента на панели навигации. Голосовая кнопка машины работает в любом случае.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -940,4 +940,6 @@
|
|||||||
<string name="browser_share_label">Gearslips startsida</string>
|
<string name="browser_share_label">Gearslips startsida</string>
|
||||||
<string name="summary_adblock_on">Annonser blockeras</string>
|
<string name="summary_adblock_on">Annonser blockeras</string>
|
||||||
<string name="summary_adblock_off">Annonser blockeras inte</string>
|
<string name="summary_adblock_off">Annonser blockeras inte</string>
|
||||||
|
<string name="car_nav_mic">Mikrofonknapp</string>
|
||||||
|
<string name="car_nav_mic_note">Assistentens knapp i navigeringsfältet. Bilens egen röstknapp fungerar oavsett.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -940,4 +940,6 @@
|
|||||||
<string name="browser_share_label">Gearslip başlangıç sayfası</string>
|
<string name="browser_share_label">Gearslip başlangıç sayfası</string>
|
||||||
<string name="summary_adblock_on">Reklamlar engelleniyor</string>
|
<string name="summary_adblock_on">Reklamlar engelleniyor</string>
|
||||||
<string name="summary_adblock_off">Reklamlar engellenmiyor</string>
|
<string name="summary_adblock_off">Reklamlar engellenmiyor</string>
|
||||||
|
<string name="car_nav_mic">Mikrofon düğmesi</string>
|
||||||
|
<string name="car_nav_mic_note">Gezinme çubuğundaki asistan düğmesi. Aracın kendi ses düğmesi her durumda çalışır.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -960,4 +960,6 @@
|
|||||||
<string name="browser_share_label">Стартова сторінка Gearslip</string>
|
<string name="browser_share_label">Стартова сторінка Gearslip</string>
|
||||||
<string name="summary_adblock_on">Реклама блокується</string>
|
<string name="summary_adblock_on">Реклама блокується</string>
|
||||||
<string name="summary_adblock_off">Реклама не блокується</string>
|
<string name="summary_adblock_off">Реклама не блокується</string>
|
||||||
|
<string name="car_nav_mic">Кнопка мікрофона</string>
|
||||||
|
<string name="car_nav_mic_note">Кнопка асистента на панелі навігації. Голосова кнопка авто працює в будь-якому разі.</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -930,4 +930,6 @@
|
|||||||
<string name="browser_share_label">Gearslip 起始页</string>
|
<string name="browser_share_label">Gearslip 起始页</string>
|
||||||
<string name="summary_adblock_on">拦截广告</string>
|
<string name="summary_adblock_on">拦截广告</string>
|
||||||
<string name="summary_adblock_off">不拦截广告</string>
|
<string name="summary_adblock_off">不拦截广告</string>
|
||||||
|
<string name="car_nav_mic">麦克风按钮</string>
|
||||||
|
<string name="car_nav_mic_note">导航栏中的助理按钮。车辆自带的语音按钮始终可用。</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -989,4 +989,6 @@
|
|||||||
<string name="browser_share_label">Gearslip start page</string>
|
<string name="browser_share_label">Gearslip start page</string>
|
||||||
<string name="summary_adblock_on">Ads blocked</string>
|
<string name="summary_adblock_on">Ads blocked</string>
|
||||||
<string name="summary_adblock_off">Ads not blocked</string>
|
<string name="summary_adblock_off">Ads not blocked</string>
|
||||||
|
<string name="car_nav_mic">Mic button</string>
|
||||||
|
<string name="car_nav_mic_note">The assistant\'s button in the nav bar. The car\'s own voice button works either way.</string>
|
||||||
</resources>
|
</resources>
|
||||||
Reference in new issue
Block a user