|
|
|
@ -44,8 +44,7 @@ namespace Avalonia.Native |
|
|
|
{ |
|
|
|
private IAvaloniaNativeFactory _factory; |
|
|
|
private NativeMenu _menu; |
|
|
|
private bool _resetQueued; |
|
|
|
private uint _revision = 1; |
|
|
|
private bool _resetQueued; |
|
|
|
private bool _exported = false; |
|
|
|
private IAvnWindow _nativeWindow; |
|
|
|
private List<NativeMenuItem> _menuItems = new List<NativeMenuItem>(); |
|
|
|
@ -60,8 +59,6 @@ namespace Avalonia.Native |
|
|
|
|
|
|
|
public event EventHandler OnIsNativeMenuExportedChanged; |
|
|
|
|
|
|
|
private event Action<(uint revision, int parent)> LayoutUpdated; |
|
|
|
|
|
|
|
public void SetNativeMenu(NativeMenu menu) |
|
|
|
{ |
|
|
|
if (menu == null) |
|
|
|
@ -107,11 +104,7 @@ namespace Avalonia.Native |
|
|
|
((INotifyCollectionChanged)i.Menu.Items).CollectionChanged -= OnMenuItemsChanged; |
|
|
|
} |
|
|
|
|
|
|
|
_menuItems.Clear(); |
|
|
|
|
|
|
|
_revision++; |
|
|
|
|
|
|
|
LayoutUpdated?.Invoke((_revision, 0)); |
|
|
|
_menuItems.Clear(); |
|
|
|
|
|
|
|
SetMenu(_nativeWindow, _menu.Items); |
|
|
|
|
|
|
|
|