Browse Source

tidy appmenu code

pull/2978/head
Dan Walmsley 7 years ago
parent
commit
2182b91023
  1. 32
      src/Avalonia.Native/AvaloniaNativeMenuExporter.cs

32
src/Avalonia.Native/AvaloniaNativeMenuExporter.cs

@ -112,6 +112,7 @@ namespace Avalonia.Native
if(_nativeWindow is null)
{
_menu = NativeMenu.GetMenu(Application.Current);
SetMenu(_menu?.Items);
}
else
@ -265,31 +266,26 @@ namespace Avalonia.Native
menuItems = new List<NativeMenuItemBase>();
}
var menu = NativeMenu.GetMenu(Application.Current);
var appMenu = _factory.ObtainAppMenu();
if (menu != null)
if (appMenu is null)
{
var appMenu = _factory.ObtainAppMenu ();
if (appMenu is null)
{
appMenu = _factory.CreateMenu();
}
appMenu = _factory.CreateMenu();
}
var menuItem = new NativeMenuItem();
var menuItem = new NativeMenuItem();
menuItem.Menu = new NativeMenu();
menuItem.Menu = new NativeMenu();
foreach(var item in menuItems)
{
menuItem.Menu.Add(item);
}
foreach (var item in menuItems)
{
menuItem.Menu.Add(item);
}
appMenu.Clear();
AddItemsToMenu(appMenu, new List<NativeMenuItemBase> { menuItem });
appMenu.Clear();
AddItemsToMenu(appMenu, new List<NativeMenuItemBase> { menuItem });
_factory.SetAppMenu(appMenu);
}
_factory.SetAppMenu(appMenu);
}
private void SetMenu(IAvnWindow avnWindow, ICollection<NativeMenuItemBase> menuItems)

Loading…
Cancel
Save