Browse Source

Merge pull request #3302 from AvaloniaUI/fixes/osx-catalina-menu-bug

Fixes/osx catalina menu bug
pull/3306/head
Nikita Tsukanov 7 years ago
committed by GitHub
parent
commit
5a2ef35dac
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 14
      native/Avalonia.Native/src/OSX/app.mm

14
native/Avalonia.Native/src/OSX/app.mm

@ -1,16 +1,25 @@
#include "common.h" #include "common.h"
@interface AvnAppDelegate : NSObject<NSApplicationDelegate> @interface AvnAppDelegate : NSObject<NSApplicationDelegate>
@end @end
extern NSApplicationActivationPolicy AvnDesiredActivationPolicy = NSApplicationActivationPolicyRegular; extern NSApplicationActivationPolicy AvnDesiredActivationPolicy = NSApplicationActivationPolicyRegular;
@implementation AvnAppDelegate @implementation AvnAppDelegate
- (void)applicationWillFinishLaunching:(NSNotification *)notification - (void)applicationWillFinishLaunching:(NSNotification *)notification
{ {
[[NSApplication sharedApplication] setActivationPolicy: AvnDesiredActivationPolicy]; if([[NSApplication sharedApplication] activationPolicy] != AvnDesiredActivationPolicy)
{
for (NSRunningApplication * app in [NSRunningApplication runningApplicationsWithBundleIdentifier:@"com.apple.dock"]) {
[app activateWithOptions:NSApplicationActivateIgnoringOtherApps];
break;
}
[[NSApplication sharedApplication] setActivationPolicy: AvnDesiredActivationPolicy];
}
} }
- (void)applicationDidFinishLaunching:(NSNotification *)notification - (void)applicationDidFinishLaunching:(NSNotification *)notification
{ {
[NSApp activateIgnoringOtherApps:true]; [[NSRunningApplication currentApplication] activateWithOptions:NSApplicationActivateIgnoringOtherApps];
} }
@end @end
@ -20,5 +29,4 @@ extern void InitializeAvnApp()
NSApplication* app = [NSApplication sharedApplication]; NSApplication* app = [NSApplication sharedApplication];
id delegate = [AvnAppDelegate new]; id delegate = [AvnAppDelegate new];
[app setDelegate:delegate]; [app setDelegate:delegate];
} }

Loading…
Cancel
Save