2 touchscreens 2 pointers 2nd pointer wrong positioning

Victor Seryodkin vvscore at gmail.com
Thu Feb 24 05:20:53 PST 2011


Continuing
http://lists.freedesktop.org/archives/xorg/2011-February/052556.html


After some experiments I've found out that the following sequence
produces required result
(2 touchscreens, 2 pointers, each pointer working at one touchscreen only):

1) change xorg.conf:

Mouse device
  InputDevice    "Mouse0"            "CorePointer"
should be disabled

Otherwise after step 2 (creating auxiliary pointer)
both pointers move simultaneously but with different speed.

Section "ServerLayout"
       Identifier     "DualScreenLayout"

       Screen  0  "DisplayLinkScreen" 0 0
       Screen  1  "VGAScreen" RightOf "DisplayLinkScreen"

       InputDevice    "DisplayLinkTouch"  "CorePointer"
       InputDevice    "VGATouch"          "SendCoreEvents"

       InputDevice    "Keyboard0" "CoreKeyboard"
#       Option "Xinerama" "Off"
EndSection

2)start XOrg

3)create auxiliary pointer for the secondary touch screen:
    xinput create-master ...
    xinput list
    xinput reattach ...

    At this step auxiliary pointer working area covers only the
primary touch screen (DisplayLinkScreen).
    if you move the finger from the left to the right side of the
secondary touchscreen (VGAScreen)
    auxiliary pointer moves from the left to the right side of the
primary screen(DisplayLinkTouch)


4)xinput set-mode "VGATouch" RELATIVE
    At this step auxiliary pointer working area stretches over both screens:
    if you move the finger from the left to the right side of the
secondary touchscreen (VGAScreen)
    auxiliary pointer moves from the left side of the primary
screen(DisplayLinkScreen)
    to the right side of the secondary screen(VGAScreen)

5)move cursor to the secondary screen(VGAScreen) by hand

6)xinput set-mode "VGATouch" ABSOLUTE
   At this step auxiliary pointer working area shrinks to the
secondary touchscreen only(VGAScreen):
   if you move the finger from the left to the right side of the
secondary touchscreen (VGAScreen)
   auxiliary pointer moves from the left to the right side of the
secondary screen(VGAScreen)
   as it is required.

2 touchscreen configuration works with xinerama enabled as well.

There is still the problem with the step 5 (move cursor to the
secondary screen(VGAScreen) by hand.

The question is - why such witchcraft (steps 4,5,6) need to be done to
get proper result?



More information about the xorg mailing list