aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapController.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapController.java')
-rw-r--r--main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapController.java12
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