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

Sticky cursor on the borders with the Raspberry Pi and KMSDRM backends #2727

Closed
SDLBugzilla opened this issue Feb 11, 2021 · 0 comments
Closed

Comments

@SDLBugzilla
Copy link
Collaborator

This bug report was migrated from our old Bugzilla tracker.

These attachments are available in the static archive:

Reported in version: 2.0.7
Reported for operating system, platform: Linux, All

Comments on the original bug report:

On 2017-11-17 23:08:44 +0000, Manuel Alfayate Corchete wrote:

Hi,

I noticed the mouse cursor is sticky on the borders on current ScummVM GIT versions (due for major release soon, so it should be fixed).

The cause is well known to me:
WarpMouse will position the mouse on the border, BUT it won't update the coordinates internally.

The function that does that internal update is SDL_SendMouseMotion.

Both Raspberry Pi and KMSDRM backends are missing an importan SDL_SendMouseMotion() call at the end of their WarpMouse implementations.
I was going to do a fast fix for this, but I can't because the SDL_SendMouseMotion() calls I do always end up segfaulting and I can't find the cause...

I have tried adding:
SDL_SendMouseMotion(win, mouse->mouseID, 0, x, y);

at the end of RPI_WarpMouse(), after I call SDL_GetMouse() to retrieve de mouse, with no success (segfault). Also tried other points in the code, with the same fate.

Any help is welcome.

On 2017-11-17 23:24:35 +0000, Manuel Alfayate Corchete wrote:

Created attachment 3089
Testcase for the "sticky borders" problem on the Raspberry Pi

I have added this small testcase where you can see how the internal coordinates are NOT being updated on the SDL_WarpMouseInWindow() if your run it on a Raspberry Pi, but it they are updated on X11, Mac, etc... so you can see a call to SDL_SendMouseMotion() on RPI_WarpMouse() is needed.

On 2017-11-20 11:51:33 +0000, Manuel Alfayate Corchete wrote:

Please close this, it's fixed by:
https://bugzilla.libsdl.org/show_bug.cgi?id=3974

On 2017-12-08 12:40:49 +0000, Manuel Alfayate Corchete wrote:

This can be closed, as the bug producing it is already fixed.

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

No branches or pull requests

1 participant