Pete Zaitcev (zaitcev) wrote,
Pete Zaitcev

My first day of rage at X

Yesterday, I wrote about X adding an undesired mouse. Today I looked at it, and...


     * hack: always synthesize a 'mouse' section configured to send core
     * events, unless a 'void' section is found, in which case the user
     * probably wants to run footless.
    int _found = 0;
    IDevPtr i;
    for (i = servlayoutp->inputs; i->driver; i++) {
        if (!strcmp(i->driver, "void") || !strcmp(i->driver, "mouse")) {
            _found = 1; break;
    if (!_found) {
        xf86Msg(X_INFO, "No default mouse found, adding one\n");

Thus, the solution:

[root@xen-theta ~]# diff -u /etc/X11/xorg.conf.jittery /etc/X11/xorg.conf 
--- /etc/X11/xorg.conf.jittery  2006-12-13 21:37:49.000000000 -0800
+++ /etc/X11/xorg.conf  2006-12-13 21:38:51.000000000 -0800
@@ -5,6 +5,7 @@
        Screen      0  "Screen0" 0 0
        InputDevice    "Keyboard0" "CoreKeyboard"
        InputDevice    "VMouse0"
+       InputDevice    "IHATEKLUDGERS"
 Section "InputDevice"
@@ -35,6 +36,11 @@
        Option      "Device"            "/dev/input/mice"
+Section "InputDevice"
+        Identifier  "IHATEKLUDGERS"
+       Driver      "void"
 Section "Device"
        Identifier  "Videocard0"
        Driver      "fbdev"
[root@xen-theta ~]# 

Well, well, well. At least this is open source. With Windows, I'd never know what hit me (or had to buy a hideously expensive book, and sign up for MSDN).

The motion is not jumpy anymore, but still not correct. I feed correct values into xf86PostMotionEvent(), but my ->conversion_proc receives them weirdly scaled (by about 20%, and offset). Dunno what's up with that.

{Fridge update: git can tell the commit, and the author turns out to be none other than ajaxxx. What was he thinking?}

Tags: advogato, linux, x11, xen
  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded