aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CopyMailto/AppDelegate.h3
-rw-r--r--CopyMailto/AppDelegate.m15
2 files changed, 15 insertions, 3 deletions
diff --git a/CopyMailto/AppDelegate.h b/CopyMailto/AppDelegate.h
index 83e822b..df7aec0 100644
--- a/CopyMailto/AppDelegate.h
+++ b/CopyMailto/AppDelegate.h
@@ -10,6 +10,7 @@
@interface AppDelegate : NSObject <NSApplicationDelegate>
+- (void)handleURLEvent:(NSAppleEventDescriptor *)event
+ withReplyEvent: (NSAppleEventDescriptor *)replyEvent;
@end
-
diff --git a/CopyMailto/AppDelegate.m b/CopyMailto/AppDelegate.m
index 3ea136a..281d151 100644
--- a/CopyMailto/AppDelegate.m
+++ b/CopyMailto/AppDelegate.m
@@ -15,8 +15,12 @@
@implementation AppDelegate
-- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
- // Insert code here to initialize your application
+- (void)applicationWillFinishLaunching:(NSNotification *)aNotification {
+ [[NSAppleEventManager sharedAppleEventManager]
+ setEventHandler:self
+ andSelector:@selector(handleURLEvent:withReplyEvent:)
+ forEventClass:kInternetLocationMail
+ andEventID:kAEOpenApplication];
}
@@ -24,5 +28,12 @@
// Insert code here to tear down your application
}
+- (void)handleURLEvent:(NSAppleEventDescriptor *)event
+ withReplyEvent: (NSAppleEventDescriptor *)replyEvent
+{
+ NSString *url = [[event paramDescriptorForKeyword:keyDirectObject]
+ stringValue];
+ NSLog(@"%@", url);
+}
@end