-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Unexpected mouse events when using the touchpad on MacOS #1222
Comments
This is actually the case with all |
Perhaps related to this rust-windowing/winit#1418 (comment) |
Going a bit deeper into this. In
The ones that are suspicious in the context of the error defined above are, in my opinion, NSEventTypePressure. |
Is this on The other issues are most likely related to |
Hey Hector, Yes, this is on master and you are right about CursorLeft. I created a minimal example and it works normally, so I must have some issue in my code. Perhaps the event is captured by one of child widgets. Regarding other events, I am still looking into it. Let's keep this issue open for now. Once I get to the bottom of the matter I will either close or post an update. Thanks! |
I think this is platform specific and not a bug. I am a relatively new mac user and it got me confused. I observed the same behavior in other applications including Windows programs running in a VM. |
System: macOS Monterey 12.1, Apple Silicon
It seems that when using the touchpad, events that are passed on to widgets are not correct. Some are missing, some are included when they should not be.
CursorLeft
is not produced:ButtonPressed(Button::Left)
, I receive a number ofCursorMoved
events beforeButtonReleased(Button::Left)
is produced. If I keep the button pressed,CursorMoved
will continue to be received until I release the button. The same behavior can be observed withButton::Right
:CursorMoved
events are also produced when using a two-finger gesture equivalent to scrolling the wheel:My suspicion is that there are two separate issues at play here:
CursorMoved
is always produced when the touchpad is touched, regardless of what the user does with it. What is interesting is that in the mouse wheel scenario, I am moving my fingers down, which is reflected in the negative delta on the WheelScrolled message, but the coordinates of CursorMoved.point are staticCursorLeft
messageThe text was updated successfully, but these errors were encountered: