Bug 26102 - Rotating one monitor of a dual-head setup causes cursor problems
Summary: Rotating one monitor of a dual-head setup causes cursor problems
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: 7.5 (2009.10)
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Nouveau Project
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-01-18 10:18 UTC by Drew Frank
Modified: 2010-02-11 03:35 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
My Xorg.0.log after rotating a screen left and then back to normal. (25.62 KB, text/plain)
2010-01-18 10:24 UTC, Drew Frank
no flags Details
My xorg.conf (1.15 KB, application/octet-stream)
2010-01-18 10:25 UTC, Drew Frank
no flags Details

Description Drew Frank 2010-01-18 10:18:12 UTC
OVERVIEW

Rotating either of my two monitors using xrandr 1.2 causes problems with the cursor:

1) The cursor fails to rotate along with the rest of the screen.
2) The "click point" is shifted relative to the cursor by about 40 pixels. i.e., after "xrandr --output VGA-1 --rotate left" all mouse clicks affect the screen element approximately 40 pixels to the left of the visible cursor.
3) The region over which the cursor is allowed to move is not aligned with the edges of the screen.  Again after rotating the screen left, the cursor appears to hit a wall about 40 pixels from the left edge of the screen.  The cursor can also move beyond the right edge of the screen.

STEPS TO REPRODUCE

Set up nouveau with 2 monitors.  Use xrandr to rotate one of them, then move the mouse around.

ACTUAL RESULTS

The problems described in the overview.

EXPECTED RESULTS

The cursor should rotate along with the screen, clicks should be sent to the point directly under the cursor, and the cursor's range of motion should be bounded by the screen edges.

BUILD DATE & PLATFORM

I am running Arch Linux with nouveau built from git on 2010-01-13.  My video card is the GeForce 9500 GT.
Comment 1 Drew Frank 2010-01-18 10:24:33 UTC
Created attachment 32697 [details]
My Xorg.0.log after rotating a screen left and then back to normal.
Comment 2 Drew Frank 2010-01-18 10:25:06 UTC
Created attachment 32698 [details]
My xorg.conf
Comment 3 B Jonnh 2010-02-08 07:34:18 UTC
Same problem here. Can send all the files you want.

Comment 4 Francisco Jerez 2010-02-10 10:33:08 UTC
Could you try again with latest git?
Comment 5 Drew Frank 2010-02-10 17:33:29 UTC
(In reply to comment #4)
> Could you try again with latest git?
> 

Latest git build fixes the problem :).  Thanks, developers!

I do notice a new issue, where my cursor is not constrained to my monitor space.  i.e. my setup looks like this:
              _____
 ___________ |     |
|           ||     |
|   Mon1    ||Mon2 |
|___________||     |
             |_____|
and my cursor is able to move beyond the top and bottom of Monitor 1.  Similarly, it can move across the left boundary of Monitor 2 from the highest and lowest points into the same regions.  It seems like the cursor should be screen should be constrained such that this can't happen.  Perhaps this belongs in its own bug report, though.
Comment 6 Francisco Jerez 2010-02-11 03:35:24 UTC
(In reply to comment #5)
> (In reply to comment #4)
> > Could you try again with latest git?
> > 
> 
> Latest git build fixes the problem :).  Thanks, developers!
> 
Thanks. I'm closing this bug then.

> I do notice a new issue, where my cursor is not constrained to my monitor
> space.  i.e. my setup looks like this:
>               _____
>  ___________ |     |
> |           ||     |
> |   Mon1    ||Mon2 |
> |___________||     |
>              |_____|
> and my cursor is able to move beyond the top and bottom of Monitor 1. 
> Similarly, it can move across the left boundary of Monitor 2 from the highest
> and lowest points into the same regions.  It seems like the cursor should be
> screen should be constrained such that this can't happen.  Perhaps this belongs
> in its own bug report, though.
> 

Definitely not nouveau's fault.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.