Closed Bug 890878 Opened 11 years ago Closed 2 years ago

Support DirectManipulation on Windows

Categories

(Core :: Widget: Win32, enhancement, P4)

All
Windows 8
enhancement

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: josh.tumath+bugzilla, Unassigned)

References

(Blocks 2 open bugs, )

Details

(Keywords: feature, perf, Whiteboard: tpi:+)

The DirectManipulation APIs in DirectX 11 allow very responsive touch and trackpad interactions when scrolling, zooming and dragging and dropping.

This will be needed in Gecko for both Metro Firefox and desktop Firefox on Windows 8 to improve the user experience for touch interaction.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Blocks: 1001440
Whiteboard: tpi:?
Severity: normal → enhancement
Priority: -- → P4
Whiteboard: tpi:? → tpi:+
FWIW, this is starting to land in Chromium: https://chromium-review.googlesource.com/c/chromium/src/+/653581/
Thanks for the pointer! So they create a viewport with a fake 1000x1000 scrollable which they reset after every gesture, and then convert any changes to the content's transform that they detect in OnContentUpdated into fake mouse wheel events.
Microsoft Edge has a flawless implementation of this for a long time. They put a lot of thought into smooth scrolling. They don't even fire mouse wheel events to ensure javascript doesn't interfere with 60fps scrolling:
https://blogs.windows.com/msedgedev/2017/12/07/better-precision-touchpad-experience-ptp-pointer-events/

An implementation has landed behind the pref apz.windows.use_direct_manipulation, it's on nightly for now. It's mainly intended to be used in conjunction with apz.allow_zooming. If anyone finds issues with it please let me know.

I thought that allow zooming would also work on touchpads with use direct manipulation. So first bug: scrolling in the menu with my touchpad instantly closes it. I haven't noticed anything other than that. I also thought that it'd change the scrolling altogether :| my fault for having such high hopes lol

(In reply to Poopooracoocoo from comment #7)

I thought that allow zooming would also work on touchpads with use direct manipulation. So first bug: scrolling in the menu with my touchpad instantly closes it. I haven't noticed anything other than that. I also thought that it'd change the scrolling altogether :| my fault for having such high hopes lol

Would you mind filing a bug for that?

Flags: needinfo?(Poopooracoocoo)

(In reply to Timothy Nikkel (:tnikkel) from comment #8)

(In reply to Poopooracoocoo from comment #7)

I thought that allow zooming would also work on touchpads with use direct manipulation. So first bug: scrolling in the menu with my touchpad instantly closes it. I haven't noticed anything other than that. I also thought that it'd change the scrolling altogether :| my fault for having such high hopes lol

Would you mind filing a bug for that?

I filed bug 1647546. Thanks for reporting.

Flags: needinfo?(Poopooracoocoo)

Will you guys be working on the scrolling personality sometime soon too or is that for another time?

(In reply to Poopooracoocoo from comment #10)

Will you guys be working on the scrolling personality sometime soon too or is that for another time?

Not explicitly. If there are particular aspects to the current scroll personality you don't like feel free to file specific bugs for them.

I have no idea how scrolling works. I just know that it's not as nice as the scrolling in UWP apps. There's also elastic overscrolling, for which there's a bug filed for already.

Severity: normal → S3

Not sure when, but apz.windows.use_direct_manipulation appears to be enabled by default on release now. Can this bug be closed?

This was enabled by default on release in bug 1671235.

Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.