Xtr126 / XtMapper

Keyboard and mouse input mapper
https://xtr126.github.io/XtMapper-docs
GNU General Public License v3.0
208 stars 22 forks source link

Feature request: Hybrid Pointer (mouse/hover effect and touch) #107

Closed jwurzer closed 2 months ago

jwurzer commented 2 months ago

Describe the issue Currently mouseover/hover effect doesn't work if XtMapper is active to convert the mouse as touch. This make sense because touch has no hover effect. But the are scenarios (e.g. webbrowser, some games, etc) where a hover effect and touch would be useful. The outdated old app tincore keymapper has such a feature called "hybrid pointer".

To Reproduce Currently this feature is not available.

Expected behavior The hybrid pointer is like a mouse which sends the mouse position if no mouse button is pressed. therefore the mouseover/hover effect works. At a mouse click and mouse drag movement it sends only the touch events.

An extra option to enable the hybrid pointer behaviour would be really great :-)

best regards

Xtr126 commented 2 months ago

Describe the issue Currently mouseover/hover effect doesn't work if XtMapper is active to convert the mouse as touch. This make sense because touch has no hover effect. But the are scenarios (e.g. webbrowser, some games, etc) where a hover effect and touch would be useful. The outdated old app tincore keymapper has such a feature called "hybrid pointer".

To Reproduce Currently this feature is not available.

Expected behavior The hybrid pointer is like a mouse which sends the mouse position if no mouse button is pressed. therefore the mouseover/hover effect works. At a mouse click and mouse drag movement it sends only the touch events.

An extra option to enable the hybrid pointer behaviour would be really great :-)

best regards

There is a option in settings to set pointer mode, with system pointer mode it works exactly like system pointer, generating hover events. However it works only on Bliss OS or other Android-x86 based systems as they have the framework patch to allow it.

jwurzer commented 2 months ago

Ok, my hardware is a ODROID-N2+ (arm64) with a rooted LineageOS 18.1 (Android 11). Maybe LineageOS should also include this framework patch?

Xtr126 commented 2 months ago

It is generally seen in Android-x86 based systems as the patch was intended for VMs. Without that patch system pointer mode misbehaves. It emulates a virtual tablet device like that of a VM. I'll add hover events for the other mode too as it's possible, thanks for the suggestion.

Xtr126 commented 2 months ago

It turns out that after generating hover events all current touch events are cancelled by android. So it is unsuitable for playing games with mouse and keyboard at the same time. I'll either remove it or make it optional.

Xtr126 commented 2 months ago

Nevermind, I managed to workaround the issue.

It turns out that after generating hover events all current touch events are cancelled by android. So it is unsuitable for playing games with mouse and keyboard at the same time. I'll either remove it or make it optional.