Menu

#611 Android: Pinch rotate zooms out

Next Release
open-works-for-me
nobody
Android (41)
6
2012-08-31
2012-08-21
sk750
No

When doing pinch rotate on Android almost always this is recognized as zoom out as well.
(Experienced in nightly build from Sunday on HTC Wildfire S and in nightly build from today on HTC Nexus one).

This definitely worked about one or two weeks ago better.

To reproduce it's helpful to set an on-screen-destination so you'll see by the length of the red destination line, how far the map is zoomed out.

Discussion

1 2 3 > >> (Page 1 of 3)
  • sk750

    sk750 - 2012-08-21

    Btw: Had to Stop GPS for Pinch rotating as otherwise the compass comes in and changes rotation immediately to compass direction. I think when manually rotating the compass direction should not be taken for a while, just like with manual panning where the gps position is not used for map centering for a while.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-21

    Unable to repeat this on the Note or on a tablet. Behaves as expected, zoom distance changes if I change how wide fingers are apart, but not otherwise.

     
  • sk750

    sk750 - 2012-08-21

    Maybe try on the mini, display size might make a difference on how sensible this is.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-21

    Can't repeat this on the Mini either.

    But anyway, I think disabling zooming when rotation is happening would be a good idea. If there isn't a feature request for this, should be added.

     
  • sk750

    sk750 - 2012-08-21

    Guessing I just started to do the gesture wrong, placed one finger at a fixed point and rotated the other around. But I guess the correct gesture is done with both fingers rotating around a center. If so, you can close this report as invalid.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-21

    I have no idea if there's a "correct" way to do multi-touch rotate - but your first way of doing it with one finger at a fixed point sounds as good as any to me, and should work, too, in my opinion; if it doesn't, there's a bug to fixed. I have usually done it with two fingers rotating around a center, but could not achieve zooming out with your way of doing it either. However did manage to accidentally zoom in, not sure if this is related.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-21
    • status: open --> open-works-for-me
     
  • sk750

    sk750 - 2012-08-22

    Tried the pinch-zoom on Nexus on with two fingers moving - still zoomed out and also seemed to pause rotating for about > 90 degrees until it continued to rotate. Hard to describe and probably hard to fix if you can't repeat this.

    Compass translates correct for the 3 possible screen orientations (portrait-up, landscape-up, landscape doiwn).

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-22

    With some touch panels, there are failures if two fingers touch the same vertical line, then something bogus is reported as the place of touch. A way to test this is to load some multitouch test program from the market and see if the touches are repoted incorrectly.

    Adding the zoom lock mentioned will remove the non-intentional zoom issue, but won't solve the part where rotation is paused for >90 degrees after having started.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-22

    Zooming stops now when rotation has started. Please check if you can if this fixes your issue.

     
  • sk750

    sk750 - 2012-08-23

    Just tried 0.7.99 from the nightlies page and unfortunately pinch rotate still zooms out.

     
  • sk750

    sk750 - 2012-08-23

    Just tried 0.7.99 from the nightlies page and unfortunately pinch rotate still zooms out.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-23

    At which time does the zooming out happen relative to rotate?

     
  • sk750

    sk750 - 2012-08-23

    All the time during rotating it zooms out more and more.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-23

    One possibly related function is autozoom. I've nevered looked how autozoom works, but pinch zoom sets autoZoomed variable to false. But looking at the autozoom code, I don't think it's probable it's related.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-23

    Weird. Only place where scale is touch in multitouch functionality is mtPointerDragged(), and it's not called if rotation has been started.

    // stop zoom when rotation starts, to avoid bug id 3560292
    if (zoomStarted && !rotationStarted) {
    mtPointerDragged(pinchZoomDistance / dist(event) * pinchZoomScale);
    }

    Maybe something wrong with snapshot build, though - the dates with the binaries are current, but that might happen because of map bundling changing the dates, so could be the apks contain old code despite having current date. Osm2GpsMid snapshots don't contain the binaries. Will check.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-23

    Turns out compliation failed due to an incorrect locale call which was _commented out_.

    snapshot/GpsMid/build.xml:97: de.ueller.gpsmid.ui.GuiSearch line [1116]: Found no translation for key [guisearch.nextscreen].

    Fixed, running the nightly generation script again.

     
  • sk750

    sk750 - 2012-08-23

    But shouldn't have been the change for pinch already been in the downloaded version which probably was compiled right before the locale error was introduced?

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-23

    Yes, looks that way from the dates. In that case, I return to saying Weird.

     
  • sk750

    sk750 - 2012-08-23

    Can you check that the Android-full-connected-outlines builds 0.7.99 and latest contain the "=>" in the virtual keyboard just to be sure they're updated - please consider I have to try the Android builds on somebody else's phone.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-23

    Now I think what's going on, you're using the outdated "outlines" version, which hasn't been updated since yesterday I thought you were using the "latest" link, and checked on the web site that it's correct. Now that you mention "outlines", I notice that I've forgotten to update the nightly page to reflect the dropping of the outlines suffix, fixing.

     
  • Jyrki Kuoppala

    Jyrki Kuoppala - 2012-08-23

    To add to the confusion, I take back the last message about file names - they didn't contain the "-outlines" suffix, even though the "-outlines" was still in two places in the nightly page.

    So, if you specifically downloaded on "-outlines" file, that would have been outdated, but if you used a link on the nightly page, the file should've been up to date.

    Checked with current latest non-debug version from the nightly page now, and it's the current git with "=>".

     
  • sk750

    sk750 - 2012-08-23

    As I downloaded to Nokia 5800 and then transferred via bluetooth - to be exactly the file downloaded was called "GpsMid-Generic-android-full-connected-0.7.99-map72.zip", renamed to .apk and then transferred via Bluetooth to Nexus One.

    So to be correct - no outlines in the filename...

     
  • sk750

    sk750 - 2012-08-23

    Is the new zoom lock working on your devices?

     
  • sk750

    sk750 - 2012-08-23

    At least there must be some error in the code, e.g. zoomStarted is never set to false except initially.

    Also from the code I wonder why you're using getAction() instead of getActionMasked() like recommended at: http://developer.android.com/reference/android/view/MotionEvent.html#getAction%28%29

    Third thing I wonder is, if rotationStarted=false should not rather be at the check for http://developer.android.com/reference/android/view/MotionEvent.html#ACTION_DOWN

    than at the check for ACTION_POINTER_DOWN.

    Could well be that the HTC devices fire ACTION_POINTER_DOWN all the time during the pinch gesture, couldn't it?

    But not sure, not into Android programming at all yet.

     
1 2 3 > >> (Page 1 of 3)

Log in to post a comment.