mirror of
https://github.com/zjs81/meshcore-open.git
synced 2026-07-06 08:46:40 +10:00
try OpenStreetMap Dark
This commit is contained in:
@@ -561,6 +561,7 @@ class _ChannelMessagePathMapScreenState
|
||||
TileLayer(
|
||||
urlTemplate: tileCache.urlTemplate,
|
||||
tileProvider: tileCache.tileProvider,
|
||||
tileBuilder: tileCache.tileBuilder,
|
||||
userAgentPackageName:
|
||||
MapTileCacheService.userAgentPackageName,
|
||||
maxZoom: 19,
|
||||
|
||||
@@ -472,6 +472,7 @@ class _LineOfSightMapScreenState extends State<LineOfSightMapScreen> {
|
||||
TileLayer(
|
||||
urlTemplate: tileCache.urlTemplate,
|
||||
tileProvider: tileCache.tileProvider,
|
||||
tileBuilder: tileCache.tileBuilder,
|
||||
userAgentPackageName: MapTileCacheService.userAgentPackageName,
|
||||
maxZoom: 19,
|
||||
),
|
||||
|
||||
@@ -398,6 +398,7 @@ class _MapCacheScreenState extends State<MapCacheScreen> {
|
||||
TileLayer(
|
||||
urlTemplate: tileCache.urlTemplate,
|
||||
tileProvider: tileCache.tileProvider,
|
||||
tileBuilder: tileCache.tileBuilder,
|
||||
userAgentPackageName:
|
||||
MapTileCacheService.userAgentPackageName,
|
||||
maxZoom: 19,
|
||||
|
||||
@@ -565,6 +565,7 @@ class _MapScreenState extends State<MapScreen> {
|
||||
TileLayer(
|
||||
urlTemplate: tileCache.urlTemplate,
|
||||
tileProvider: tileCache.tileProvider,
|
||||
tileBuilder: tileCache.tileBuilder,
|
||||
userAgentPackageName:
|
||||
MapTileCacheService.userAgentPackageName,
|
||||
maxZoom: 19,
|
||||
|
||||
@@ -911,6 +911,7 @@ class _PathTraceMapScreenState extends State<PathTraceMapScreen> {
|
||||
TileLayer(
|
||||
urlTemplate: tileCache.urlTemplate,
|
||||
tileProvider: tileCache.tileProvider,
|
||||
tileBuilder: tileCache.tileBuilder,
|
||||
userAgentPackageName: MapTileCacheService.userAgentPackageName,
|
||||
maxZoom: 19,
|
||||
),
|
||||
|
||||
@@ -10,6 +10,7 @@ import 'app_settings_service.dart';
|
||||
|
||||
enum MapRasterSourcePreset {
|
||||
osmStandard('osm_standard'),
|
||||
osmDark('osm_dark'),
|
||||
stamenTerrain('stamen_terrain'),
|
||||
alidadeSmoothDark('alidade_smooth_dark'),
|
||||
outdoors('outdoors'),
|
||||
@@ -86,6 +87,11 @@ class MapRasterSourceCatalog {
|
||||
label: 'OpenStreetMap Standard',
|
||||
description: 'Direct tiles from tile.openstreetmap.org',
|
||||
);
|
||||
static const MapRasterSourceDefinition osmDark = MapRasterSourceDefinition(
|
||||
id: 'osm_dark',
|
||||
label: 'OpenStreetMap Dark',
|
||||
description: 'Standard OpenStreetMap tiles with an inverted dark filter',
|
||||
);
|
||||
static const MapRasterSourceDefinition stamenTerrain =
|
||||
MapRasterSourceDefinition(
|
||||
id: 'stamen_terrain',
|
||||
@@ -119,6 +125,7 @@ class MapRasterSourceCatalog {
|
||||
|
||||
static const List<MapRasterSourceDefinition> presets = [
|
||||
osmStandard,
|
||||
osmDark,
|
||||
stamenTerrain,
|
||||
alidadeSmoothDark,
|
||||
outdoors,
|
||||
@@ -130,6 +137,8 @@ class MapRasterSourceCatalog {
|
||||
switch (preset) {
|
||||
case MapRasterSourcePreset.osmStandard:
|
||||
return osmStandard;
|
||||
case MapRasterSourcePreset.osmDark:
|
||||
return osmDark;
|
||||
case MapRasterSourcePreset.alidadeSmoothDark:
|
||||
return alidadeSmoothDark;
|
||||
case MapRasterSourcePreset.outdoors:
|
||||
@@ -279,6 +288,13 @@ class MapTileCacheService extends ChangeNotifier {
|
||||
|
||||
String get urlTemplate => _buildUrlTemplate(appSettingsService.settings);
|
||||
|
||||
TileBuilder? get tileBuilder => isInvertedOsmDarkSource
|
||||
? _osmDarkTileBuilder
|
||||
: null;
|
||||
|
||||
bool get isInvertedOsmDarkSource =>
|
||||
source.id == MapRasterSourceCatalog.osmDark.id;
|
||||
|
||||
CacheManager get _concreteCacheManager => cacheManager as CacheManager;
|
||||
|
||||
Map<String, String> get defaultHeaders => {
|
||||
@@ -622,6 +638,30 @@ class MapTileCacheService extends ChangeNotifier {
|
||||
}
|
||||
}
|
||||
|
||||
Widget _osmDarkTileBuilder(
|
||||
BuildContext _,
|
||||
Widget tileWidget,
|
||||
TileImage __,
|
||||
) {
|
||||
return ColorFiltered(
|
||||
colorFilter: const ColorFilter.matrix(<double>[
|
||||
1.33, 0, 0, 0, 0,
|
||||
0, 1.33, 0, 0, 0,
|
||||
0, 0, 1.33, 0, 0,
|
||||
0, 0, 0, 1, 0,
|
||||
]),
|
||||
child: ColorFiltered(
|
||||
colorFilter: const ColorFilter.matrix(<double>[
|
||||
0.5740000009536743, -1.4299999475479126, -0.14399999380111694, 0, 255,
|
||||
-0.4259999990463257, -0.429999977350235, -0.14399999380111694, 0, 255,
|
||||
-0.4259999990463257, -1.4299999475479126, 0.8559999465942383, 0, 255,
|
||||
0, 0, 0, 1, 0,
|
||||
]),
|
||||
child: tileWidget,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
class CachedNetworkTileProvider extends TileProvider {
|
||||
final BaseCacheManager cacheManager;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user