You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add manual date and location entry screens (#402)
* feat: add manual date and location entry screens
Add UIDateEntry screen that automatically follows UITimeEntry,
allowing users to set both time and date when GPS is unavailable.
Add UILocationEntry with three-step lat/lon/alt flow for manual
coordinate entry, using the same chaining pattern.
Key changes:
- New UIDateEntry: 3-box date entry (YYYY-MM-DD) with pre-fill
- New UILocationEntry: 3-step coordinate entry (lat → lon → alt)
- UITimeEntry chains to UIDateEntry on confirm
- Location.make_fix() helper shared between UI and web server
- Consistent navigation: Right=confirm, Left=back/cancel
- Menu restructured: "Set Time/Date", location submenu with
"Enter Coords" and "Saved" options
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: force manual time update and show date in GPS status
- set_datetime() ignored manual times earlier than current time due to
GPS clock-drift guard. Add force parameter to bypass the guard.
- Manual time/date setting now sends "time_force" message to GPS queue.
- GPS status detailed view now shows the date alongside time.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: protect manual time from GPS overwrite
fakeGPS sends time updates every 0.5s with datetime.now(), immediately
overwriting any manually set time. Add __datetime_manual flag that
blocks GPS time updates once time is manually set. Reset clears it.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: separate location and time/date reset
Location reset should not clear manual time. Add separate
"Reset Time/Date" menu item and reset_datetime GPS message.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: stay on last box instead of wrapping to first
Auto-advance and key_right were using modulo wrap, sending cursor
back to box 0 after filling the last box. Now stays on last box
so the user can press Right to confirm.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore: remove unnecessary F821 per-file-ignore
TYPE_CHECKING stubs for gettext `_` already satisfy ruff's F821
check, so the blanket ignore for ui/*.py is not needed.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat: improve location menu with load/save and empty state
- Rename "Saved" to "Load Location", show "No saved locations"
message when list is empty instead of blank screen
- Add "Save Location" menu item that prompts for name, shows
"No location lock" if no GPS/manual fix is set
- Use Location.make_fix() in location list load action
- Menu: Enter Coords / Load Location / Save Location
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: shorten messages to fit 128px screen
- "No saved locations" -> "No locations" for bold font fit
- "Set: date time" -> "date\ntime" two-line format
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: use two-line format for save location popup
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
0 commit comments