Touch events dispatched from the platform layer are sent to the main frame's event handler. However if the main frame does not use touch events but an embedded iframe does, the event is not propagated to the iframe. This is because we bail out early in EventHandler::handleTouchEvent if the frame's document has not registered for touch events. As it is the document inside the iframe and not the document on the main frame that has registered for the events, we bail out. We should instead check if the document that the target element belongs to has registered for touch events after the hit detection has taken place, as the hit detection descends into iframes. Patch and test case to follow.
Created attachment 47014 [details] Proposed patch and test case.
Comment on attachment 47014 [details] Proposed patch and test case. Clearing flags on attachment: 47014 Committed r53597: <http://trac.webkit.org/changeset/53597>
All reviewed patches have been landed. Closing bug.