我在最近的webextension格式中创建了一个小扩展,它有几个命令定义为:
"commands": {
"mycommand1": {
"suggested_key": {
"default": "Ctrl+Shift+K",
"mac": "MacCtrl+Shift+K",
"linux": "Ctrl+Shift+K",
"windows":"Ctrl+Shift+K"
},
"description": "do something 1"
}
现在我想让用户能够自定义这些键盘快捷键,但是当我这样做时:
var getCommands = browser.commands.getAll();
getCommands.then(setCommandsSettings);
function setCommandsSettings(commands){
commands.forEach(function(command) {
if(command.name=="mycommand1"){
command.shortcut="MacCtrl+Shift+L";
}
});
}
如果我检查command.shortcut属性,我看到它已被更改为新值,但是只有按下旧快捷键才会涉及命令。难道我做错了什么? FF是否支持FF在运行时更改快捷方式?
答案 0 :(得分:1)
不幸的是它似乎尚不支持(从Firefox 57.0.1开始)但是有一个增强功能的错误允许这样做:https://bugzilla.mozilla.org/show_bug.cgi?id=1303384