aeharding / aeharding/wingover

MapKit setInsets silently resets rotation (track-up bearing lost on inset change)

Abierto
#147 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
TypeScript
Estrellas
0
Forks
0
Merge medio
4 h 2 min
PR fusionados (30 d)
6

Descripción

Found during adversarial review of #145, reading the MapKit JS v6 bundle: `Map.setPadding()` executes `this.rotation = 0` when the map lays out. The adapter's `setInsets()` calls `map.padding = ...`, so an inset change while track-up is engaged (orientation change, safe-area shift, replay pane glide) snaps the camera to north.

Not caused by #145 (pre-existing), but flight-relevant: the live map re-applies insets on rotation, exactly when a track-up pilot would notice the bearing reset.

Repro direction: engage track-up in flight (or mock), rotate the device or otherwise trigger MapCanvas's inset re-resolution, observe bearing snap to 0.

Fix direction: in the mapkit adapter's setInsets, capture `map.rotation` before setting padding and re-assert it after (non-animated), or gate padding writes to actual value changes.

https://claude.ai/code/session_018K4iY3i2C8R97gzrQGpnrN

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.