Bug 394805 - Dual-monitor setup shouldn't allow the mouse to disappear
Summary: Dual-monitor setup shouldn't allow the mouse to disappear
Status: RESOLVED UPSTREAM
Alias: None
Product: openSUSE 11.0
Classification: openSUSE
Component: X.Org (show other bugs)
Version: Factory
Hardware: x86-64 openSUSE 11.0
: P5 - None : Enhancement (vote)
Target Milestone: ---
Assignee: Federico Mena Quintero
QA Contact: E-mail List
URL: https://bugs.freedesktop.org/show_bug...
Whiteboard: x-server, gnome-usability
Keywords:
Depends on:
Blocks: randr-tracker 387500
  Show dependency treegraph
 
Reported: 2008-05-27 18:04 UTC by Federico Mena Quintero
Modified: 2009-02-26 19:04 UTC (History)
2 users (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Federico Mena Quintero 2008-05-27 18:04:42 UTC
For more info, please see bug #387500.

When you have a dual-monitor setup, with monitors of different resolutions (A and B):

    +===========+=========+
    |           |         |
    |    A      |    B    |
    |           +=========+
    |           |    C
    +===========+


Then if the mouse is in B, and you move it down, the mouse doesn't stop at the bottom edge of B.  Instead, it "disappears" in what would be the rectangle C.

The mouse should stop at the edges of monitors instead of disappearing into the larger virtual rectangle.
Comment 1 Stefan Dirsch 2008-05-27 18:24:54 UTC
This behaviour is driver related. IIRC RANDR 1.2 (e.g. intel), NVIDIA and MergedFB (e.g. mga) behave this way. The old Xinerama way (still also supported by mga driver e.g.) behaved differently as you would expect it. 

This is a known issue and IMHO it should be configurable. But at the moment nobody is working on this and I don't expect this to change anytime soon. I remember this having discussed already some years ago (RANDR 1.2 was not involved at this time of course). And IIRC even on Windows you have different behaviours depending on the hardware/driver and the behaviour is *not* configurable.

We could keep this one open as enhancement, but I'm afraid the result would be the same as WONTFIX, which I chose for now.
Comment 2 Federico Mena Quintero 2008-05-28 00:02:04 UTC
OK, I'll keep this open as an enhancement.  If you point me to the right place in the code, I can try to fix it :)
Comment 3 Federico Mena Quintero 2008-05-28 00:09:52 UTC
Note to self:

xserver/randr/rrpointer.c: see RRPointerToNearestCrtc(); that's the "where should the pointer go if it moves outside all the active monitors?" function.
Comment 4 Stefan Dirsch 2008-10-03 09:56:42 UTC
BTW, reintroduction of panning is planned for RANDR 1.3.
Comment 5 Stefan Dirsch 2008-12-21 09:06:36 UTC
Panning will be in RANDR 1.3, scheduled for xorg-server 1.6. Driver needs support for it, e.g. it's already implemented in radeonhd. Closing as upstream.
Comment 6 Federico Mena Quintero 2009-02-26 19:04:55 UTC
I just filed https://bugs.freedesktop.org/show_bug.cgi?id=20334 about this, by the way.