Fight for the Internet 1!

Friday, February 5, 2010

Modify / Disable Logitech Mouse Search Button

Overview
On some computer mice with extra buttons, some buttons will trigger a search commend. In Ubuntu, clicking this button will just open your browser to your default search engine. Here are details on how to make sure you have control of your mouse button, so it does not bug the hell out of you.

Background Details
Until recently, I was never plagued by this truly abysmal feature. I had remapped this little button my Logitech MX to be "go up a directory" which I frequently used in my file manager and image viewer. It was very handy.

But on a fresh install of Ubuntu 9.10 Karmic, suddenly my wonderful mouse was cursed with this abysmal feature. The source is your Desktop environment.

Disabling The Feature
In KDE 4.4.2, go to System Settings -> Keyboard & Mouse -> Global Keyboard Settings -> khotkeys.

Find the option for Search and disable whatever key is set.

I hope that helps all of you.

Finding the Button Key Code (Optional)
Sometimes it useful to determine what your mouse-button's keycode is. For this, we use the program 'xev.' ('xev' is part of the X-Windows system under Linux, so chances are you probably already have it on your Linux machine and do not need to install it).

Open a console, and enter the xev command. It will dump a lot of information to your terminal. Simply click the button you are curious about, and then carefully close the small graphical window that popped up. (Do this by only moving your mouse over the window-manager boards of the window, not the content area of the window, if you can. If you do move your mouse over the content area, you will see a lot more info output to your terminal, which will be slightly more work to comb through.)

Here is some sample output (from my system):
.....
FocusIn event, serial 36, synthetic NO, window 0x1800001,
mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 36, synthetic NO, window 0x0,
keys: 1 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 2 0 0 0

KeyPress event, serial 36, synthetic NO, window 0x1800001,
root 0x13c, subw 0x0, time 25847246, (258,7), root:(264,28),
state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 36, synthetic NO, window 0x1800001,
root 0x13c, subw 0x0, time 25847246, (258,7), root:(264,28),
state 0x8, keycode 111 (keysym 0xff52, Up), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

MappingNotify event, serial 36, synthetic NO, window 0x0,
request MappingKeyboard, first_keycode 8, count 248

MappingNotify event, serial 36, synthetic NO, window 0x0,
request MappingKeyboard, first_keycode 8, count 247

KeyRelease event, serial 36, synthetic NO, window 0x1800001,
root 0x13c, subw 0x0, time 25847332, (258,7), root:(264,28),
state 0x0, keycode 225 (keysym 0x1008ff1b, XF86Search), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

PropertyNotify event, serial 38, synthetic NO, window 0x1800001,
atom 0x187 (_NET_WM_ICON_GEOMETRY), time 25847344, state PropertyNewValue

PropertyNotify event, serial 38, synthetic NO, window 0x1800001,
atom 0x187 (_NET_WM_ICON_GEOMETRY), time 25847693, state PropertyNewValue

ClientMessage event, serial 38, synthetic YES, window 0x1800001,
message_type 0xfe (WM_PROTOCOLS), format 32, message 0xff (WM_DELETE_WINDOW)
... # This was the end of the output.

In this case, my system was seeing that pressing this small button triggered approximately three key sequences. The two I had program (Alt+Up in this case), and also something called XF86Search. This is the dreaded name for this abysmal feature.

No comments:

Post a Comment