XQuartz: Made X11Application.m a little more tidy.
(cherry picked from commit 3520386261b838196a8918e8bee16bdccbc9781d)
This commit is contained in:
parent
e917806fc5
commit
3c12483264
|
@ -70,6 +70,10 @@ X11Application *X11App;
|
|||
|
||||
#define ALL_KEY_MASKS (NSShiftKeyMask | NSControlKeyMask | NSAlternateKeyMask | NSCommandKeyMask)
|
||||
|
||||
@interface X11Application (Private)
|
||||
- (void) sendX11NSEvent:(NSEvent *)e;
|
||||
@end
|
||||
|
||||
@implementation X11Application
|
||||
|
||||
typedef struct message_struct message;
|
||||
|
@ -81,8 +85,6 @@ struct message_struct {
|
|||
|
||||
static mach_port_t _port;
|
||||
|
||||
static void send_nsevent(NSEvent *e);
|
||||
|
||||
/* Quartz mode initialization routine. This is often dynamically loaded
|
||||
but is statically linked into this X server. */
|
||||
Bool QuartzModeBundleInit(void);
|
||||
|
@ -195,11 +197,8 @@ static void message_kit_thread (SEL selector, NSObject *arg) {
|
|||
}
|
||||
|
||||
- (void) sendEvent:(NSEvent *)e {
|
||||
NSEventType type;
|
||||
OSX_BOOL for_appkit, for_x;
|
||||
|
||||
type = [e type];
|
||||
|
||||
/* By default pass down the responder chain and to X. */
|
||||
for_appkit = YES;
|
||||
for_x = YES;
|
||||
|
@ -322,7 +321,7 @@ static void message_kit_thread (SEL selector, NSObject *arg) {
|
|||
|
||||
if (for_appkit) [super sendEvent:e];
|
||||
|
||||
if (for_x) send_nsevent(e);
|
||||
if (for_x) [self sendX11NSEvent:e];
|
||||
}
|
||||
|
||||
- (void) set_window_menu:(NSArray *)list {
|
||||
|
@ -862,27 +861,10 @@ void X11ApplicationMain (int argc, char **argv, char **envp) {
|
|||
/* not reached */
|
||||
}
|
||||
|
||||
/* event conversion */
|
||||
|
||||
static inline unsigned short
|
||||
convert_flags (unsigned int nsflags) {
|
||||
unsigned int xflags = 0;
|
||||
|
||||
if (nsflags == ~0) return 0xffff;
|
||||
|
||||
if (nsflags & NSAlphaShiftKeyMask) xflags |= LockMask;
|
||||
if (nsflags & NSShiftKeyMask) xflags |= ShiftMask;
|
||||
if (nsflags & NSControlKeyMask) xflags |= ControlMask;
|
||||
if (nsflags & NSAlternateKeyMask) xflags |= Mod1Mask;
|
||||
if (nsflags & NSCommandKeyMask) xflags |= Mod2Mask;
|
||||
/* FIXME: secondaryfn? */
|
||||
|
||||
return xflags;
|
||||
}
|
||||
|
||||
@implementation X11Application (Private)
|
||||
extern int darwin_modifier_flags; // darwinEvents.c
|
||||
|
||||
static void send_nsevent(NSEvent *e) {
|
||||
- (void) sendX11NSEvent:(NSEvent *)e {
|
||||
NSRect screen;
|
||||
NSPoint location;
|
||||
NSWindow *window;
|
||||
|
@ -1047,3 +1029,4 @@ static void send_nsevent(NSEvent *e) {
|
|||
default: break; /* for gcc */
|
||||
}
|
||||
}
|
||||
@end
|
||||
|
|
Loading…
Reference in New Issue