Phase 3: event creation flow (GPS + success / error)

GpsService runs a single-shot position request with a hard timeout
and early-exit when Config.GPS_TARGET_ACCURACY_M is reached.
LoadingView renders a circular progress bar around the edge plus the
"Standort wird bestimmt" prompt; on callback it persists a new Event
via EventStore.add and transitions to SuccessView (green checkmark,
short vibration, auto-close) or ErrorView (red alert, 3× vibration,
German message, longer hold). TextUtils extracts the shared
multi-line centered text rendering so MenuView, LoadingView and
ErrorView all render wrapped German text consistently. Positioning
permission added to manifest.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
EiSiMo 2026-04-11 20:36:22 +02:00
parent d3494acc0d
commit 025d3007db
9 changed files with 332 additions and 17 deletions

View file

@ -1,10 +1,10 @@
<strings>
<string id="AppName">Einsatzprotokoll</string>
<!-- Loading / result screens -->
<string id="loading_gps">Standort wird bestimmt</string>
<string id="error_gps">Standort konnte nicht bestimmt werden</string>
<string id="error_generic">Fehler beim Speichern</string>
<!-- Loading / result screens. "|" marks a line break. -->
<string id="loading_gps">Standort wird|bestimmt</string>
<string id="error_gps">Standort konnte|nicht bestimmt|werden</string>
<string id="error_generic">Fehler beim|Speichern</string>
<!-- History -->
<string id="history_empty">Keine Einträge</string>