Closed Bug 832101 Opened 12 years ago Closed 12 years ago

Work - ui.mouse.radius.enabled should NOT fluff out click targets for precise (mouse/trackpad/pen) input

Categories

(Core :: DOM: Events, defect)

x86_64
Windows 8.1
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla21

People

(Reporter: mbrubeck, Assigned: mbrubeck)

References

Details

(Whiteboard: [feature=work][completed-elm])

Attachments

(2 files, 1 obsolete file)

In bug 788109 we enabled "ui.mouse.radius.enabled" and "ui.touch.radius.enabled" by default in Metro Firefox. These prefs, added in bug 780847, respectively allow mouse events (e.g. mousedown, mouseup, click) and touch events (touchstart, touchmove, touchend) to target nearby elements within a small radius. However, these affect events from both touchscreen input and "precise" pointer input (mouse, trackpad, stylus). We want to fluff out the targets only for events originating with touchscreen input. (To clarify: touch input should have "fluffed" targets for both touch events and mouse events; precise input should not have any "fluffed" targets.)
Component: Input → DOM: Events
Product: Firefox for Metro → Core
Version: unspecified → Trunk
That's a good point. The fix would be trivial in PositionedEventTargeting.cpp *if* we can tell the difference between mouse events generated from touch events vs real mouse events there.
BTW it would be nice to have a pref that lets us test this feature using real mouse events.
Summary: ui.mouse.radius.enabled should NOT fluff out click targets for precise (mouse/trackpad/pen) input → Work - ui.mouse.radius.enabled should NOT fluff out click targets for precise (mouse/trackpad/pen) input
Whiteboard: [metro-mvp][LOE:2][metro-it3] → feature=work
Attached patch WIP (obsolete) (deleted) — Splinter Review
This seems like the right solution to me; what do you think? I still need to fix/add tests, add a pref as requested above, and make sure this doesn't break B2G or Android.
Assignee: nobody → mbrubeck
Status: NEW → ASSIGNED
Attachment #705180 - Flags: feedback?(roc)
Comment on attachment 705180 [details] [diff] [review] WIP Review of attachment 705180 [details] [diff] [review]: ----------------------------------------------------------------- Looks great!
Attachment #705180 - Flags: feedback?(roc) → feedback+
Depends on: 833663
To test this properly, we need to set the inputSource property on events we generate in our tests. This adds support for "pressure" and "inputSource" in synthetic mouse events for mochitests.
Attachment #705180 - Attachment is obsolete: true
Attachment #705505 - Flags: review?(bugs)
Added a pref and some tests. Currently, only Metro has ui.radius.* enabled by default. It was recently disabled in B2G (see bug 789358 comment 28). I posted a patch in bug 833663 to make sure the prefs will work correctly when B2G re-enables them. Pushed to Try: https://tbpl.mozilla.org/?tree=Try&rev=f7e58df637fb
Attachment #705507 - Flags: review?(roc)
Attachment #705505 - Flags: review?(bugs) → review+
Pushed to Try again with a minor change to part 1, to fix a broken test: https://tbpl.mozilla.org/?tree=Try&rev=16c12be37aea
Whiteboard: feature=work → [feature=work][completed-elm]
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla21
OS: Windows 8 Metro → Windows 8.1
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: