@tonyawad88 so a few things to clarify here…
“default threshold”: There’s no timer or threshold set in Ionic for triggering a click event. As I stated above, we trigger the animation on touchStart, and the browser handles firing the click event. We do not intercept the click handlers and trigger them.
I’m don’t 100% agree with the suggestions of using
@HostListener('touchend'), as that could cause more accidental triggers, which in my opinion is much worse.
Again, I want to point out that this behaviour can be replicated without Ionic and without and JS Framework involved.
If you test this on a mobile device and inspect the logs, you’ll see a touchStart, touchEnd, and click handlers being fired in the correct order. In some cases, the browser will opt to not fire a click event if it takes too long to release the button (or any clickable element). This is the browsers behaviour.
I recorded an example of this here.
You can see that the click events can star off firing, but you can see them stop if you hold on to the button just a bit too long.