diff --git a/QuickLocalization/QuickLocalization-Info.plist b/QuickLocalization/QuickLocalization-Info.plist index 03c7985..f155d13 100644 --- a/QuickLocalization/QuickLocalization-Info.plist +++ b/QuickLocalization/QuickLocalization-Info.plist @@ -42,6 +42,7 @@ DVTPlugInCompatibilityUUIDs + E969541F-E6F9-4D25-8158-72DC3545A6C6 9F75337B-21B4-4ADC-B558-F9CADF7073A7 63FC1C47-140D-42B0-BB4D-A10B2D225574 37B30044-3B14-46BA-ABAA-F01000C27B63 diff --git a/QuickLocalization/QuickLocalization.m b/QuickLocalization/QuickLocalization.m index 61f28fd..9cc1aea 100644 --- a/QuickLocalization/QuickLocalization.m +++ b/QuickLocalization/QuickLocalization.m @@ -46,33 +46,35 @@ static id sharedPlugin = nil; - (id)init { if (self = [super init]) { - NSMenuItem *viewMenuItem = [[NSApp mainMenu] itemWithTitle:@"Edit"]; - if (viewMenuItem) { - [[viewMenuItem submenu] addItem:[NSMenuItem separatorItem]]; - - NSMenuItem *localization = [[NSMenuItem alloc] initWithTitle:@"Quick Localization" action:@selector(quickLocalization) keyEquivalent:@"d"]; - [localization setKeyEquivalentModifierMask:NSShiftKeyMask | NSAlternateKeyMask]; - [localization setTarget:self]; - - NSMenuItem *nilToggle = [[NSMenuItem alloc] initWithTitle:@"Use nil for NSLocalizedString comment" action:@selector(toggleNilOption) keyEquivalent:@""]; - [nilToggle setTarget:self]; - - NSMenuItem *snippetToggle = [[NSMenuItem alloc] initWithTitle:@"Use <# comments #> for NSLocalizedString comment" action:@selector(toggleSnippetOption) keyEquivalent:@""]; - [snippetToggle setTarget:self]; - - NSMenuItem *swiftSyntax = [[NSMenuItem alloc] initWithTitle:@"Swift Localization" action:@selector(toggleSwiftOption) keyEquivalent:@""]; - [swiftSyntax setTarget:self]; - - NSMenu *groupMenu = [[NSMenu alloc] initWithTitle:@"Quick Localization"]; - [groupMenu addItem:localization]; - [groupMenu addItem:nilToggle]; - [groupMenu addItem:snippetToggle]; - [groupMenu addItem:swiftSyntax]; - - NSMenuItem *groupMenuItem = [[NSMenuItem alloc] initWithTitle:@"Quick Localization" action:NULL keyEquivalent:@""]; - [[viewMenuItem submenu] addItem:groupMenuItem]; - [[viewMenuItem submenu] setSubmenu:groupMenu forItem:groupMenuItem]; - } + [[NSOperationQueue mainQueue] addOperationWithBlock:^{ + NSMenuItem *viewMenuItem = [[NSApp mainMenu] itemWithTitle:@"Edit"]; + if (viewMenuItem) { + [[viewMenuItem submenu] addItem:[NSMenuItem separatorItem]]; + + NSMenuItem *localization = [[NSMenuItem alloc] initWithTitle:@"Quick Localization" action:@selector(quickLocalization) keyEquivalent:@"d"]; + [localization setKeyEquivalentModifierMask:NSShiftKeyMask | NSAlternateKeyMask]; + [localization setTarget:self]; + + NSMenuItem *nilToggle = [[NSMenuItem alloc] initWithTitle:@"Use nil for NSLocalizedString comment" action:@selector(toggleNilOption) keyEquivalent:@""]; + [nilToggle setTarget:self]; + + NSMenuItem *snippetToggle = [[NSMenuItem alloc] initWithTitle:@"Use <# comments #> for NSLocalizedString comment" action:@selector(toggleSnippetOption) keyEquivalent:@""]; + [snippetToggle setTarget:self]; + + NSMenuItem *swiftSyntax = [[NSMenuItem alloc] initWithTitle:@"Swift Localization" action:@selector(toggleSwiftOption) keyEquivalent:@""]; + [swiftSyntax setTarget:self]; + + NSMenu *groupMenu = [[NSMenu alloc] initWithTitle:@"Quick Localization"]; + [groupMenu addItem:localization]; + [groupMenu addItem:nilToggle]; + [groupMenu addItem:snippetToggle]; + [groupMenu addItem:swiftSyntax]; + + NSMenuItem *groupMenuItem = [[NSMenuItem alloc] initWithTitle:@"Quick Localization" action:NULL keyEquivalent:@""]; + [[viewMenuItem submenu] addItem:groupMenuItem]; + [[viewMenuItem submenu] setSubmenu:groupMenu forItem:groupMenuItem]; + } + }]; } return self; }