Commit Graph

30 Commits

Author SHA1 Message Date
Doug Borg
8983939b05 Delegate network tile fetching to NetworkTileProvider
Replace our custom tile pipeline (fetchRemoteTile / _SimpleSemaphore /
exponential backoff) with flutter_map's built-in NetworkTileProvider,
gaining persistent disk cache, ETag revalidation, RetryClient, and
obsolete request aborting for free.

DeflockTileProvider now extends NetworkTileProvider and overrides
getTileUrl() to route through TileType.getTileUrl() (quadkey,
subdomains, API keys). getImageWithCancelLoadingSupport() routes
between two paths at runtime: the common network path (super) when
no offline areas exist, and a DeflockOfflineTileImageProvider for
offline-first when they do.

- Delete tiles_from_remote.dart (semaphore, retry loop, spatial helpers)
- Simplify MapDataProvider._fetchRemoteTileFromCurrentProvider to plain
  http.get (only used by offline area downloader now)
- Remove dead clearTileQueue/clearTileQueueSelective from MapDataProvider
- Remove 7 tile fetch constants from dev_config.dart
- TileLayerManager now disposes provider on cache clear and uses actual
  urlTemplate for cache key generation
- 9 new tests covering URL delegation, routing, and equality

Closes #87 Phase 2.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 20:07:56 -07:00
Doug Borg
c712aba724 Add flutter_lints and fix analyzer errors, dead code, and unused imports 2026-02-08 14:23:06 -07: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
4a36c52982 Node fetch rework 2026-01-30 19:11:00 -06:00
stopflock
c81014d530 maxCameras->maxNodes, default from dev_config 2025-12-02 15:50:11 -06:00
stopflock
153377e9e6 laggy on android, UX needs polish 2025-11-26 15:03:58 -06:00
stopflock
ca68bd6059 fix network indicator, simplify overpass fetching 2025-10-22 11:56:01 -05:00
stopflock
de0bd7f275 too much, sorry 2025-10-21 15:11:50 -05:00
stopflock
2ccd01c691 Pre-fetch larger areas to reduce calls to overpass; split large requests up 2025-10-21 10:22:04 -05:00
stopflock
71fa212d71 More camera -> node, notifications for approaching 2025-09-29 19:22:22 -05:00
stopflock
38f15a1f8b fetch from sandbox 2025-09-28 22:18:59 -05:00
stopflock
0cbcec7017 improve data indicator, offline fetching, offline area loading 2025-09-28 17:00:34 -05:00
stopflock
a8ac237317 more cameras -> nodes 2025-08-29 18:20:42 -05:00
stopflock
eeedbd7da7 clean up overpass fetching 2025-08-29 16:52:50 -05:00
stopflock
3ddebd2664 nodes, not cameras 2025-08-29 16:44:34 -05:00
stopflock
d56a6e8e7c more status indicator improvements 2025-08-26 19:37:27 -05:00
stopflock
84e057c986 fix camera caching and filtering from offline areas - in theory 2025-08-26 19:17:45 -05:00
stopflock
17c9ee0c5c idk but it's better - cache busting works. 2025-08-24 19:38:42 -05:00
stopflock
9e620ef9e4 Consolidate / dedupe some code 2025-08-24 17:46:58 -05:00
stopflock
4ee783793f genericize tiles_from submodule, simpletileservice. 2025-08-24 15:08:36 -05:00
stopflock
a21e807d88 lot of changes, got rid of custom cache stuff, now stepping in the way of http fetch instead of screwing with flutter map. 2025-08-23 17:42:53 -05:00
stopflock
257aefb2fc cleanup 2025-08-22 21:16:59 -05:00
stopflock
312f71af4b first time loading tiles from local storage! 2025-08-10 23:07:06 -05:00
stopflock
20bd04e338 first attempts to pull local data from offline areas 2025-08-10 16:42:31 -05:00
stopflock
3596d4ee99 finally getting close. actually loading offline areas is the last thing remaining afaict 2025-08-10 15:45:21 -05:00
stopflock
96f3a9f108 app launches again, sorta working, map broken, settings page has configurable max cams. 2025-08-10 13:15:48 -05:00
stopflock
641344271f fix appstate repeated instantiation 2025-08-10 00:53:01 -05:00
stopflock
63675bd18a tbh not sure, left for a bit. sorry. pretty sure closer than last commit.. 2025-08-09 22:44:24 -05:00
stopflock
7f91d5aec4 more debug logging 2025-08-09 14:04:31 -05:00
stopflock
3dca7d5751 tiles not working but new map data provider exists in theory 2025-08-09 13:50:10 -05:00