diff options
author | Stefano Pigozzi <stefano.pigozzi@gmail.com> | 2013-06-04 22:12:23 +0200 |
---|---|---|
committer | Stefano Pigozzi <stefano.pigozzi@gmail.com> | 2013-06-04 23:02:23 +0200 |
commit | 213ad5d6c41f32cf9086fa377cd6d6df1236bb76 (patch) | |
tree | d265eda1e4deca9ad58de8e2137852d1cf3e8c1e /core/options.h | |
parent | 1b6888ae8e30331033bf197b862742d9bda21843 (diff) | |
download | mpv-213ad5d6c41f32cf9086fa377cd6d6df1236bb76.tar.bz2 mpv-213ad5d6c41f32cf9086fa377cd6d6df1236bb76.tar.xz |
osx: improve Media Keys support
This commit addresses some issues with the users had with the previous
implementation in commit c39efb9. Here's the changes:
* Use Quartz Event Taps to remove Media Key events mpv handles from
the global OS X queue. This prevents conflicts with iTunes. I did this on
the main thread since it is mostly idling. It's the playloop thread that
actually does all the work so there is no danger of blocking the event tap
callback.
* Introduce `--no-media-keys` switch so that users can disable all of mpv's
media key handling at runtime (some prefer iTunes for example).
* Use mpv's bindings so that users can customize what the media keys do via
input.conf. Current bindings are:
MK_PLAY cycle pause
MK_PREV playlist_prev
MK_NEXT playlist_next
An additional benefit of this implementation is that it is completly handled
by the `macosx_events` file instead of `macosx_application` making the
project organization more straightforward.
Diffstat (limited to 'core/options.h')
-rw-r--r-- | core/options.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/core/options.h b/core/options.h index 0504ea0591..eaa908d7bd 100644 --- a/core/options.h +++ b/core/options.h @@ -241,6 +241,7 @@ typedef struct MPOpts { int use_lircc; #ifdef CONFIG_COCOA int use_ar; + int use_media_keys; #endif int default_bindings; int test; |