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