diff options
Diffstat (limited to 'main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapController.java')
| -rw-r--r-- | main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapController.java | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapController.java b/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapController.java index db81609..5aaecc8 100644 --- a/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapController.java +++ b/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapController.java @@ -26,13 +26,15 @@ public class MapsforgeMapController implements MapControllerImpl { mapController.setCenter((GeoPoint) geoPoint); } + /** + * Set the map zoom level to mapzoom-1 or maxZoomLevel, whichever is least + * mapzoom-1 is used to be compatible with Google Maps zoom levels + */ @Override public void setZoom(int mapzoom) { - int mfzoom = mapzoom - 1; - if (mfzoom > maxZoomLevel) { - mfzoom = maxZoomLevel; - } - mapController.setZoom(mfzoom); + // Google Maps and OSM Maps use different zoom levels for the same view. + // All OSM Maps zoom levels are offset by 1 so they match Google Maps. + mapController.setZoom(Math.min(mapzoom - 1, maxZoomLevel)); } @Override |
