2014-04-15 23:51:40 +00:00
|
|
|
/*
|
|
|
|
* Cocoa Application Event Handling
|
|
|
|
*
|
|
|
|
* This file is part of mpv.
|
|
|
|
*
|
2017-06-24 14:08:17 +00:00
|
|
|
* mpv is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
2014-04-15 23:51:40 +00:00
|
|
|
*
|
|
|
|
* mpv is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
2017-06-24 14:08:17 +00:00
|
|
|
* GNU Lesser General Public License for more details.
|
2014-04-15 23:51:40 +00:00
|
|
|
*
|
2017-06-24 14:08:17 +00:00
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with mpv. If not, see <http://www.gnu.org/licenses/>.
|
2014-04-15 23:51:40 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#import <Cocoa/Cocoa.h>
|
|
|
|
#include "osdep/macosx_events.h"
|
|
|
|
|
|
|
|
struct input_ctx;
|
|
|
|
|
2019-11-16 15:54:07 +00:00
|
|
|
@interface EventsResponder : NSObject
|
2014-04-15 23:51:40 +00:00
|
|
|
|
|
|
|
+ (EventsResponder *)sharedInstance;
|
2015-05-26 20:39:04 +00:00
|
|
|
- (void)setInputContext:(struct input_ctx *)ctx;
|
2017-02-25 20:56:59 +00:00
|
|
|
- (void)setIsApplication:(BOOL)isApplication;
|
|
|
|
|
2014-04-16 00:09:47 +00:00
|
|
|
/// Blocks until inputContext is present.
|
|
|
|
- (void)waitForInputContext;
|
2015-05-26 20:39:04 +00:00
|
|
|
- (void)wakeup;
|
|
|
|
- (void)putKey:(int)keycode;
|
|
|
|
- (void)handleFilesArray:(NSArray *)files;
|
2014-04-15 23:51:40 +00:00
|
|
|
|
2018-01-20 14:54:27 +00:00
|
|
|
- (bool)queueCommand:(char *)cmd;
|
2017-03-26 18:32:04 +00:00
|
|
|
- (bool)processKeyEvent:(NSEvent *)event;
|
|
|
|
|
2019-11-30 15:08:32 +00:00
|
|
|
- (BOOL)handleMPKey:(int)key withMask:(int)mask;
|
|
|
|
|
2014-04-15 23:51:40 +00:00
|
|
|
@end
|