Doug Borg
2d92214bed
Add offline-first tile system with per-provider caching and error retry
...
- Add ServicePolicy framework with OSM-specific rate limiting and TTL
- Add per-provider disk tile cache (ProviderTileCacheStore) with O(1)
lookup, oldest-modified eviction, and ETag/304 revalidation
- Rewrite DeflockTileProvider with two paths: common (NetworkTileProvider)
and offline-first (disk cache -> local tiles -> network with caching)
- Add zoom-aware offline routing so tiles outside offline area zoom ranges
use the efficient common path instead of the overhead-heavy offline path
- Fix HTTP client lifecycle: dispose() is now a no-op for flutter_map
widget recycling; shutdown() handles permanent teardown
- Add TileLayerManager with exponential backoff retry (2s->60s cap),
provider switch detection, and backoff reset
- Guard null provider/tileType in download dialog with localized error
- Fix Nominatim cache key to use normalized viewbox values
- Comprehensive test coverage (1800+ lines across 6 test files)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-07 12:34:01 -07:00
stopflock
2620c8758e
dev mode, imperial units incl. custom scalebar
2026-02-06 20:28:08 -06:00
stopflock
ff5821b184
Prevent no-change edit submissions
2026-02-01 16:51:35 -06:00
stopflock
ba3b844c1e
"existing tags" temp profile when editing, "existing operator" profile when such tags exist, full editing of existing nodes via refine tags
2026-02-01 14:50:47 -06:00
stopflock
83d7814fb6
Network status indicator should only respect the latest / current request. Others finish in background. Replace stupid bools with an enum to track state. Be smarter about split requests.
2026-01-31 17:21:31 -06:00
stopflock
79d2fe711d
Monolithic reimplementation of node fetching from overpass/offline areas. Prevent submissions in areas without cache coverage. Also fixes offline node loading.
2026-01-30 21:34:55 -06:00
stopflock
9621e5f35a
"Get more" link in profile dropdown, suggest identify page when creating profile
2026-01-30 12:56:50 -06:00
stopflock
c3752fd17e
log in button, submission guide cancel, filter nsi by popularity and entered text
2025-12-17 17:36:59 -06:00
stopflock
656dbc8ce8
positioning tutorial
2025-12-11 16:01:45 -06:00
stopflock
e6b18bf89b
NSI and tag refinement
2025-12-10 12:52:20 -06:00
stopflock
59064f7165
Get rid of errant "default 250" in max nodes localizations
2025-12-05 15:50:40 -06:00
stopflock
5043ef3e34
Repopulate node cache from pending
2025-12-02 19:16:33 -06:00
stopflock
d902495312
Missed a couple languages
2025-12-02 16:04:14 -06:00
stopflock
c4d9cd7986
Message notifications working
2025-12-02 14:04:04 -06:00
stopflock
bc03dcbe89
OSM message notifications in theory
2025-12-02 12:10:09 -06:00
stopflock
dccafc898b
Fix changesets not getting closed, other updates to queue mechanism
2025-12-01 15:01:48 -06:00
stopflock
df0377b41f
Get rid of double cache, filesystem checking for every tile fetch, swap out http interception for a fluttermap tileprovider that calls map_data, fix node rendering limit
2025-11-28 21:48:17 -06:00
stopflock
153377e9e6
laggy on android, UX needs polish
2025-11-26 15:03:58 -06:00
stopflock
45f1635e10
Get rid of double cache layer, remove tiles from network status indicator, fix status callbacks from split fetches, use tileprovider instead of http catching.
2025-11-24 18:28:36 -06:00
stopflock
3868236816
Improve subdomain notation, fix error catching for xyz in tile URL
2025-11-22 22:26:04 -06:00
stopflock
c6cc68c9b4
Add buttons to show welcome message and submission guide on command from about section of settings
2025-11-22 17:19:57 -06:00
stopflock
961465ebb5
Popup message before submitting first node
2025-11-22 14:56:05 -06:00
stopflock
d747c66990
Disallow new/edit nodes below zoom 15, disallow downloads below zoom 10.
2025-11-22 00:17:24 -06:00
stopflock
5673c2b627
Link to view progress in settings after starting an offline area download
2025-11-21 21:08:10 -06:00
stopflock
9319bbda48
Support FOV range notation: 0-360, 90-270, 10-45;90-125
2025-11-21 19:25:34 -06:00
stopflock
3c996c78c9
Two nodes too close together warning
2025-11-21 15:35:12 -06:00
stopflock
c77ea96eaf
Move OSM account settings and upload queue into their own sections, add "see my edits" button
2025-11-20 20:54:16 -06:00
stopflock
95fad14261
min zoom 1, max cameras 8, extract node from way
2025-11-19 22:46:09 -06:00
stopflock
6c53d988de
Further improve tag views, implement upload queue pause toggle
2025-11-17 13:37:48 -06:00
stopflock
26cebcc60e
Localizations for new features
2025-11-16 21:26:35 -06:00
stopflock
7c2b9ea087
Configurable max height for node tags box, localizations for new UX strings
2025-11-16 18:16:50 -06:00
stopflock
192c6e5158
Disallow editing location of nodes attached to ways/relations
2025-11-16 00:17:53 -06:00
stopflock
fb8260d346
Add feature flag to disable edits temporarily during bugfix
2025-11-15 14:39:27 -06:00
stopflock
7842848152
welcome note about firsthand knowledge
2025-11-02 16:02:16 -06:00
stopflock
2a7004e5a2
require profile selection
2025-10-24 13:49:48 -05:00
stopflock
cd2ab00042
North-up compass and rotation lock
2025-10-22 15:27:28 -05:00
stopflock
d696e1dfb6
Add welcome popup, changelog system, and account deletion button
2025-10-20 19:27:55 -05:00
stopflock
b00db130d7
Suspected location localizations, credit alprwatch
2025-10-07 14:03:11 -05:00
stopflock
a08d61fb98
Add other providers, max zoom per tile type
2025-10-05 15:08:27 -05:00
stopflock
d8b48c8fdb
Merge branch 'vector-tiles' into main
2025-10-04 11:29:21 -05:00
stopflock
8b4b9722c4
Navigation settings
2025-10-02 22:47:15 -05:00
Chris Bowles
7d18656ec6
Localize about screen
2025-10-02 16:56:31 -04:00
stopflock
6c0981abdd
Optional network indicator
2025-10-01 23:34:18 -05:00
stopflock
ab567b1da4
languages and about get their own section
2025-09-30 09:50:24 -05:00
stopflock
e79790c30d
Proximity alerts localizations
2025-09-30 09:14:21 -05:00
stopflock
d397610121
Move settings around part 4
2025-09-30 00:59:27 -05:00
stopflock
2b26bf9188
Preview tile fetching on startup, offline area refresh, more cameras->nodes
2025-09-29 21:28:40 -05:00
stopflock
6b5f05d036
Italian and Chinese coz why not
2025-09-29 12:20:35 -05:00