diff --git a/app/src/google/java/net/vonforst/evmap/auto/FilterScreen.kt b/app/src/google/java/net/vonforst/evmap/auto/FilterScreen.kt
index 191c4990..4a6ede65 100644
--- a/app/src/google/java/net/vonforst/evmap/auto/FilterScreen.kt
+++ b/app/src/google/java/net/vonforst/evmap/auto/FilterScreen.kt
@@ -47,30 +47,6 @@ class FilterScreen(ctx: CarContext, val session: EVMapSession) : Screen(ctx) {
setHeaderAction(Action.BACK)
setActionStrip(
ActionStrip.Builder().apply {
- addAction(Action.Builder().apply {
- setIcon(
- CarIcon.Builder(
- IconCompat.createWithResource(
- carContext,
- if (prefs.placeSearchResultAndroidAuto != null) {
- R.drawable.ic_search_off
- } else {
- R.drawable.ic_search
- }
- )
- ).build()
-
- )
- setOnClickListener(ParkedOnlyOnClickListener.create {
- if (prefs.placeSearchResultAndroidAuto != null) {
- prefs.placeSearchResultAndroidAutoName = null
- prefs.placeSearchResultAndroidAuto = null
- screenManager.pop()
- } else {
- screenManager.push(PlaceSearchScreen(carContext, session))
- }
- })
- }.build())
addAction(Action.Builder().apply {
setIcon(
CarIcon.Builder(
diff --git a/app/src/google/java/net/vonforst/evmap/auto/MapScreen.kt b/app/src/google/java/net/vonforst/evmap/auto/MapScreen.kt
index 8fbbf3f9..128faf19 100644
--- a/app/src/google/java/net/vonforst/evmap/auto/MapScreen.kt
+++ b/app/src/google/java/net/vonforst/evmap/auto/MapScreen.kt
@@ -178,6 +178,42 @@ class MapScreen(ctx: CarContext, val session: EVMapSession) :
session.mapScreen = null
}
.build())
+ .addAction(Action.Builder().apply {
+ setIcon(
+ CarIcon.Builder(
+ IconCompat.createWithResource(
+ carContext,
+ if (prefs.placeSearchResultAndroidAuto != null) {
+ R.drawable.ic_search_off
+ } else {
+ R.drawable.ic_search
+ }
+ )
+ ).build()
+
+ )
+ setOnClickListener(ParkedOnlyOnClickListener.create {
+ if (prefs.placeSearchResultAndroidAuto != null) {
+ prefs.placeSearchResultAndroidAutoName = null
+ prefs.placeSearchResultAndroidAuto = null
+ screenManager.pushForResult(DummyReturnScreen(carContext)) {
+ chargers = null
+ loadChargers()
+ }
+ } else {
+ screenManager.pushForResult(
+ PlaceSearchScreen(
+ carContext,
+ session
+ )
+ ) {
+ chargers = null
+ loadChargers()
+ }
+ session.mapScreen = null
+ }
+ })
+ }.build())
.addAction(
Action.Builder()
.setIcon(
diff --git a/app/src/google/java/net/vonforst/evmap/auto/Utils.kt b/app/src/google/java/net/vonforst/evmap/auto/Utils.kt
index 32d81602..1aa055fc 100644
--- a/app/src/google/java/net/vonforst/evmap/auto/Utils.kt
+++ b/app/src/google/java/net/vonforst/evmap/auto/Utils.kt
@@ -3,13 +3,13 @@ package net.vonforst.evmap.auto
import android.content.Context
import android.graphics.Bitmap
import androidx.car.app.CarContext
+import androidx.car.app.Screen
import androidx.car.app.constraints.ConstraintManager
import androidx.car.app.hardware.common.CarUnit
-import androidx.car.app.model.CarColor
-import androidx.car.app.model.CarIcon
-import androidx.car.app.model.Distance
+import androidx.car.app.model.*
import androidx.car.app.versioning.CarAppApiLevels
import androidx.core.graphics.drawable.IconCompat
+import net.vonforst.evmap.R
import net.vonforst.evmap.api.availability.ChargepointStatus
import java.util.*
import kotlin.math.roundToInt
@@ -152,4 +152,17 @@ fun supportsCarApiLevel3(ctx: CarContext): Boolean {
}
}
return true
+}
+
+class DummyReturnScreen(ctx: CarContext) : Screen(ctx) {
+ /*
+ Dummy screen to get around template refresh limitations.
+ It immediately pops back to the previous screen.
+ */
+ override fun onGetTemplate(): Template {
+ screenManager.pop()
+ return MessageTemplate.Builder(carContext.getString(R.string.loading)).setLoading(true)
+ .build()
+ }
+
}
\ No newline at end of file
diff --git a/app/src/google/res/values-de/strings.xml b/app/src/google/res/values-de/strings.xml
index 5c8595c3..ee79b753 100644
--- a/app/src/google/res/values-de/strings.xml
+++ b/app/src/google/res/values-de/strings.xml
@@ -32,4 +32,5 @@
In den Einstellungen kannst du auch zwischen Google Maps und OpenStreetMap (Mapbox) für die Kartendaten wechseln.
alle Einträge ausgewählt
alle Einträge abgewählt
+ Lade…
\ No newline at end of file
diff --git a/app/src/google/res/values/strings.xml b/app/src/google/res/values/strings.xml
index 3dcfcd8c..fee88db5 100644
--- a/app/src/google/res/values/strings.xml
+++ b/app/src/google/res/values/strings.xml
@@ -32,4 +32,5 @@
In the settings you can also switch between Google Maps and OpenStreetMap (Mapbox) for the map data.
selected all items
deselected all items
+ Loading…
\ No newline at end of file