On Wed, Aug 14, 2002 at 03:11:32PM +0400, Yury Lyakh wrote: > > А можешь показать вывод xev при нажатии на все кнопки по очереди? То, > > что ты сказал, очень интересно, поскольку мне ни разу не удалось завести > > более пяти кнопок на мыши. > $ xev >mouse.txt > (навел на квадрат в окне, щелкнул левой, колесо вверх, колесо вниз, > щелчок колесом, щелчок правой кнопкой, щелчок боковой ближней кнопкой, > щелчок боковой дальней)
Спасибо. Вот, смотри, что у тебя получается: Щелчок левой кнопкой: > ButtonPress event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826106732, (29,39), root:(1062,404), > state 0x0, button 1, same_screen YES > > ButtonRelease event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826106841, (29,39), root:(1062,404), > state 0x100, button 1, same_screen YES щелчок колесом: > ButtonPress event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826107937, (29,39), root:(1062,404), > state 0x0, button 2, same_screen YES > > ButtonRelease event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826108161, (29,39), root:(1062,404), > state 0x200, button 2, same_screen YES колесо верх (ты его крутанул несколько раз, поскипано): > ButtonPress event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826108913, (29,39), root:(1062,404), > state 0x0, button 5, same_screen YES > > ButtonRelease event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826108913, (29,39), root:(1062,404), > state 0x1000, button 5, same_screen YES колесо вниз (тоже несколько раз): > ButtonPress event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826109779, (29,39), root:(1062,404), > state 0x0, button 4, same_screen YES > > EnterNotify event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x0, time 2826109779, (29,39), root:(1062,404), > mode NotifyGrab, detail NotifyInferior, same_screen YES, > focus YES, state 2048 правая кнопка: судя по всему то же, что и колесо вниз, порождает событие button 4. боковая 1: > ButtonPress event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826110742, (29,39), root:(1062,404), > state 0x0, button 3, same_screen YES > > ButtonRelease event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826110880, (29,39), root:(1062,404), > state 0x400, button 3, same_screen YES боковая 2: > ButtonPress event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826115967, (29,41), root:(1062,406), > state 0x0, button 2, same_screen YES > > ButtonRelease event, serial 24, synthetic NO, window 0x3200001, > root 0x60, subw 0x3200002, time 2826116143, (29,41), root:(1062,406), > state 0x200, button 2, same_screen YES Итого мы видим _пять_ кнопок --- максимум, доступный в XFree. Некоторые кнопки дублируются. Работает кнопка или нет установить легко --- пускаешь xev и смотришь, какое событие она генерирует. В принципе, я примерно представляю себе, какое место в исходниках XFree надо править (в районе /xc/programs/Xserver/hw/xfree86/common/xf86Xinput.c), но проверить свои предположения у меня сейчас нет возможности. Кстати, тема насчет ограничения в пять кнопок поднималась в списках рассылки разработчиков xfree, но как-то вразумительных ответов не было. -- Andrey V. Kiselev Scientific Research Center for Ecological Safety Russian Academy of Sciences Office phone: +7 812 2307834 ICQ UIN 26871517 Registered Linux user number 169907
pgpCE315XmnSb.pgp
Description: PGP signature