ClementGre / ThreeFingerDragOnWindows

Enables macOS-style three-finger dragging functionality on Windows Precision touchpads.
https://apps.microsoft.com/detail/9MSX91WQCM2V?
MIT License
602 stars 40 forks source link

Can ThreeFingerDragOnWindows be ported to run on Linux using a framework such as mono? #64

Closed dynamohum closed 4 months ago

dynamohum commented 4 months ago

As per title - this is more a feature request than an issue but thought it was worth an ask at least...

I find this app invaluable on Windows after being a long-time MacOS user. More recently I've transferred almost fully to Linux (Fedora 40 to be precise) which is using Wayland to talk to the display server. Wayland appears to have hard-coded touchpad settings - e.g. three finger drag switches workspaces.

It would be awesome if this app when cross compiled using say mono could be configured in such a way as to for example allow four finger dragging of windows (Wayland doesn't appear to be using that combination).

I've searched the web and it just doesn't seem that there's a way in Wayland to set up this functionality reliably and the Wayland devs don't appear to have it on its roadmap.

More details on mono can be found here: https://developer.fedoraproject.org/tech/languages/dotnet/mono.html

Unfortunately my dev skills aren't up to the task of determining if this is feasible or not. I'd be prepared to add a small sponsorship to the team if it is thought that this is a possible solution.

ClementGre commented 4 months ago

Hi @dynamohum, ThreeFingerDragOnWindows is specifically developed for Windows and it does not only use the Windows WinUI graphical framework, but also some low-level functions to subscribe to touchpad raw inputs and to interact with the cursor. Then making a Linux version of TFDOW would require lots of work and is not planned yet.

Luckily, there are various other software on Linux that offer the same feature, take a look at marsqing/ibinput-three-finger-drag, it might work on Fedora.

dynamohum commented 4 months ago

Hi @ClementGre

Thank you very much for replying. I will take a look at the link you provided.