Я знаю, что этот вопрос древний, но на тот случай, если вы не обнаружили, вот последнее решение вашей проблемы:
У расширений Chrome теперь есть событие, которое будет срабатывать при каждом нажатии определенных комбинаций клавиш.в любом окне Chrome (за исключением, может быть, отдельного сеанса инкогнито, который я не пробовал) с chrome.commands
API
Вот как его настроить:
Добавьте ключ «команды» в корень manifest.json, заполненный одной или несколькими командами (в этом случае «Перезапустить приложение»).Каждая команда должна указывать желаемую комбинацию клавиш для ПК и Mac.(Некоторые комбинации, такие как ctrl-f5, ограничены, к вашему сведению. Я также не уверен, является ли описание необязательным или обязательным.)
"commands": {
"Restart App": {
"suggested_key": {
"default": "Ctrl+Shift+5",
"mac": "Command+Shift+5"
},
"description": "Restart my app (Debugging)"
}
}
В background.js свяжите обработчик ссобытие «onCommand» и фильтр «command», который будет соответствовать ключу, объявленному в вашем манифесте при нажатии вашей комбинации:
chrome.commands.onCommand.addListener(function (command)
{
if (command == "Restart App")
{
chrome.runtime.reload();
};
});
И все!
У меня были люди, ставящие под сомнение ценность горячих клавиш, но я их решительный сторонник.Время, сэкономленное переключением шаблона «мышь / клавиатура» только на клавиатуру, составляет, вероятно, <1 сек за использование, но после нескольких тяжелых сеансов отладки оно начинает складываться.Добавление ярлыка в приведенном выше примере к приложениям, которые я разрабатываю, вероятно, сэкономило <strong>часов моего времени к настоящему времени:)
Наслаждайтесь!
-Matt