From: Keith Packard Date: Sun, 21 Jun 2015 16:36:20 +0000 (-0700) Subject: altosdroid: Use AltosMap set_zoom_centre X-Git-Tag: 1.6.0.3~19 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=4fbe9d5a1f56178a737ede6b31e8d01a02a7543f altosdroid: Use AltosMap set_zoom_centre This keeps the center of the zoom gesture pinned to the screen. Signed-off-by: Keith Packard --- diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapView.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapView.java index 1572bf33..65cc0b95 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapView.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapView.java @@ -115,12 +115,13 @@ public class AltosMapView extends View implements ScaleGestureDetector.OnScaleGe public boolean onScale(ScaleGestureDetector detector) { float f = detector.getScaleFactor(); + if (f <= 0.8) { - tab.map.set_zoom(tab.map.get_zoom() - 1); + tab.map.set_zoom_centre(tab.map.get_zoom() - 1, new AltosPointInt((int) detector.getFocusX(), (int) detector.getFocusY())); return true; } if (f >= 1.2) { - tab.map.set_zoom(tab.map.get_zoom() + 1); + tab.map.set_zoom_centre(tab.map.get_zoom() + 1, new AltosPointInt((int) detector.getFocusX(), (int) detector.getFocusY())); return true; } return false;