You found a bug! We've classified it as
TOUCH-3696
.
We encourage you to continue the discussion and to find an acceptable workaround while we work on a permanent fix.
-
Finger move tolerance when tapping
I've heard and seen users whose taps on any tappable items in Sencha Touch such as buttons frequently fail.
The reason is that Sencha Touch is very sensible to any finger movement while pressing/tapping.
This is not how native iOS apps behave.
In a native iOS app you can tap/press a button, move your finger on the button and then release it and it will fire the button's action.
This doesn't work in Sencha Touch applications which is nicely reproducible through the kitchensink's "Touch Events" page. Moving the finger slightly triggers the dragstart, touchmove, drag, touchend, dragend events, but not the tap event.
What's y'alls opinion on this? Is that by design due to any constraints? Can this be improved/fixed?
-
I would agree that the tolerance is a little sensitive. I personally haven't had an issue but I'm also a developer that understands what is going on. I have opened a bug in our bug tracker.
-
Thanks, Mitch.
Exactly, I haven't that big of an issue with that myself either since I naturally seem to tap carefully. 
But imagine everybody else as well as situations like meetings where you look together with somebody else on a tablet and maybe tap from the side (that's where it also happens to me).
-

Originally Posted by
Steffen Hiller
But imagine everybody else as well as situations like meetings where you look together with somebody else on a tablet and maybe tap from the side (that's where it also happens to me).
+1
-
Sencha Premium Member
Our QA hit this issue in testing.
When testing on phones, our QA found it could take 2 or 3 presses to get a 'good' press. We developers didn't notice it as we were working in Chrome with a Mouse.
The mouse tends to stay on the same pixel, while fingers on a phone tend to move a bit.
-
Sencha Premium Member
Here is our workaround fir this:
We found a workaround using: 'Fixed Button'.
First, the URL to the code: github.com/roycyang/Sencha-Touch-Extensions
This extends the Ext.Button:
Code:
Ext.define('GT.Button', {
extend: 'Ext.Button',
xtype: 'fixedbutton',
config: {
You can then replace the xtype: 'button' with xtype: 'fixedbutton' to get the preferred tablet/phone friendly behavior:
Code:
items: [{
//xtype: 'button',
xtype: 'fixedbutton',
iconCls: 'refresh',
iconMask: true,
align: 'left',
id: 'MainViewButtonRefresh'
},
The Hedge
-
Sencha User
Hey guys,
We have just deployed our app and found that a lot of our customers aren't able to tap on buttons as well. Was wondering if there has been any further progress on this issue.
-
Sencha User
The above example is brilliant
-
Sencha User
I've noticed this too, but I always blamed myself.
-
Sencha User
Fix
The problem is a 'tap' event fails in Sencha Touch as soon as you 'move'.
A simple fix is allow 1-2 touchmove events before you invalidate the tap:
http://pastebin.com/fQNY1XzD