From ec6f1e824f46a8bad4e364441285d70b56ce8380 Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Wed, 25 Sep 2019 21:41:21 +0100 Subject: [PATCH] tidy avnwindow menu code. --- native/Avalonia.Native/src/OSX/menu.mm | 25 ------------------------ native/Avalonia.Native/src/OSX/window.mm | 13 +++++++----- 2 files changed, 8 insertions(+), 30 deletions(-) diff --git a/native/Avalonia.Native/src/OSX/menu.mm b/native/Avalonia.Native/src/OSX/menu.mm index 89ae31cc35..909a504dc7 100644 --- a/native/Avalonia.Native/src/OSX/menu.mm +++ b/native/Avalonia.Native/src/OSX/menu.mm @@ -170,31 +170,6 @@ HRESULT AvnAppMenu::Clear() return S_OK; } -//static IAvnAppMenu* s_AppMenu = nullptr; - -/*extern IAvnAppMenu* GetAppMenu() -{ - @autoreleasepool - { - //todo get rid of this method. - if(s_AppMenu == nullptr) - { - id menubar = [NSMenu new]; - [menubar setTitle:@"Test"]; - [NSApp setMainMenu:menubar]; - - id appMenuItem = [AvnMenuItem new]; - [menubar addItem:appMenuItem]; - - [appMenuItem setSubmenu:[AvnMenu new]]; - - s_AppMenu = new AvnAppMenu([[NSApplication sharedApplication] mainMenu]); - } - - return s_AppMenu; - } -}*/ - extern IAvnAppMenu* CreateAppMenu() { @autoreleasepool diff --git a/native/Avalonia.Native/src/OSX/window.mm b/native/Avalonia.Native/src/OSX/window.mm index 21e190695e..baa8be8e05 100644 --- a/native/Avalonia.Native/src/OSX/window.mm +++ b/native/Avalonia.Native/src/OSX/window.mm @@ -1096,6 +1096,11 @@ NSArray* AllLoopModes = [NSArray arrayWithObjects: NSDefaultRunLoopMode, NSEvent -(void) applyMenu:(NSMenu *)menu { + if(menu == nullptr) + { + menu = [NSMenu new]; + } + _menu = menu; [NSApp setMenu:menu]; } @@ -1194,13 +1199,11 @@ NSArray* AllLoopModes = [NSArray arrayWithObjects: NSDefaultRunLoopMode, NSEvent { if(_menu == nullptr) { - [NSApp setMenu: [NSMenu new]]; - } - else - { - [NSApp setMenu:_menu]; + _menu = [NSMenu new]; } + [NSApp setMenu:_menu]; + _parent->BaseEvents->Activated(); [super becomeKeyWindow]; }