This keeps the center of the zoom gesture pinned to the screen.
Signed-off-by: Keith Packard <keithp@keithp.com>
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;