From b8c82459785a7fef09eeccfda1d7975546bfc640 Mon Sep 17 00:00:00 2001 From: johan12345 Date: Sun, 5 Sep 2021 16:47:22 +0200 Subject: [PATCH] Android Auto: avoid unnecessary location updates --- app/src/google/java/net/vonforst/evmap/auto/MapScreen.kt | 5 +++++ app/src/google/java/net/vonforst/evmap/auto/WelcomeScreen.kt | 5 +++++ 2 files changed, 10 insertions(+) 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 f91d0894..ccd8590b 100644 --- a/app/src/google/java/net/vonforst/evmap/auto/MapScreen.kt +++ b/app/src/google/java/net/vonforst/evmap/auto/MapScreen.kt @@ -214,6 +214,11 @@ class MapScreen(ctx: CarContext, val session: EVMapSession, val favorites: Boole } override fun updateLocation(location: Location) { + if (location.latitude == this.location?.latitude + && location.longitude == this.location?.longitude + ) { + return + } this.location = location if (updateCoroutine != null) { // don't update while still loading last update diff --git a/app/src/google/java/net/vonforst/evmap/auto/WelcomeScreen.kt b/app/src/google/java/net/vonforst/evmap/auto/WelcomeScreen.kt index c4bd4158..bc2bc06f 100644 --- a/app/src/google/java/net/vonforst/evmap/auto/WelcomeScreen.kt +++ b/app/src/google/java/net/vonforst/evmap/auto/WelcomeScreen.kt @@ -64,6 +64,11 @@ class WelcomeScreen(ctx: CarContext, val session: EVMapSession) : Screen(ctx), L } override fun updateLocation(location: Location) { + if (location.latitude == this.location?.latitude + && location.longitude == this.location?.longitude + ) { + return + } this.location = location invalidate() }