diff --git a/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/WirelessButton.kt b/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/WirelessButton.kt index 5f3c9a2..8d639d5 100644 --- a/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/WirelessButton.kt +++ b/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/WirelessButton.kt @@ -116,6 +116,21 @@ internal fun WirelessButton() { } .padding(vertical = 14.dp), ) + // A car the driver once said no to never asks again, so offer the way back here. + if (app.seb3thehacker.gearslip.wireless.WirelessAuto.declinedEarlier(context, device)) { + Text( + stringResource(R.string.wireless_auto_off), + style = MaterialTheme.typography.bodyMedium, + color = MaterialTheme.colorScheme.onSurfaceVariant, + ) + TextButton( + onClick = { + devices = null + app.seb3thehacker.gearslip.wireless.WirelessAuto.askAgain(context, device) + }, + modifier = Modifier.padding(bottom = 4.dp), + ) { Text(stringResource(R.string.wireless_auto_turn_on)) } + } } // The car has to be paired before it shows up here, and pairing happens in Android's settings. if (list.isNotEmpty()) { diff --git a/gearslip/src/main/java/app/seb3thehacker/gearslip/wireless/WirelessAuto.kt b/gearslip/src/main/java/app/seb3thehacker/gearslip/wireless/WirelessAuto.kt index 824138a..b6429da 100644 --- a/gearslip/src/main/java/app/seb3thehacker/gearslip/wireless/WirelessAuto.kt +++ b/gearslip/src/main/java/app/seb3thehacker/gearslip/wireless/WirelessAuto.kt @@ -72,6 +72,20 @@ object WirelessAuto { }, Handler(Looper.getMainLooper())) } + /** True when the driver said no to this car connecting by itself, and it still can't. */ + fun declinedEarlier(context: Context, device: BluetoothDevice): Boolean { + val manager = context.getSystemService(CompanionDeviceManager::class.java) ?: return false + return !isCompanion(manager, device.address) && + context.getSharedPreferences(PREFS, Context.MODE_PRIVATE).getBoolean(device.address, false) + } + + /** Forgets the earlier no and shows Android's dialog for [device] again. */ + fun askAgain(context: Context, device: BluetoothDevice) { + log.i("auto-connect: asking again about ${WirelessLink.name(device)}") + context.getSharedPreferences(PREFS, Context.MODE_PRIVATE).edit().remove(device.address).apply() + connectedByHand(context, device) + } + /** The driver allowed it in Android's dialog. */ fun approved(context: Context, address: String) { log.i("auto-connect: allowed") diff --git a/gearslip/src/main/res/values-ar/strings.xml b/gearslip/src/main/res/values-ar/strings.xml index eb3d5e0..439d7a6 100644 --- a/gearslip/src/main/res/values-ar/strings.xml +++ b/gearslip/src/main/res/values-ar/strings.xml @@ -376,6 +376,8 @@ أي سيارة؟ هاتفك غير مقترن بأي جهاز بعد. أقرنه بالسيارة أولًا. السيارة غير موجودة في القائمة؟ أقرنها بهاتفك أولًا. + لا يتصل تلقائيًا + اسمح له بالاتصال تلقائيًا إعدادات البلوتوث diff --git a/gearslip/src/main/res/values-cs/strings.xml b/gearslip/src/main/res/values-cs/strings.xml index 92111b4..794b3b8 100644 --- a/gearslip/src/main/res/values-cs/strings.xml +++ b/gearslip/src/main/res/values-cs/strings.xml @@ -374,6 +374,8 @@ Které auto? Telefon zatím není s ničím spárovaný. Nejdřív ho spárujte s autem. Auto v seznamu není? Nejdřív ho spárujte s telefonem. + Nepřipojuje se samo + Povolit automatické připojení Nastavení Bluetooth diff --git a/gearslip/src/main/res/values-de/strings.xml b/gearslip/src/main/res/values-de/strings.xml index 39538ea..03be259 100644 --- a/gearslip/src/main/res/values-de/strings.xml +++ b/gearslip/src/main/res/values-de/strings.xml @@ -655,6 +655,8 @@ Welches Auto? Ihr Telefon ist noch nicht mit etwas gepaart. Zuerst mit dem Auto. Auto nicht aufgeführt? Zuerst mit deinem Handy. + Verbindet sich nicht von selbst + Automatisch verbinden lassen Bluetooth-Einstellungen Sprache: live Wörter Stimme: letzte Worte diff --git a/gearslip/src/main/res/values-es/strings.xml b/gearslip/src/main/res/values-es/strings.xml index 83f720b..f1ebb55 100644 --- a/gearslip/src/main/res/values-es/strings.xml +++ b/gearslip/src/main/res/values-es/strings.xml @@ -254,6 +254,8 @@ ¿Qué coche? Tu teléfono no está emparejado con nada todavía. Encima con el coche primero. ¿El auto no aparece? Pásala primero con tu teléfono. + No se conecta solo + Dejar que se conecte solo Ajustes Bluetooth Voz: palabras en vivo Voz: palabras finales diff --git a/gearslip/src/main/res/values-fr/strings.xml b/gearslip/src/main/res/values-fr/strings.xml index 8b34652..97457f8 100644 --- a/gearslip/src/main/res/values-fr/strings.xml +++ b/gearslip/src/main/res/values-fr/strings.xml @@ -373,6 +373,8 @@ Quelle voiture ? Votre téléphone n’est encore associé à rien. Associez-le d’abord à la voiture. La voiture n’apparaît pas ? Associez-la d’abord à votre téléphone. + Ne se connecte pas tout seul + Le laisser se connecter tout seul Paramètres Bluetooth diff --git a/gearslip/src/main/res/values-it/strings.xml b/gearslip/src/main/res/values-it/strings.xml index 423d3db..fa55a70 100644 --- a/gearslip/src/main/res/values-it/strings.xml +++ b/gearslip/src/main/res/values-it/strings.xml @@ -373,6 +373,8 @@ Quale auto? Il telefono non è ancora associato a nulla. Associalo prima all’auto. L’auto non è in elenco? Associala prima al telefono. + Non si collega da solo + Lascia che si colleghi da solo Impostazioni Bluetooth diff --git a/gearslip/src/main/res/values-ja/strings.xml b/gearslip/src/main/res/values-ja/strings.xml index 5d97a11..687f917 100644 --- a/gearslip/src/main/res/values-ja/strings.xml +++ b/gearslip/src/main/res/values-ja/strings.xml @@ -371,6 +371,8 @@ どの車ですか? スマートフォンはまだ何ともペア設定されていません。先に車とペア設定してください。 車が表示されない場合は、先にスマートフォンとペア設定してください。 + 自動では接続しません + 自動で接続する Bluetooth の設定 diff --git a/gearslip/src/main/res/values-ko/strings.xml b/gearslip/src/main/res/values-ko/strings.xml index eae3ffd..196f204 100644 --- a/gearslip/src/main/res/values-ko/strings.xml +++ b/gearslip/src/main/res/values-ko/strings.xml @@ -371,6 +371,8 @@ 어느 차량인가요? 휴대전화가 아직 아무것과도 페어링되지 않았습니다. 먼저 차량과 페어링하세요. 차량이 목록에 없나요? 먼저 휴대전화와 페어링하세요. + 자동으로 연결되지 않음 + 자동으로 연결하도록 허용 블루투스 설정 diff --git a/gearslip/src/main/res/values-nl/strings.xml b/gearslip/src/main/res/values-nl/strings.xml index 0edd823..ac40061 100644 --- a/gearslip/src/main/res/values-nl/strings.xml +++ b/gearslip/src/main/res/values-nl/strings.xml @@ -372,6 +372,8 @@ Welke auto? Je telefoon is nog met niets gekoppeld. Koppel hem eerst met de auto. Auto staat er niet bij? Koppel hem eerst met je telefoon. + Maakt niet vanzelf verbinding + Vanzelf verbinding laten maken Bluetooth-instellingen diff --git a/gearslip/src/main/res/values-pl/strings.xml b/gearslip/src/main/res/values-pl/strings.xml index c1cf27b..7318012 100644 --- a/gearslip/src/main/res/values-pl/strings.xml +++ b/gearslip/src/main/res/values-pl/strings.xml @@ -374,6 +374,8 @@ Który samochód? Telefon nie jest jeszcze z niczym sparowany. Najpierw sparuj go z samochodem. Nie ma samochodu na liście? Najpierw sparuj go z telefonem. + Nie łączy się samo + Pozwól łączyć się samodzielnie Ustawienia Bluetooth diff --git a/gearslip/src/main/res/values-pt-rBR/strings.xml b/gearslip/src/main/res/values-pt-rBR/strings.xml index 7481878..5648644 100644 --- a/gearslip/src/main/res/values-pt-rBR/strings.xml +++ b/gearslip/src/main/res/values-pt-rBR/strings.xml @@ -373,6 +373,8 @@ Qual carro? Seu celular ainda não está pareado com nada. Pareie com o carro primeiro. O carro não aparece? Pareie com o celular primeiro. + Não se conecta sozinho + Deixar conectar sozinho Configurações de Bluetooth diff --git a/gearslip/src/main/res/values-ru/strings.xml b/gearslip/src/main/res/values-ru/strings.xml index 7c4a9a6..45020d7 100644 --- a/gearslip/src/main/res/values-ru/strings.xml +++ b/gearslip/src/main/res/values-ru/strings.xml @@ -374,6 +374,8 @@ Какая машина? Телефон пока ни с чем не связан. Сначала свяжите его с машиной. Машины нет в списке? Сначала свяжите её с телефоном. + Не подключается сам + Разрешить подключаться самому Настройки Bluetooth diff --git a/gearslip/src/main/res/values-sv/strings.xml b/gearslip/src/main/res/values-sv/strings.xml index d38335c..04c11cc 100644 --- a/gearslip/src/main/res/values-sv/strings.xml +++ b/gearslip/src/main/res/values-sv/strings.xml @@ -372,6 +372,8 @@ Vilken bil? Telefonen är inte parkopplad med något än. Parkoppla den med bilen först. Finns inte bilen med? Parkoppla den med telefonen först. + Ansluter inte av sig själv + Låt den ansluta av sig själv Bluetooth-inställningar diff --git a/gearslip/src/main/res/values-tr/strings.xml b/gearslip/src/main/res/values-tr/strings.xml index fbdf7e8..4c31fa2 100644 --- a/gearslip/src/main/res/values-tr/strings.xml +++ b/gearslip/src/main/res/values-tr/strings.xml @@ -372,6 +372,8 @@ Hangi araç? Telefonunuz henüz hiçbir şeyle eşlenmedi. Önce araçla eşleyin. Araç listede yok mu? Önce telefonunuzla eşleyin. + Kendiliğinden bağlanmıyor + Kendiliğinden bağlanmasına izin ver Bluetooth ayarları diff --git a/gearslip/src/main/res/values-uk/strings.xml b/gearslip/src/main/res/values-uk/strings.xml index 58ce91c..acad89f 100644 --- a/gearslip/src/main/res/values-uk/strings.xml +++ b/gearslip/src/main/res/values-uk/strings.xml @@ -374,6 +374,8 @@ Яке авто? Телефон поки ні з чим не з’єднано. Спершу з’єднайте його з авто. Авто немає в списку? Спершу з’єднайте його з телефоном. + Не підключається сам + Дозволити підключатися самому Налаштування Bluetooth diff --git a/gearslip/src/main/res/values-zh-rCN/strings.xml b/gearslip/src/main/res/values-zh-rCN/strings.xml index dc0062d..7e5f50a 100644 --- a/gearslip/src/main/res/values-zh-rCN/strings.xml +++ b/gearslip/src/main/res/values-zh-rCN/strings.xml @@ -371,6 +371,8 @@ 哪辆车? 您的手机还没有与任何设备配对。请先与车配对。 没有看到您的车?请先将它与手机配对。 + 不会自动连接 + 允许自动连接 蓝牙设置 diff --git a/gearslip/src/main/res/values/strings.xml b/gearslip/src/main/res/values/strings.xml index 8a384f9..fd515f8 100644 --- a/gearslip/src/main/res/values/strings.xml +++ b/gearslip/src/main/res/values/strings.xml @@ -381,6 +381,8 @@ Which car? Your phone isn\'t paired with anything yet. Pair it with the car first. Car not listed? Pair it with your phone first. + Doesn\'t connect on its own + Let it connect on its own Bluetooth settings