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:
parent
1db888a679
commit
77d6a5528c
1 changed files with 2540 additions and 18 deletions
|
|
@ -910,5 +910,120 @@
|
|||
"planFilterTitle": "Filter by project",
|
||||
"@planFilterTitle": {
|
||||
"description": "Today's Plan's project filter (ADR 0033, D30): its search field's hint and its name."
|
||||
},
|
||||
"locationTitle": "Location",
|
||||
"@locationTitle": {
|
||||
"description": "Quick add's + menu and its button (ADR 0033, D32)."
|
||||
},
|
||||
"locationAdd": "Add location",
|
||||
"@locationAdd": {
|
||||
"description": "A task's Where, and the picker's button."
|
||||
},
|
||||
"locationWhere": "Where",
|
||||
"@locationWhere": {
|
||||
"description": "The heading of a task's places."
|
||||
},
|
||||
"locationAnyOf": "Any of these",
|
||||
"@locationAnyOf": {
|
||||
"description": "Under a task's Where, with several places: they are alternatives."
|
||||
},
|
||||
"locationSearchHint": "City or district, then the name",
|
||||
"@locationSearchHint": {
|
||||
"description": "The location picker's search field."
|
||||
},
|
||||
"locationSearchAny": "Search for a place",
|
||||
"@locationSearchAny": {
|
||||
"description": "Quick add, as + is typed."
|
||||
},
|
||||
"locationSearchFor": "Search for “{query}”",
|
||||
"@locationSearchFor": {
|
||||
"description": "Quick add, as +something is typed.",
|
||||
"placeholders": {
|
||||
"query": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"locationSearchUnavailable": "Search isn't available here. Move the map and tap to place a pin.",
|
||||
"@locationSearchUnavailable": {
|
||||
"description": "The location picker without a place search."
|
||||
},
|
||||
"locationSearchFailed": "The search didn't work. Try again.",
|
||||
"@locationSearchFailed": {
|
||||
"description": "The location picker after a failed search."
|
||||
},
|
||||
"locationNoResults": "Nothing found",
|
||||
"@locationNoResults": {
|
||||
"description": "The location picker, a search without results."
|
||||
},
|
||||
"locationRecent": "Recent",
|
||||
"@locationRecent": {
|
||||
"description": "The location picker's places of the person's tasks."
|
||||
},
|
||||
"locationPin": "Pinned place",
|
||||
"@locationPin": {
|
||||
"description": "The name of a pin placed by hand where nothing names the spot."
|
||||
},
|
||||
"locationName": "Name",
|
||||
"@locationName": {
|
||||
"description": "The name field of a pin placed by hand."
|
||||
},
|
||||
"locationMine": "My position",
|
||||
"@locationMine": {
|
||||
"description": "The map's button."
|
||||
},
|
||||
"locationRemindNone": "No reminder",
|
||||
"@locationRemindNone": {
|
||||
"description": "A location's reminder."
|
||||
},
|
||||
"locationRemindArrive": "On arriving",
|
||||
"@locationRemindArrive": {
|
||||
"description": "A location's reminder."
|
||||
},
|
||||
"locationRemindLeave": "On leaving",
|
||||
"@locationRemindLeave": {
|
||||
"description": "A location's reminder."
|
||||
},
|
||||
"locationRemove": "Remove",
|
||||
"@locationRemove": {
|
||||
"description": "A task's location's menu."
|
||||
},
|
||||
"locationAccessTitle": "Allow location all the time",
|
||||
"@locationAccessTitle": {
|
||||
"description": "Before asking for the position in the background."
|
||||
},
|
||||
"locationAccessHint": "To remind you when you arrive or leave, Halkyon Todo needs your position while it is closed too. It stays on this device. Next, choose “Allow all the time”.",
|
||||
"@locationAccessHint": {
|
||||
"description": "Before asking for the position in the background."
|
||||
},
|
||||
"locationAccessGo": "Continue",
|
||||
"@locationAccessGo": {
|
||||
"description": "Before asking for the position in the background."
|
||||
},
|
||||
"locationOffTitle": "Location is off for reminders",
|
||||
"@locationOffTitle": {
|
||||
"description": "Settings' Reminders while places are planned and may not be watched."
|
||||
},
|
||||
"locationOffHint": "Reminders at a place need “Allow all the time”.",
|
||||
"@locationOffHint": {
|
||||
"description": "Settings' Reminders while places are planned and may not be watched."
|
||||
},
|
||||
"locationArrived": "You're at {name}",
|
||||
"@locationArrived": {
|
||||
"description": "A reminder on arriving, below the task's title.",
|
||||
"placeholders": {
|
||||
"name": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"locationLeft": "You've left {name}",
|
||||
"@locationLeft": {
|
||||
"description": "A reminder on leaving, below the task's title.",
|
||||
"placeholders": {
|
||||
"name": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue