2012-07-11 9 views
11

Byłem przy użyciu metod opisanych tutaj: http://weblog.rogueamoeba.com/2007/09/29/Wiążące do klawiszy multimedialnych, iTunes blokowe OS X

i przeczytać ten wątek: Binding to Media keys on Apple keyboards under OSX 10.5

Mam nadpisane klasę sendEvent i może wykryć klawisz multimedialny wkład. Problem polega na tym, że iTunes uruchamia się po naciśnięciu przycisku Play. Powyższy wątek stwierdza, że ​​iTunes dołącza się do wydarzenia gdzie indziej (nieznane), więc nie ma sposobu, aby zablokować mu wydarzenie Play/Pause (F8).

W celu obejścia problemu pozostawiłem program Quicktime Player otwarty bez plików. Jednak na Mountain Lion, Quicktime zamyka się po pewnym okresie bezczynności, co sprawia, że ​​ten sposób obejścia jest nieopłacalny.

Wiem, że aplikacje takie jak Spotify i MPlayerX mogły to jakoś osiągnąć. Wydają się blokować wydarzenie całkowicie, nie tylko dla iTunes.

Więcej googlowania, znalazłem ten Discusions.apple.com/thread/2122639?start=210 & tstart = 0, który śledzi go do Demona Kontroli Zdalnej wykonującej połączenia za pomocą Applescript. Istnieje kilka worków dookoła, które usuwają uprawnienia do wykonywania demona rcd (wymaga sudo, musi zostać ponownie uruchomiony w dowolnym momencie, gdy uaktualniany jest OSX). nomitsu.com/contents/MMFix_src.tgz

Czy ktoś ma wgląd w to, w jaki sposób (MPlayerX, Spotify) mógł to zrobić, jest mniej hacky?

Dzięki za radę.

Odpowiedz

15

znalazłem wcześniej istniejącą klasę, która będzie to zrobić: http://overooped.com/post/2593597587/mediakeys

wow, które miały niektóre chcą znaleźć! Mam nadzieję, że pomaga komuś innemu!

+8

+1 Strona GitHub: [SPMediaKeyTap] (https://github.com/nevyn/SPMediaKeyTap). Dzięki za udostępnienie :) – Anne