ReviewOS

also looking at this

craft-native/craft

fix(mobile): preserve native editing, navigation, and durable media requests

#369
Merged chris wants to merge codex/native-vertical-scroll-tab-swipes into main
36 files +864 -185

Review threads live on the whole diff, not on one commit, so none are shown here - a thread's line means something in the branch's final form, and painting it into an intermediate step would put it on code it is not about.

packages/android/templates/CraftNativeMapGoogle.kt.templatemodified+2-3
Changes to packages/android/templates/CraftNativeMapGoogle.kt.template
@@ -397,10 +397,10 @@ private class CraftNativeMapView(context: Context) : FrameLayout(context), OnMap
397397 "$id:${value.first.latitude},${value.first.longitude}"
398398 }
399399 val polylineKey = polylines.toSortedMap().entries.joinToString("|") { (id, value) ->
400 "$id:" + value.points.joinToString(";") { point -> "${point.latitude},${point.longitude}" }
400 "$id:" + value.first.joinToString(";") { point -> "${point.latitude},${point.longitude}" }
401401 }
402402 val polygonKey = polygons.toSortedMap().entries.joinToString("|") { (id, value) ->
403 "$id:" + value.first.joinToString(";") { point -> "${point.latitude},${point.longitude}" }
403 "$id:" + value.points.joinToString(";") { point -> "${point.latitude},${point.longitude}" }
404404 }
405405 return "m[$markerKey]p[$polylineKey]g[$polygonKey]"
406406 }
@@ -413,7 +413,6 @@ private class CraftNativeMapView(context: Context) : FrameLayout(context), OnMap
413413 markers.values.forEach { builder.include(it.position); count++ }
414414 polylines.values.flatMap { it.points }.forEach { builder.include(it); count++ }
415415 polygons.values.flatMap { it.points }.forEach { builder.include(it); count++ }
416 polygons.values.flatMap { it.points }.forEach { builder.include(it); count++ }
417416 if (count == 0) return false
418417 post {
419418 if (width > 0 && height > 0) {