You are not logged in.

#1 2010-05-12 17:36:34

android
Member
From: San Diego
Registered: 2003-04-18
Posts: 160

manual launch of HAL causes double mouse events

Hello Archers,

I run fluxbox as my window manager and have removed HAL from the daemons list in rc.conf.

However some K apps, that I occasionally use, require HAL: K3b for instance.
(now I use cdrecord, no touchy clicky GUI required)

If I start HAL manually:

/etc/rc.d/hal start

Then all mouse clicks and scroll wheel events are doubled, i.e. one scroll skips two workspaces.

Stopping the HAL deamon with:

/etc/rc.d/hal stop

doesn't correct this.

I've been informed that HAL registers the mouse a second time to the X server (xorg 1.7.6) and this causes the doubling.

Does anyone know of a way to list the I/O devices registered with X? Or a way to modify them?

I exit X and restart to correct the problem.

My xorg.conf doesn't contain the evdev driver, but still uses the older "mouse" driver. I've tried to research evdev (and recent X architecture in general) but find very little in the way of architectural overview of a modern X server. Lots of old tutorials from the 90s, but I haven't found anything recent and detailed.

Any help or insight is greatly appreciated!

android

xorg.conf:

#       Option         "Xinerama" "false"
        Option         "AllowEmptyInput" "false"
EndSection

Section "Files"
#       RgbPath      "/usr/share/X11/rgb"
        ModulePath   "/usr/lib/xorg/modules"
        FontPath     "/usr/share/fonts/misc"
        FontPath     "/usr/share/fonts/100dpi:unscaled"
        FontPath     "/usr/share/fonts/75dpi:unscaled"
        FontPath     "/usr/share/fonts/TTF"
        FontPath     "/usr/share/fonts/Type1"
EndSection

Section "Module"
        Load  "glx"
        Load  "dbe"
        Load  "dri"
        Load  "record"
        Load  "extmod"
        Load  "xtrap"
        Load  "freetype"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
#       Option      "Protocol" "auto"
#       Option      "Device" "/dev/input/mice"
        Option      "Protocol" "ImPS/2"
        Option      "Device" "/dev/gpmdata"
        Option      "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Device"
        Identifier  "Card0"
        Driver      "intel"
#       Driver      "vesa"
        VendorName  "Intel Corporation"
        BoardName   "G33 integrated graphics"
#       BusID       "PCI:0:2:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
#               Viewport  0 0
                Depth     24
                Virtual   2048 2048
        EndSubSection
EndSection

Offline

#2 2010-05-12 20:09:45

android
Member
From: San Diego
Registered: 2003-04-18
Posts: 160

Re: manual launch of HAL causes double mouse events

OK, I have managed to find my way to: xinput

xinput --list
â¡ Virtual core pointer                         id=2    [master pointer  (3)]
â   â³ Virtual core XTEST pointer               id=4    [slave  pointer  (2)]
â   â³ Mouse0                                   id=6    [slave  pointer  (2)]
⣠Virtual core keyboard                        id=3    [master keyboard (2)]
    â³ Virtual core XTEST keyboard              id=5    [slave  keyboard (3)]
    â³ Keyboard0                                id=7    [slave  keyboard (3)]

Then after I start and stop HAL:

â¡ Virtual core pointer                         id=2    [master pointer  (3)]
â   â³ Virtual core XTEST pointer               id=4    [slave  pointer  (2)]
â   â³ Mouse0                                   id=6    [slave  pointer  (2)]
â   â³ Macintosh mouse button emulation         id=8    [slave  pointer  (2)]
â   â³ ImPS/2 Logitech Wheel Mouse              id=9    [slave  pointer  (2)]
⣠Virtual core keyboard                        id=3    [master keyboard (2)]
    â³ Virtual core XTEST keyboard              id=5    [slave  keyboard (3)]
    â³ Keyboard0                                id=7    [slave  keyboard (3)]
    â³ AT Translated Set 2 keyboard             id=10   [slave  keyboard (3)]
    â³ Sleep Button                             id=11   [slave  keyboard (3)]
    â³ Power Button                             id=12   [slave  keyboard (3)]

The keyboard as well as the mouse are duplicated. But I don't get double keys on keypresses or double clicks on mouse clicks, but i do get double scrolls when I scroll the mouse wheel.

I was able to disable the newly added mouse with:

[johnea@vhost ~]$ xinput --list-props 9
Device 'ImPS/2 Logitech Wheel Mouse':
        Device Enabled (127):   1
        Device Accel Profile (235):     0
        Device Accel Constant Deceleration (236):       1.000000
        Device Accel Adaptive Deceleration (238):       1.000000
        Device Accel Velocity Scaling (239):    10.000000
        Evdev Reopen Attempts (660):    10
        Evdev Axis Inversion (661):     0, 0
        Evdev Axes Swap (663):  0
        Axis Labels (664):      "Rel X" (135), "Rel Y" (136)
        Button Labels (665):    "Button Left" (128), "Button Middle" (129), "Button Right" (130), "Button Wheel Up" (131), "Button Wheel Down" (132), "Button Horiz Wheel Left" (133), "Button Horiz Wheel Right" (134)
        Evdev Middle Button Emulation (666):    2
        Evdev Middle Button Timeout (667):      50
        Evdev Wheel Emulation (668):    0
        Evdev Wheel Emulation Axes (669):       0, 0, 4, 5
        Evdev Wheel Emulation Inertia (670):    10
        Evdev Wheel Emulation Timeout (671):    200
        Evdev Wheel Emulation Button (672):     4
        Evdev Drag Lock Buttons (673):  0

[johnea@vhost ~]$ xinput --set-prop 9 127 0

After which the "Enabled" property was 0 and the double scrolling stopped.

However I still have this second mouse and keyboard as X input devices (they still show in xinput --list).

I find no parameter of xinput for deleting the devices entirely.

Any suggestions are very gratefully appreciated...

android

Offline

Board footer

Powered by FluxBB