Browse Source

tidy avnwindow menu code.

pull/2978/head
Dan Walmsley 7 years ago
parent
commit
ec6f1e824f
  1. 25
      native/Avalonia.Native/src/OSX/menu.mm
  2. 13
      native/Avalonia.Native/src/OSX/window.mm

25
native/Avalonia.Native/src/OSX/menu.mm

@ -170,31 +170,6 @@ HRESULT AvnAppMenu::Clear()
return S_OK; 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() extern IAvnAppMenu* CreateAppMenu()
{ {
@autoreleasepool @autoreleasepool

13
native/Avalonia.Native/src/OSX/window.mm

@ -1096,6 +1096,11 @@ NSArray* AllLoopModes = [NSArray arrayWithObjects: NSDefaultRunLoopMode, NSEvent
-(void) applyMenu:(NSMenu *)menu -(void) applyMenu:(NSMenu *)menu
{ {
if(menu == nullptr)
{
menu = [NSMenu new];
}
_menu = menu; _menu = menu;
[NSApp setMenu:menu]; [NSApp setMenu:menu];
} }
@ -1194,13 +1199,11 @@ NSArray* AllLoopModes = [NSArray arrayWithObjects: NSDefaultRunLoopMode, NSEvent
{ {
if(_menu == nullptr) if(_menu == nullptr)
{ {
[NSApp setMenu: [NSMenu new]]; _menu = [NSMenu new];
}
else
{
[NSApp setMenu:_menu];
} }
[NSApp setMenu:_menu];
_parent->BaseEvents->Activated(); _parent->BaseEvents->Activated();
[super becomeKeyWindow]; [super becomeKeyWindow];
} }

Loading…
Cancel
Save