Two cursor using Xinerama on XServer 1.5.99.3

GordonYuan at viatech.com.cn GordonYuan at viatech.com.cn
Tue Mar 10 19:36:49 PDT 2009


Hello, all

 

    I encountered a Cursor problem when Xinerama is enabled on Ubuntu
9.04 alpha 5 (XServer 1.5.99.3).

The part of xorg.conf as follows:

       Section "ServerLayout"

              Identifier     "Default Layout"

              Screen      0       "Screen0" 0 0

              Screen     1        "Screen1" rightof "Screen0"      

              Option "Xinerama"

EndSection

       I use hardware cursor.  But there are two pointers:

     Step 1:  move cursor from screen0 to screen1. There is hardware
cursor on the edge of Screen0 .And  Screen1 has cursor too, seems to be
software cursor. 

     Step 2:  move cursor back from screen1 to screen0.  Two cursor
appears on Screen0, I am sure one of them is hardware cursor. The other
seems to be softwar cursor.

     

     I compared Xorg 1.5.99.3 with Xorg 1.5.2, xf86CursorSetCursor seems
to cause the problem.  Xf86CursorSetCursor in Xorg 1.5.99.3 adds
judgement "pDev != inputInfo.pointer" . 

     For example: Xorg 1.5.99.3   xf86Cursor.c  Line 305  if
(ScreenPriv->SWCursor || pDev != inputInfo.pointer)

                 Xorg 1.5.99.3   xf86Cursor.c   Line 317 if (pDev ==
inputInfo.pointer)

 

During my debuging process(move cursor from screen to screen), I found
pDev  was never equal to inputInfo.pointer every time
xf86CursorSetCursor was called . 

What's the meaning of inputInfo.pointer? Shouldn't pDev is equal to
inputInfo.pointer?

     Thanks!

 

Best wishes,

Gordon

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x.org/archives/xorg/attachments/20090311/441e9d45/attachment.html>


More information about the xorg mailing list