Dell Inspiron 1090 (Duo)
Folding detection
When this computer is folded (or unfolded) into a tablet, it sends a keystroke. You can assign the keys XF86LAUNCH1
and XF86LAUNCH2
to these keystrokes with the following commands, respectively:
setkeycodes e073 148 setkeycodes e074 149
Tip: Add those commands to
/etc/rc.local
to execute them when booting.Screen rotation
The screen can be rotated with xrandr
, but the coordinates of the touchscreen are not rotated accordingly. You can fix this with xinput
by running the following commands:
Warning: This commmands depend on the output of
xinput --list
, which may change on driver updates for the touchscreen.xrandr -o left
xinput set-prop "eGalax Inc. USB TouchController" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalax Inc. USB TouchController" 'Evdev Axis Inversion' 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Evdev Axis Inversion' 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Evdev Axis Inversion' 0 1
xrandr -o right
xinput set-prop "eGalax Inc. USB TouchController" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalax Inc. USB TouchController" 'Evdev Axis Inversion' 1 0 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Evdev Axis Inversion' 1 0 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Evdev Axis Inversion' 1 0
xrandr -o inverted
xinput set-prop "eGalax Inc. USB TouchController" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalax Inc. USB TouchController" 'Evdev Axis Inversion' 1 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Evdev Axis Inversion' 0 0 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Evdev Axis Inversion' 0 0
xrandr -o normal
xinput set-prop "eGalax Inc. USB TouchController" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalax Inc. USB TouchController" 'Evdev Axis Inversion' 0 0 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Evdev Axis Inversion' 0 0 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Evdev Axis Inversion' 0 0
Observe that the transformation matrix is the same for normal and inverted orientations, and for left and right orientations. Therefor the corresponding commands need to be applied only when changing between orientations with different transformation matrix.
See also
- Thread in the Ubuntu Forums.
- Luke Ross' website