fixing open application event handling, fixes #13397
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
73d1308b85
commit
77aa5fa027
@ -53,6 +53,18 @@ void wxBell()
|
||||
|
||||
- (void)applicationWillFinishLaunching:(NSNotification *)application {
|
||||
wxUnusedVar(application);
|
||||
|
||||
// we must install our handlers later than setting the app delegates, because otherwise our handlers
|
||||
// get overwritten
|
||||
|
||||
NSAppleEventManager *appleEventManager = [NSAppleEventManager sharedAppleEventManager];
|
||||
|
||||
[appleEventManager setEventHandler:self andSelector:@selector(handleGetURLEvent:withReplyEvent:)
|
||||
forEventClass:kInternetEventClass andEventID:kAEGetURL];
|
||||
|
||||
[appleEventManager setEventHandler:self andSelector:@selector(handleOpenAppEvent:withReplyEvent:)
|
||||
forEventClass:kCoreEventClass andEventID:kAEOpenApplication];
|
||||
|
||||
}
|
||||
|
||||
- (void)application:(NSApplication *)sender openFiles:(NSArray *)fileNames
|
||||
@ -69,13 +81,6 @@ void wxBell()
|
||||
wxTheApp->MacOpenFiles(fileList);
|
||||
}
|
||||
|
||||
- (BOOL)applicationShouldOpenUntitledFile:(NSApplication *)sender
|
||||
{
|
||||
wxUnusedVar(sender);
|
||||
wxTheApp->MacNewFile() ;
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (BOOL)application:(NSApplication *)sender printFile:(NSString *)filename
|
||||
{
|
||||
wxUnusedVar(sender);
|
||||
@ -101,6 +106,13 @@ void wxBell()
|
||||
wxTheApp->MacOpenURL(cf.AsString()) ;
|
||||
}
|
||||
|
||||
- (void)handleOpenAppEvent:(NSAppleEventDescriptor *)event
|
||||
withReplyEvent:(NSAppleEventDescriptor *)replyEvent
|
||||
{
|
||||
wxUnusedVar(replyEvent);
|
||||
wxTheApp->MacNewFile() ;
|
||||
}
|
||||
|
||||
/*
|
||||
Allowable return values are:
|
||||
NSTerminateNow - it is ok to proceed with termination
|
||||
@ -239,10 +251,6 @@ bool wxApp::DoInitGui()
|
||||
wxNSAppController* controller = [[wxNSAppController alloc] init];
|
||||
[NSApp setDelegate:controller];
|
||||
|
||||
NSAppleEventManager *appleEventManager = [NSAppleEventManager sharedAppleEventManager];
|
||||
[appleEventManager setEventHandler:controller andSelector:@selector(handleGetURLEvent:withReplyEvent:)
|
||||
forEventClass:kInternetEventClass andEventID:kAEGetURL];
|
||||
|
||||
// calling finishLaunching so early before running the loop seems to trigger some 'MenuManager compatibility' which leads
|
||||
// to the duplication of menus under 10.5 and a warning under 10.6
|
||||
#if 0
|
||||
|
Loading…
Reference in New Issue
Block a user