We are currently migrating Bugzilla to GitHub issues.
Any changes made to the bug tracker now will be lost, so please do not post new bugs or make changes to them.
When we're done, all bug URLs will redirect to their equivalent location on the new bug tracker.

Bug 405

Summary: Relative mouse mode doesn't work in full-screen
Product: SDL Reporter: Andrew Zabolotny <anpaza>
Component: eventsAssignee: Ryan C. Gordon <icculus>
Status: RESOLVED DUPLICATE QA Contact: Sam Lantinga <slouken>
Severity: normal    
Priority: P2    
Version: 1.2.10   
Hardware: x86   
OS: Linux   
Attachments: The patch that adds to testgl.c the ability to hide mouse cursor with Ctrl+H

Description Andrew Zabolotny 2007-03-03 12:54:57 UTC
My application uses relative mouse motion. The WhatsNew file says (pinned to version 1.0.3:

Under X11, if you grab the input and hide the mouse cursor, the mouse will go into a "relative motion" mode where you will always get relative motion events no matter how far in each direction you move the mouse - relative motion is not bounded by the edges of the window.

This doesn't work. To prove this I did a small patch to the testgl.c program which allows you to hide the mouse cursor (which is one of two pre-requisites in order to enable relative mouse reporting), and it already allows for input grabbing.

If you apply the patch and compile the testgl application, press Ctrl+H and Ctrl+G which will both grab the mouse and hide the mouse cursor. However, the relative mouse motion is still reported until the mouse hits the window border.

This used to work with SDL 1.2.8 (if I remember correctly), but it doesn't work anymore with SDL 1.2.10.
Comment 1 Andrew Zabolotny 2007-03-03 12:56:48 UTC
Created attachment 195 [details]
The patch that adds to testgl.c the ability to hide mouse cursor with Ctrl+H
Comment 2 Ryan C. Gordon 2007-03-03 17:45:21 UTC
We already fixed this in Subversion (but the fix isn't in an official release, yet).

Detailed explanation is in Bug #299.

--ryan.



*** This bug has been marked as a duplicate of bug 299 ***