Problems with touch events when using ArcGIS API for WPF on Microsoft Surface 2.0

3240
2
09-22-2012 11:51 AM
Labels (1)
ae
by
Occasional Contributor II
Hi,

We are building an application for the new Microsoft Surface 2.0 (also known as Pixelsense), where we make use of ArcGIS API for WPF (version 2.4) for showing a map. While developing this application we have met several problems with making efficient use of touch events, and particularly hold and tap events. The problem is the following: When a user tries to tap or hold on an element in the map, it is almost impossible to do this without moving their finger just a tiny little bit (we are talking less than 1mm here). This tiny little movement is unfortunately enough to trigger a drag event, causing the map to pan instead of recognizing the tap/hold event. As a result, we cannot recognize neither tap or hold events in an efficient manner.

Is there any way to set the drag/pan sensitivity of the map, or any other workaround to resolve this issue?

Cheers
0 Kudos
2 Replies
JenniferNery
Esri Regular Contributor
Thank you for reporting this bug. We'll try to get it fixed in future release. As of now, our API does not seem to raise Hold on MapGesture. You may want to use UIElement.ManipulationDelta event directly to detect a Tap and Hold gesture.
0 Kudos
ae
by
Occasional Contributor II
As far as I can see, it is possible to trigger Hold events through MapGesture (this can be demonstrated quite easily using the Surface input simulation tool that comes with the Microsoft Surface 2.0 SDK). The problem is rather that the level of precision that is required in order to trigger these events is too high. A user will always move the finger silghtly when holding/tapping the map, and this causes a drag event to be fired, instead of a hold/tap event. Hence, there should be some kind of check saying that unless the finger has moved a given length, it should not be recognized as a drag event.
0 Kudos