Они срабатывают когда ролик качаешь влево-вправо, и их очень удобно биндить на «взад-вперед» в браузере.
Ситуация какая-то идиотская. На работе стоит Федора и там они работают и выдают ButtonPress и ButtonRelease. Дома стоит Арч, и в нем эти кнопки выдают вот какие события:
LeaveNotify event, serial 36, synthetic NO, window 0x2c00001,
root 0x261, subw 0x0, time 1745166, (95,84), root:(217,161),
mode NotifyGrab, detail NotifyAncestor, same_screen YES,
focus YES, state 0
EnterNotify event, serial 36, synthetic NO, window 0x2c00001,
root 0x261, subw 0x0, time 1745166, (95,84), root:(217,161),
mode NotifyUngrab, detail NotifyAncestor, same_screen YES,
focus YES, state 0
KeymapNotify event, serial 36, synthetic NO, window 0x0,
keys: 97 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
LeaveNotify event, serial 36, synthetic NO, window 0x2c00001,
root 0x261, subw 0x0, time 1746168, (95,84), root:(217,161),
mode NotifyGrab, detail NotifyAncestor, same_screen YES,
focus YES, state 0
EnterNotify event, serial 36, synthetic NO, window 0x2c00001,
root 0x261, subw 0x0, time 1746168, (95,84), root:(217,161),
mode NotifyUngrab, detail NotifyAncestor, same_screen YES,
focus YES, state 0
KeymapNotify event, serial 36, synthetic NO, window 0x0,
keys: 97 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Естественно они не биндятся никуда.
Я всегда думал, что в Арче что-то не так, и забил. Но недавно я поставил Гном и они внезапно заработали. Гном я потом снес, но кнопки продолжили работать. Теперь мне пришлось переставить систему (перешел на x86_64), и кнопки опять отвалились.
Хоть убей не понимаю что такого надо поставить, чтобы они опять заработали. Мыша обычная - Logitech RX250. Вот логи иксов:
[ 134.125] (II) config/udev: Adding input device Logitech USB-PS/2 Optical Mouse (/dev/input/event2)
[ 134.125] (**) Logitech USB-PS/2 Optical Mouse: Applying InputClass "evdev pointer catchall"
[ 134.125] (II) Using input driver 'evdev' for 'Logitech USB-PS/2 Optical Mouse'
[ 134.125] (**) Logitech USB-PS/2 Optical Mouse: always reports core events
[ 134.125] (**) evdev: Logitech USB-PS/2 Optical Mouse: Device: "/dev/input/event2"
[ 134.125] (--) evdev: Logitech USB-PS/2 Optical Mouse: Vendor 0x46d Product 0xc050
[ 134.125] (--) evdev: Logitech USB-PS/2 Optical Mouse: Found 12 mouse buttons
[ 134.125] (--) evdev: Logitech USB-PS/2 Optical Mouse: Found scroll wheel(s)
[ 134.125] (--) evdev: Logitech USB-PS/2 Optical Mouse: Found relative axes
[ 134.125] (--) evdev: Logitech USB-PS/2 Optical Mouse: Found x and y relative axes
[ 134.125] (II) evdev: Logitech USB-PS/2 Optical Mouse: Configuring as mouse
[ 134.125] (II) evdev: Logitech USB-PS/2 Optical Mouse: Adding scrollwheel support
[ 134.125] (**) evdev: Logitech USB-PS/2 Optical Mouse: YAxisMapping: buttons 4 and 5
[ 134.125] (**) evdev: Logitech USB-PS/2 Optical Mouse: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[ 134.125] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1d.2/usb7/7-1/7-1:1.0/input/input4/event2"
[ 134.125] (II) XINPUT: Adding extended input device "Logitech USB-PS/2 Optical Mouse" (type: MOUSE, id 10)
[ 134.125] (II) evdev: Logitech USB-PS/2 Optical Mouse: initialized for relative axes.
[ 134.125] (**) Logitech USB-PS/2 Optical Mouse: (accel) keeping acceleration scheme 1
[ 134.125] (**) Logitech USB-PS/2 Optical Mouse: (accel) acceleration profile 0
[ 134.125] (**) Logitech USB-PS/2 Optical Mouse: (accel) acceleration factor: 2.000
[ 134.125] (**) Logitech USB-PS/2 Optical Mouse: (accel) acceleration threshold: 4
[ 134.126] (II) config/udev: Adding input device Logitech USB-PS/2 Optical Mouse (/dev/input/mouse1)
[ 134.126] (II) No input driver specified, ignoring this device.
[ 134.126] (II) This device may have been added with another device file.