Fix tap-to-rotate and GPS cancel crash

- Tap on non-selected icon rotates instead of opening, flag
  prevents onSelect from double-firing
- GpsService.stop() for clean cancellation
- LoadingView stops GPS on hide (BACK button)
- LoadingDelegate allows BACK to cancel GPS acquisition

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
EiSiMo 2026-04-13 19:41:57 +02:00
parent a45f1b5215
commit 21a62d79c3
4 changed files with 42 additions and 8 deletions

View file

@ -60,6 +60,14 @@ class GpsService {
}
}
function stop() as Void {
if (_finished) { return; }
_finished = true;
_timer.stop();
_pollTimer.stop();
Position.enableLocationEvents(Position.LOCATION_DISABLE, method(:_onPosition));
}
function _onTimeout() as Void {
_finish(_bestFix);
}