Closed Bug 895711 Opened 8 years ago Closed 8 years ago

Sending NS_TOUCH_START events through HandleEventWithTarget silently fails to reach content

Categories

(Core :: Layout, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla25

People

(Reporter: eeejay, Assigned: eeejay)

References

Details

Attachments

(1 file)

This has to do with the fact that the Touch objects never get their mChanged set to true. This is handled in HandleEvent where new touches are compared with the current touch queue. But HandleEventWithTarget calls HandleEventInternal directly.
I actually am not sure if this is 100% correct. Basically, everything that does not have to do with retargetting should not be in HandleEvent, but in HandleEventInner instead.
Attachment #778709 - Flags: review?(bugs)
Blocks: 894485
So why do we need this? For a11y dispatching touch events?
Yes, historically, a11y only dispatched click events, which hardly works on any modern mobile web app, including GAIA. So this is needed for Firefox OS, or virtually every file in GAIA would need to have click listeners registered in addition to the already present touch listeners, and that just for a11y purposes.
Comment on attachment 778709 [details] [diff] [review]
Mark new touches in touchstart as changed in HandleEventInner

Remove touch->mMessage = aEvent->message; from the old place?
Attachment #778709 - Flags: review?(bugs) → review+
https://hg.mozilla.org/mozilla-central/rev/619da1470dea
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
Product: Core → Core Graveyard
Component: Layout: Misc Code → Layout
Product: Core Graveyard → Core
You need to log in before you can comment on or make changes to this bug.