Steps to reproduce the problem:
1. Load test case at http://jsil.org/tts/test
2. Pan and swipe around repeatedly to interact with the virtual joysticks
What is the expected behavior?
Once the game is loaded and running (and its touch handlers are active, see JSIL.Browser.Touch.js), touch inputs should never trigger a scroll or zoom of the document.
The game should pause sometimes in response to touch input, then resume. This is expected and the browser should handle it correctly.
Furthermore, touch input events should never get dropped or 'hang'.
What went wrong?
Swipes periodically seem to trigger scrolling operations and in some cases seem to even trigger zooming operations.
Occasionally a swipe will toggle the visibility of the Chrome address bar which resizes the document's viewport and this sometimes causes touches to get 'stuck' and remain in the game state forever (this appears to be Chrome erroneously reporting the touch in touch events, or never sending any further touch events. Not sure which)
Did this work before? N/A
Chrome version: Chrome Beta 28.0.1500.54 1500054 Channel: beta
OS Version: 4.2.2
Note that this intentionally causes random pauses inside the touchstart/touchmove events. This is to reproduce the behavior of some unfortunate GC pauses this application used to exhibit (the GC pauses definitely made touch behavior worse).
Even without the pauses the application still does not handle touches correctly in Chrome (feel free to comment them out, they're in JSIL.Browser.Touch.js)
Of course, if you test this in desktop Chrome with emulated touch events, it works perfectly, because desktop Chrome does not ignore overflow: hidden.