Mac OSX DDHotKey для кнопок Play/FF/Rewind

Я работаю над приложением OSX с DDHotKeyCenter для управления воспроизведением песен на youtube/pandora и хотел бы использовать кнопки Mac play/pause, rewind и FF; однако, они кажутся доступными только при вызове функциональной клавиши, на которую они отображаются (например, кнопка "play" отображается на F8, поэтому пользователь должен нажать "fn"+ кнопка play/F8). В идеале, я бы хотел, чтобы пользователь мог просто нажимать на игру, а не делать комбо.

Есть ли способ подключиться к кнопкам воспроизведения / перемотки /FF без клавиш F8? Креативные решения приветствуются! Я работаю на iOS, поэтому OSX для меня немного нова..

Спасибо!

1 ответ

Решение

Независимо от того, требуют ли аппаратные кнопки использования клавиши "fn", это зависит от пользовательских настроек. См. Системные настройки> Панель клавиатуры> Вкладка "Клавиатура"> Используйте все клавиши F1, F2 и т. Д. В качестве стандартных функциональных клавиш. Если это проверено, то клавиша F8 создает ключевое событие, ну, в общем, клавиша F8. Чтобы получить доступ к аппаратной функции (например, воспроизведение / пауза), пользователь должен удерживать клавишу "fn".

Если этот параметр предпочтения не проверен, то поведение меняется на противоположное. Клавиша F8 выполняет воспроизведение / паузу по умолчанию, и пользователь должен удерживать клавишу "fn", чтобы получить ключевое событие.

Кстати, сторонние клавиатуры не могут получить доступ к аппаратным функциям так же, как клавиатуры Apple. Поэтому не пишите приложение, которое зависит от их доступности.

Аппаратные функции не могут быть заблокированы как горячие клавиши. Они перехватываются на низком уровне драйвером клавиатуры. У меня есть смутное воспоминание о каком-то очень хакерском подходе к угону их, но это не сработает, если рассматривать их как горячие клавиши.

Итак, вы, вероятно, обнаружите, что вы можете установить F8 в качестве горячей клавиши для функций вашего приложения, но, поскольку ваши настройки предпочтений настроены так, что событие клавиши F8 генерируется только при нажатии клавиш Fn+F8 Вы должны использовать это комбо. Нажатие клавиши F8 само по себе генерирует аппаратную функцию, которая не видна как событие клавиши.

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