cocoa: allow to disable apple remote at compile time

Actually doesn't remove the related flags so that one can still pass the
option with the option doing nothing.
This commit is contained in:
Stefano Pigozzi 2014-10-17 17:07:01 +02:00
parent a0acb6eaa7
commit 49b6fa8779
3 changed files with 15 additions and 1 deletions

View File

@ -35,12 +35,16 @@
#include "osdep/macosx_compat.h"
#import "osdep/macosx_events_objc.h"
#include "config.h"
@interface EventsResponder ()
{
struct input_ctx *_inputContext;
NSCondition *_input_ready;
CFMachPortRef _mk_tap_port;
#if HAVE_APPLE_REMOTE
HIDRemote *_remote;
#endif
}
- (BOOL)handleMediaKey:(NSEvent *)event;
@ -270,6 +274,8 @@ void cocoa_set_input_context(struct input_ctx *input_context)
- (void)startAppleRemote
{
#if HAVE_APPLE_REMOTE
dispatch_async(dispatch_get_main_queue(), ^{
self->_remote = [[HIDRemote alloc] init];
if (self->_remote) {
@ -277,14 +283,17 @@ void cocoa_set_input_context(struct input_ctx *input_context)
[self->_remote startRemoteControl:kHIDRemoteModeExclusiveAuto];
}
});
#endif
}
- (void)stopAppleRemote
{
#if HAVE_APPLE_REMOTE
dispatch_async(dispatch_get_main_queue(), ^{
[self->_remote stopRemoteControl];
[self->_remote release];
});
#endif
}
- (void)restartMediaKeys
{

View File

@ -755,6 +755,11 @@ standalone_features = [
'deps': [ 'cocoa' ],
'deps_neg': [ 'libmpv-shared', 'libmpv-static' ],
'func': check_true
}, {
'name': '--apple-remote',
'desc': 'Apple Remote support',
'deps': [ 'cocoa' ],
'func': check_true
}, {
'name': '--macosx-bundle',
'desc': 'compilation of a Mac OS X Application bundle',

View File

@ -382,7 +382,7 @@ def build(ctx):
( timer_c ),
( "osdep/threads.c" ),
( "osdep/ar/HIDRemote.m", "cocoa" ),
( "osdep/ar/HIDRemote.m", "apple-remote" ),
( "osdep/macosx_application.m", "cocoa-application" ),
( "osdep/macosx_events.m", "cocoa" ),
( "osdep/semaphore_osx.c" ),