There are a couple of issues: 1. nsMouseWheelTransaction::OnEvent() doesn't handle NS_MOUSE_PIXEL_SCROLL as NS_MOUSE_SCROLL. Therefore, pixel scroll event doesn't cause to end transaction even if mouse cursor is moved. This isn't a problem for Windows high resolution scroll, but this is actually a bug. 2. nsMouseWheelTransaction::OnEvent() doesn't handle NS_QUERY_SCROLL_TARGET_INFO as its mouse scroll event. NS_QUERY_SCROLL_TARGET_INFO causes calling DoScrollText() for querying the information. At this time, DoScrollText() calls nsMouseWheelTransaction::UpdateTransaction() without the mouse move check in OnEvent(). Therefore, if high resolution scrolling is enabled, mouse move doesn't cause canceling the transaction. This is a regression of bug 605648.
Attachment #533525 - Flags: review?(Olli.Pettay)
Attachment #533525 - Flags: review?(Olli.Pettay) → review+
Status: ASSIGNED → RESOLVED
Last Resolved: 8 years ago
Resolution: --- → FIXED
8 years ago
Target Milestone: --- → mozilla6
Component: Event Handling → User events and focus handling
Product: Core → Core
You need to log in before you can comment on or make changes to this bug.