/ / Problema ao adicionar um atalho de teclado em uma extensão - google-chrome, google-chrome-extension

Problema ao adicionar um atalho de teclado em uma extensão - google-chrome, google-chrome-extension

Estou tentando criar uma extensão para o Google Chrome aqui. Quando Mudança+G for pressionado, a guia atual deverá ser automaticamente redirecionada para um novo URL.

A API do Chrome não fornece um método fácil para atribuir um atalho de teclado a uma ação; portanto, usei o window.addKeyListener para observar as teclas pressionadas. É assim que meu código se parece:

myKey=71;
window.addKeyListener("keyup", redirp, false);
function redirp(e)
{
var mynewurl1=http://urlhere.com;
if(e.keyCode==myKey)
chrome.tabs.update(tab.id,{"url":mynewurl1});
}

(background.html)

Mas o problema é que nada acontece quando eu bato Mudança+X. O que estou fazendo de errado?

Respostas:

2 para resposta № 1

A página de plano de fundo não está visível e, portanto, não recebe nenhum evento do teclado.

Você precisaria adicionar o ouvinte de eventos aos scripts de conteúdo injetados em todas as páginas e, se sua tecla for pressionada, enviar uma solicitação para uma página em segundo plano para abrir uma nova guia por meio da API (ou você pode simplesmente mudar window.location.href de um script de conteúdo).


0 para resposta № 2

Responda: Atalhos de teclado nas extensões do Google Chrome / Chromium

Infelizmente não há como enganchar em teclas de atalho globais. O melhor que puder fazer é adicionar um pressionamento de tecla do evento da janela ouvinte.

Fonte: uma postagem do desenvolvedor do Chromium em o grupo extensões de cromo.