Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inclusion of Pressure Report at 0D:30 #517

Open
velcrome opened this issue Apr 9, 2023 · 0 comments
Open

Inclusion of Pressure Report at 0D:30 #517

velcrome opened this issue Apr 9, 2023 · 0 comments

Comments

@velcrome
Copy link

velcrome commented Apr 9, 2023

Pre-report checks

  • [ YES ] Have you checked (use search) Azure DevOps Board and Github issues for known bugs and plans?

Is your feature request related to a problem? Please describe.
I am using a Magic Trackpad2 as a pressure sensitive Multi-Touch device, and need the touch values for drag&drop operations with multiple fingers. Default Windows Gestures are not sufficient for my needs, in fact I disabled almost all of them in Windows' settings so they don't interfere with my application.

Describe the solution you'd like
Your code handles pressure fine internally, but unfortunately it doesn't forward them.

It would be great if RawInputDevice reports could make pressure data available, for each contact. I am getting solid data for X, Y, ID and even touch release, but pressure is missing.

I found info that Digitizers such as Pen and Touchscreen have an optional field called Pressure at 0D:30. I think that would be the most straightforward solution.

Of course, any other solution that enables me to get touch data with pressure values is also fine.

Describe alternatives you've considered
I tried utilising the mouse reports, that have been synthesised by the driver, but their button data is not sufficient:

  • reliable Left Clicks will only happen if there was no more than a single contact prior
  • Taps will only register as mouse buttons when there was no prior contact at all (which would help, Windows allows forwarding Taps to Right Click and/or Middle Click
  • There are some comments in the code about forwarding raw touch data, and defuzzing. But not sure how that relates to my question

Additional context
Precision Touchpads seem to have no optional 0D:30 Pressure field (I assume because pressure is being tightly regulated by hardware design guidelines and that field would have little practical value for regular Touchpads certified by MS).

I am using RawInput-Sharp to retrieve data. It is handling touchscreens, touchpads and pens all the same, and fails gracefully if a field is not available.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant