loadMapSettingsSync function
- required bool viewportInitialized,
Loads map settings synchronously from SharedPreferences.
Implementation
Future<LoadSettingsResult> loadMapSettingsSync({
required bool viewportInitialized,
}) async {
try {
final settings = await MapSettingsService.loadSettings();
if (viewportInitialized) {
return LoadSettingsResult(
settings: settings,
viewportInitialized: viewportInitialized,
);
}
// Load viewport separately.
try {
final viewport = await MapSettingsService.getStartupViewport(settings);
return LoadSettingsResult(
settings: settings,
initialCenter: LatLng(viewport.lat, viewport.lng),
initialZoom: viewport.zoom,
viewportInitialized: true,
);
} catch (_) {
return LoadSettingsResult(
settings: settings,
viewportInitialized: viewportInitialized,
);
}
} catch (_) {
return LoadSettingsResult(
settings: MapSettings(mapSource: MapSettings.getDefaultMapSource()),
viewportInitialized: viewportInitialized,
);
}
}