Desative Backspace como Nav no Chrome usando AutoHotKey

Desative Backspace como Nav no Chrome usando AutoHotKey

Estou tentando usar o AutoHotKey para corrigir a tecla backspace no Chrome. Minha primeira tentativa utilizou a seguinte solução deessa questão:

#IfWinActive, ahk_class Chrome_WidgetWin_1
BackSpace::Send, {Left}{Delete}

Funciona, mas infelizmente também me impede de selecionar texto em input/ textareae remover tudo com a tecla backspace. Então comecei a procurar uma maneira de excluir casos em que o cursor está em um deles. Eu então encontreiesta resposta, com um script para alterar o título da janela quando estiver dentro de um input/ textareae o seguinte script AHK para usar essa atualização de título:

SetTitleMatchMode, RegEx

#x:: ; normal hotkey
     ; do something
    return

#IfWinActive, \[AHK\] - Google Chrome$
    #x:: ; input/textarea focus hotkey
         ; do something
        return

#IfWinActive

Tenho tentado misturar os dois, para poder reescrever o comportamento do Backspace quando estiver em uma janela do Chrome que não termina em [AHK] - Google Chrome, mas não tive sucesso até agora. Sinto que estou muito perto e faltando alguma coisa, mas sou um novato absoluto na AHK e não tenho ideia de para onde ir a partir daqui. Depois de mexer no código acima e pesquisar on-line, eis o que tenho agora:

SetTitleMatchMode 2 ; partial title matches

IfWinActive, ahk_class Chrome_WidgetWin_1 ; identify Chrome
{
    #BackSpace::
    If WinActive("[AHK] - Google Chrome") ; identify when within text element
    {
        return
    }
    else {
        Send, {Left}{Delete}
    }
}

Sinto que deveria conseguir fazer isso com uma única IfWinActivedeclaração para incluir o Chrome e excluir o material [AHK], masos documentosnão dê nenhum exemplo para adicionar outros parâmetros além do primeiro, e minhas próprias tentativas foram inúteis. Qualquer ajuda com isso seria muito apreciado. Além disso, se houver uma maneira de excluir da mesma forma a barra de endereço, isso seria excelente.

Responder1

#ifWinActive, ahk_class Chrome_WidgetWin_1

bs::
    clipboard =  ; Clear clipboard
    send ^c  ; Copy any selected text
    if clipboard =  ; If nothing is selected
        send {left}
    send {del}
return

#ifWinActive

informação relacionada