feat(todo): pick a place on a map, for quick add and a task's Where (ADR 0033, D32)

The location picker searches by city or district and name through
PlaceSearchGateway, its results a list and pins on Train's OpenFreeMap map,
or takes a pin placed by hand; recent places, and None, Arrive or Leave.
TodoDependencies.places is the seam for the instance's search; until then
komoot's public Photon, in a debug build asked for it alone. Quick add has
`+` suggestions, an entry in its + menu and a pin button; the task sheet a
Where box; a task's row the place's name.

ReminderScheduler plans the places to watch into LocationReminderGateway,
a no-op off Android, which TodoPerson.dispose clears, and Settings' Reminders
says while the device may not watch them.

Whats-New: Tasks can have locations: type + or use the + menu, search by city and name or pick on the map, and be reminded on arriving or leaving (Android).
Whats-New-De: Aufgaben können Orte haben: Tippe + oder nutze das +-Menü, suche nach Stadt und Name oder wähle auf der Karte, und lass dich beim Ankommen oder Verlassen erinnern (Android).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-11-05 15:23:53 +01:00
commit 77d6a5528c
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64

View file

@ -21,6 +21,9 @@ dependencies:
# Tasks' reminders, scheduled with the system on the device (ADR 0033, D5):
# the instance reads no task, so it can't remind of one.
flutter_local_notifications: ^22.3.3
# A task's location picked on a map (ADR 0033, D32), as Train's maps: the
# map widget, OpenFreeMap's vector tiles and their coordinates.
flutter_map: ^8.3.2
# The tabs, each with its own stack of screens, and Settings over them
# (ADR 0033, D1), as Learn's and Train's.
go_router: ^18.0.2
@ -45,6 +48,7 @@ dependencies:
path: ../../../packages/halkyon_ui
# gen-l10n's output imports it.
intl: ^0.20.3
latlong2: ^0.10.1
lucide_icons_flutter: ^3.1.20
material_ui: ^1.5.0
# This build's version and number, for Settings' foot and what's new.
@ -57,6 +61,8 @@ dependencies:
# The instant a reminder is scheduled at, as flutter_local_notifications
# takes it (in UTC).
timezone: ^0.11.2
# Pinned as Train's: the 9 line is beta, the only one for flutter_map 8.
vector_map_tiles: 9.0.0-beta.13
dev_dependencies:
flutter_driver: