ClementGre/ThreeFingerDragOnWindows

Coordinates stuck in place while dragging - Surface Pro Flex Keyboard (Uses bluetooth)

Closed this issue · 13 comments

Hi,

The app detects the surface pro flex keyboard successfully, but windows do not move when attempting to drag them.

The mouse coordinates appear to exhibit odd behavior while dragging. While moving the cursor normally, the coordinates will update correctly. When three fingers are used to drag however, the coordinates appear to offset any movement and stay the same. While moving with three fingers, I can see the coordinates briefly updating before resetting back to the original values.

All three-finger gestures are disabled in windows settings, and testing with the same setting using the standard surface pro keyboard works as expected. The flex keybaord variant uses bluetooth instead of the direct connection that is used by the standard keyboard, so wondering if this may be related.

Log file - Logs_ThreeFingerDragOnWindows.txt

Win11 Enterprise Version 10.0.26100 Build 26100
Latest app release v2.0.4.0 x64

Hi @Kawilki-M,

In the provided logs, the apps detect the three fingers, but the drag is not triggered because the third finger is sent as a separate input from the two first fingers. Then the apps think you are alternatively using one and then two fingers. This might be a bug in the touchpad driver, I'll take a look at it soon.

I just released a new version of TFDOW that should fix some bugs regarding the touchpad raw input parsing for touchpads that sends reports "sequentially".

Can you try again on the v2.0.5 (Microsoft Store).
If you still have issues, you can share again the log file.

Thanks so much for the quick response and fix. It looks like the issue is still occurring unfortunately.

It looks like single contact mode swaps from true to false when I attempt to perform a three finger drag and the coordinates are now updating appropriately, but the cursor does not move.

Log file -
Logs_ThreeFingerDragOnWindows.txt

Hi, your touchpad still sends reports of only two fingers instead of three. However, I noticed that it sends the right number of contact count. Then it sometimes sends a contact count of 3 while providing only two contact IDs and coordinates.

I don’t know if this is a parsing bug or an issue related to your touchpad. I will look into that.

Hi guys. Same behavior since 3 days ago. Thanks for read.

Logs_ThreeFingerDragOnWindows.txt

Hi @gsorianSLW, your log file shows the same issue as @Kawilki-M. If you are going back to v2.0.4 and have no issue with this version, can you make a log file on it for me to compare?

Ok, thank you for all the log files provided.
The v2.0.5 indeed broke the TFD for the touchpads that send each contact as individual raw hid reports.

I fixed the bug and tried to make a new parsing algorithm that should work with all touchpads, even if I can’t test it.
The v2.0.6 is on its way to being certified by the Microsoft Store!

Ok, thank you for all the log files provided. The v2.0.5 indeed broke the TFD for the touchpads that send each contact as individual raw hid reports.

I fixed the bug and tried to make a new parsing algorithm that should work with all touchpads, even if I can’t test it. The v2.0.6 is on its way to being certified by the Microsoft Store!

Hi Clement, sorry I didn't see your message early... I have another lap with v2.0.4 which is working as expected, so if helps, I'm sharing the log (v2.0.4) file.

Logs_ThreeFingerDragOnWindows.txt

And.. Thanks for the fix!...

Hi @gsorianSLW, indeed, on this laptop, all contacts are sent in a single raw hid report, just like on the touchpad I use for tests 😁
Updating TFDOW to v2.0.5 on this laptop should not cause any issues.

I just released v2.0.6. It should fix this issue. Can you try it out?
See v2.0.6 | MS Store

@ClementGre, this version fixed the issue for me! 🥳 Thank you for all of the effort!

That's wonderful news! Thank you so much for the donation, I truly appreciate it!

hey Clement... thanks, man!...