Because of the panning behavior in Firefox Mobile, mousemove events are not dispatched to websites. That can break many popular web applications, like Google Maps, as well as any drag-n-drop functionality on a web page.
Firefox Mobile should be able to pass mousemove events to webpages that listen for the events. At the same time, we should not break chrome-level panning (sidebars and titlebar).
Design for preliminary behavior has been completed. We are ready to start implementing.
- Implement initial design
- Test the effectiveness of the approach
- Design: madhava
- Team Members: vingtetun, mfinkle
Madhava, Stuart and Finkle talked through an initial design. The high points are:
- Use "getListenerInfoFor" to see if a content element wants to receive a mousemove event. If so, displatch it like we do for mousedown and mouseup. See http://mxr.mozilla.org/mozilla1.9.2/source/content/events/public/nsIEventListenerService.idl
- If we are displatching mousemoves to the content, we need to create a finger-sized border area around the chrome window. Any touches the start in this border will _always_ start chrome panning and will _not_ be redispatched to content - no matter what.
- Support more webapps - ones that use mouse interactions.
- Support every webapp and every edge case.