2
votes

My goal is to make my mouse extra button act as alt tab so I could scroll through my tabs without using the keyboard.

XButton1::Alt

LButton::
     If (GetKeyState("XButton1", "P"))
         Send {TAB down}

LButton Up::
     If (GetKeyState("XButton1", "P"))
         Send {TAB up}

What I was hoping for this to do was when I am holding XButton1(the back button on my mouse) I could click and it would act as a tab and only while I am holding XButton1 otherwise it my click would act as a click

2

2 Answers

1
votes

Try this:

XButton1::Send {XButton1} ; If you remove this line XButton1 loses its original/native function

; Hold down XButton1 and press LButton to navigate the alt-tab menu:
XButton1 & LButton::AltTab  ;  XButton1 becomes a prefix key

https://autohotkey.com/docs/Hotkeys.htm#combo

https://autohotkey.com/docs/Hotkeys.htm#AltTabDetail

0
votes
; AltTab-replacement for Windows 8:

XButton1 & LButton::
list = ""
WinGet, id, list
Loop, %id%
{
    this_ID := id%A_Index%
    WinGet, exStyle, exStyle, ahk_id %this_ID%
    If !(exStyle & 0x100)
        continue
    IfWinActive, ahk_id %this_ID%
         continue   
    WinGetTitle, title, ahk_id %this_ID%
    If (title = "")
         continue
    WinActivate, ahk_id %this_ID%
         break
}
return


; AltTabMenu-replacement for Windows 8:

XButton1 & RButton::
list = ""
Menu, windows, Add
Menu, windows, deleteAll
WinGet, id, list
Loop, %id%
{
    this_ID := id%A_Index%
    WinGet, exStyle, exStyle, ahk_id %this_ID%
    If !(exStyle & 0x100)
            continue
    WinGetTitle, title, ahk_id %this_ID%
     If (title = "")
            continue
    WinGetClass, class, ahk_id %this_ID%
     If (class = "")
            continue
     If (class = "ApplicationFrameWindow")
            continue        
    Menu, windows, Add, %title%%A_Tab%ahk_class %class%, ActivateWindow
    WinGet, Path, ProcessPath, ahk_id %this_ID%
    Menu, windows, Icon, %title%%A_Tab%ahk_class %class%, %Path%,, 0
}
Menu, windows, Show
return

ActivateWindow:
WinActivate, %A_ThisMenuItem%
return

XButton1::Send {XButton1}