Desativar Backspace como Nav no Chrome usando AutoHotKey

1

Estou tentando usar o AutoHotKey para corrigir a chave de retrocesso no Chrome. Minha primeira tentativa utilizou a seguinte solução da pergunta :

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

Funciona, mas infelizmente também me impede de selecionar texto em input / textarea e remover tudo com a tecla backspace. Então comecei a procurar uma maneira de excluir casos em que o cursor está em um desses. Encontrei então esta resposta , com um script para alterar o título da janela quando dentro de um input / textarea e seguindo o script AHK para fazer uso dessa 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

Eu tenho tentado misturar os dois juntos, para que eu possa reescrever o comportamento do Backspace quando em uma janela do Chrome que não termina em [AHK] - Google Chrome , mas até agora não obtive êxito. Eu sinto que estou muito perto e só sinto falta de algo, mas eu sou um novato absoluto no AHK e não tenho idéia de onde ir a partir daqui. Depois de se intrometer no código acima e pesquisar on-line, aqui está 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 devo conseguir isso com uma única instrução IfWinActive para incluir o Chrome e excluir o material [AHK], mas os documentos não dão exemplos para adicionar os 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 a barra de endereço, isso seria estelar.

    
por DiMono 18.08.2014 / 07:22

1 resposta

1
#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
    
por 23.09.2014 / 18:50