X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosdroid%2Fsrc%2Forg%2Faltusmetrum%2FAltosDroid%2FAltosMapOffline.java;fp=altosdroid%2Fsrc%2Forg%2Faltusmetrum%2FAltosDroid%2FAltosMapOffline.java;h=0bf6ab20c7a458dbc1732b0a633f67873b32c155;hp=5240d61ce75476ce4942889f1dcf3aed35d064b4;hb=51bf46248ca7ee3c817e62274b7366258c9f87cf;hpb=b64ab2a8a25b0c22443bc77829c7f35b4f1c2455 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOffline.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOffline.java index 5240d61c..0bf6ab20 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOffline.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOffline.java @@ -253,6 +253,8 @@ public class AltosMapOffline extends View implements ScaleGestureDetector.OnScal public void select_object(AltosLatLon latlon) { if (map.transform == null) return; + ArrayList near = new ArrayList(); + for (Rocket rocket : sorted_rockets()) { if (rocket.position == null) { debug("rocket %d has no position\n", rocket.serial); @@ -262,10 +264,11 @@ public class AltosMapOffline extends View implements ScaleGestureDetector.OnScal debug("check select %d distance %g width %d\n", rocket.serial, distance, rocket_bitmap.getWidth()); if (distance < rocket_bitmap.getWidth() * 2.0) { debug("selecting %d\n", rocket.serial); - altos_droid.select_tracker(rocket.serial); - break; + near.add(rocket.serial); } } + if (near.size() != 0) + altos_droid.touch_trackers(near.toArray(new Integer[0])); } class Line { @@ -359,7 +362,6 @@ public class AltosMapOffline extends View implements ScaleGestureDetector.OnScal @Override protected void onDraw(Canvas view_canvas) { - debug("onDraw"); if (map == null) { debug("MapView draw without map\n"); return;