Как определить элемент <key> для создания сочетания клавиш для команды расширения firefox

Мне нужно определить сочетания клавиш Ctrl+. и Ctrl+/ для функций моего расширения.

Вот что у меня в моем browser.xul оверлей:

<keyset id="mainKeyset">
    <key oncommand="window.alert('SLASH')" 
             id="cue-cmd-1"
             keycode="VK_SLASH"
             modifiers="accel"
                />
    <key oncommand="window.alert('PERIOD')" 
             id="cue-cmd-2"
             keycode="VK_PERIOD"
             modifiers="accel"
                />
</keyset>

Наложение успешно сливается. Однако горячие клавиши не работают.

Если я изменю keycode="VK_PERIOD" в key="." и так же keycode="VK_SLASH" в key="/"Сочетания клавиш работают как положено.

Так как я позволяю пользователям назначать свои предпочтительные сочетания клавиш для команд, мне нужно использовать keycode атрибут для того, чтобы иметь возможность использовать shift ключ модификатора.

Что мне не хватает?

1 ответ

modifiers="accel" только ctrl на Windows и Linux, это cmd на оссе.

Попробуйте использовать modifiers="control" вместо.

Другие вопросы по тегам