From 3b630e21c382812fd241fae4b823f9dcffd7d941 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 9 Apr 2026 09:51:03 +0000 Subject: Fix nullable LatLng? crash in MainActivity camera idle listener MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Same MapLibre 13.0.1 nullable corner fix — use listOfNotNull() and guard on size == 4 before calling loadWindGrid. https://claude.ai/code/session_01HXPjBsogsJVRwCiekDGkJX --- .../app/src/main/kotlin/org/terst/nav/MainActivity.kt | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'android-app/app/src') diff --git a/android-app/app/src/main/kotlin/org/terst/nav/MainActivity.kt b/android-app/app/src/main/kotlin/org/terst/nav/MainActivity.kt index ad5746d..6d02014 100644 --- a/android-app/app/src/main/kotlin/org/terst/nav/MainActivity.kt +++ b/android-app/app/src/main/kotlin/org/terst/nav/MainActivity.kt @@ -327,10 +327,18 @@ class MainActivity : AppCompatActivity(), SafetyFragment.SafetyListener { } maplibreMap.addOnCameraIdleListener { - val r = maplibreMap.projection.visibleRegion - val lats = listOf(r.nearLeft.latitude, r.nearRight.latitude, r.farLeft.latitude, r.farRight.latitude) - val lons = listOf(r.nearLeft.longitude, r.nearRight.longitude, r.farLeft.longitude, r.farRight.longitude) - viewModel.loadWindGrid(lats.min(), lats.max(), lons.min(), lons.max()) + val corners = listOfNotNull( + maplibreMap.projection.visibleRegion.nearLeft, + maplibreMap.projection.visibleRegion.nearRight, + maplibreMap.projection.visibleRegion.farLeft, + maplibreMap.projection.visibleRegion.farRight + ) + if (corners.size == 4) { + viewModel.loadWindGrid( + corners.minOf { it.latitude }, corners.maxOf { it.latitude }, + corners.minOf { it.longitude }, corners.maxOf { it.longitude } + ) + } } maplibreMap.addOnMapLongClickListener { _ -> -- cgit v1.2.3