True X-Mouse Gizmo/PyHook

This nice little free utility does something I like very much: it does the x-mouse thing but without the quite annoying tendency for some programs (MSDev, for example) to jump to the front when they get focus. I never thought it was possible :-).
True X-Mouse Gizmo for Windows
However, I don’t really like the other features, and you can’t turn them all off… [Update: I found a way to adjust it to my liking. I should have updated this before Nathan went to the trouble of explaining this all in his comment below.] I think it may be time for me to write my own. In that vein, I found PyHook which I should be able to use to rapidly prototype the basic algorithm in a nice language.

3 Comments

  • Kyle
    2005/07/08 - 11:00 | Permalink

    Did you ever find a true x-mouse that doesn’t have all the past and middle click hooking features? I just want an x-mouse that doesn’t raise a window unless I click on the titlebar (so I can select fields while the windows is still lowered).

  • Jack
    2006/03/22 - 01:29 | Permalink

    Yeah, I’ve been looking for one, too. Funny how googling for something can bridge across so much time.

  • Nathan
    2006/07/27 - 09:01 | Permalink

    You can disable all of the copy/paste features of this tool by creating a special registry entry. If you go to the website for True X-Mouse Gizmo there is a section on special registry entries. Two of the entries allow you to disable the copy/paste features in specific window classes or modules (.ocx, .dll, .exe, etc.). However, they also allow you to specify wildcards.

    Set ExemptedClasses and ExemptedModules to “*” and the copy/paste will be disabled in every window.

    “ExemptedClasses”=”*”
    “ExemptedModules”=”*”

    This essentially disables the middle click hooking but leaves the focus follows mouse, raise on left border click, and lower on right border click features. In addition, focus follows mouse seems to work much better than the TweakUI X-Mouse feature.

  • Leave a Reply

    Your email address will not be published. Required fields are marked *