mirror of
https://github.com/FoggedLens/deflock-app.git
synced 2026-07-08 13:47:56 +02:00
Move "about osm" to about page, add option to clear tile caches, option to add reason when deleting, min zoom 16 for edits/submissions, 300km nav distance warning
This commit is contained in:
@@ -4,6 +4,7 @@ import 'package:shared_preferences/shared_preferences.dart';
|
||||
import 'package:collection/collection.dart';
|
||||
|
||||
import '../models/tile_provider.dart';
|
||||
import '../services/provider_tile_cache_manager.dart';
|
||||
import '../dev_config.dart';
|
||||
import '../keys.dart';
|
||||
|
||||
@@ -332,6 +333,17 @@ class SettingsState extends ChangeNotifier {
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
/// Clear all tile caches for a specific provider
|
||||
Future<void> clearTileProviderCaches(String providerId) async {
|
||||
final provider = _tileProviders.firstWhereOrNull((p) => p.id == providerId);
|
||||
if (provider == null) return;
|
||||
|
||||
// Clear cache for each tile type in this provider
|
||||
for (final tileType in provider.tileTypes) {
|
||||
await ProviderTileCacheManager.deleteCache(providerId, tileType.id);
|
||||
}
|
||||
}
|
||||
|
||||
/// Set follow-me mode
|
||||
Future<void> setFollowMeMode(FollowMeMode mode) async {
|
||||
if (_followMeMode != mode) {
|
||||
|
||||
@@ -253,12 +253,12 @@ class UploadQueueState extends ChangeNotifier {
|
||||
}
|
||||
|
||||
// Add a node deletion to the upload queue
|
||||
void addFromNodeDeletion(OsmNode node, {required UploadMode uploadMode}) {
|
||||
void addFromNodeDeletion(OsmNode node, {required UploadMode uploadMode, String? changesetComment}) {
|
||||
final upload = PendingUpload(
|
||||
coord: node.coord,
|
||||
direction: node.directionDeg.isNotEmpty ? node.directionDeg.first : 0, // Direction not used for deletions but required for API
|
||||
profile: null, // No profile needed for deletions - just delete by node ID
|
||||
changesetComment: 'Delete a surveillance node', // Default comment for deletions
|
||||
changesetComment: changesetComment ?? 'Delete a surveillance node', // Use provided comment or default
|
||||
uploadMode: uploadMode,
|
||||
operation: UploadOperation.delete,
|
||||
originalNodeId: node.id,
|
||||
|
||||
Reference in New Issue
Block a user