mirror of
https://github.com/gui-cs/Terminal.Gui.git
synced 2025-12-26 15:57:56 +01:00
Fixes #3740. Disabled MenuItem triggers exception.
This commit is contained in:
@@ -1238,7 +1238,7 @@ namespace Terminal.Gui {
|
|||||||
mi = openCurrentMenu.barItems.Children [openCurrentMenu.current];
|
mi = openCurrentMenu.barItems.Children [openCurrentMenu.current];
|
||||||
} else if (openCurrentMenu.barItems.IsTopLevel) {
|
} else if (openCurrentMenu.barItems.IsTopLevel) {
|
||||||
mi = openCurrentMenu.barItems;
|
mi = openCurrentMenu.barItems;
|
||||||
} else {
|
} else if (openCurrentMenu?.current > -1) {
|
||||||
mi = openMenu.barItems.Children [openMenu.current];
|
mi = openMenu.barItems.Children [openMenu.current];
|
||||||
}
|
}
|
||||||
MenuOpened?.Invoke (mi);
|
MenuOpened?.Invoke (mi);
|
||||||
|
|||||||
@@ -219,8 +219,7 @@ Edit
|
|||||||
View = mCurrent
|
View = mCurrent
|
||||||
}));
|
}));
|
||||||
Assert.True (menu.IsMenuOpen);
|
Assert.True (menu.IsMenuOpen);
|
||||||
Assert.Equal ("_File", miCurrent.Parent.Title);
|
Assert.Null (miCurrent);
|
||||||
Assert.Equal ("_New", miCurrent.Title);
|
|
||||||
|
|
||||||
Assert.True (mCurrent.MouseEvent (new MouseEvent () {
|
Assert.True (mCurrent.MouseEvent (new MouseEvent () {
|
||||||
X = 1,
|
X = 1,
|
||||||
@@ -229,8 +228,7 @@ Edit
|
|||||||
View = mCurrent
|
View = mCurrent
|
||||||
}));
|
}));
|
||||||
Assert.True (menu.IsMenuOpen);
|
Assert.True (menu.IsMenuOpen);
|
||||||
Assert.Equal ("_File", miCurrent.Parent.Title);
|
Assert.Null (miCurrent);
|
||||||
Assert.Equal ("_New", miCurrent.Title);
|
|
||||||
|
|
||||||
Assert.True (mCurrent.MouseEvent (new MouseEvent () {
|
Assert.True (mCurrent.MouseEvent (new MouseEvent () {
|
||||||
X = 1,
|
X = 1,
|
||||||
@@ -239,8 +237,7 @@ Edit
|
|||||||
View = mCurrent
|
View = mCurrent
|
||||||
}));
|
}));
|
||||||
Assert.True (menu.IsMenuOpen);
|
Assert.True (menu.IsMenuOpen);
|
||||||
Assert.Equal ("_File", miCurrent.Parent.Title);
|
Assert.Null (miCurrent);
|
||||||
Assert.Equal ("_Save", miCurrent.Title);
|
|
||||||
|
|
||||||
// close the menu
|
// close the menu
|
||||||
Assert.True (menu.MouseEvent (new MouseEvent () {
|
Assert.True (menu.MouseEvent (new MouseEvent () {
|
||||||
@@ -265,8 +262,7 @@ Edit
|
|||||||
|
|
||||||
Assert.True (mCurrent.ProcessKey (new KeyEvent (Key.CursorUp, new KeyModifiers ())));
|
Assert.True (mCurrent.ProcessKey (new KeyEvent (Key.CursorUp, new KeyModifiers ())));
|
||||||
Assert.True (menu.IsMenuOpen);
|
Assert.True (menu.IsMenuOpen);
|
||||||
Assert.Equal ("_File", miCurrent.Parent.Title);
|
Assert.Null (miCurrent);
|
||||||
Assert.Equal ("_New", miCurrent.Title);
|
|
||||||
|
|
||||||
// close the menu
|
// close the menu
|
||||||
Assert.True (menu.ProcessHotKey (new KeyEvent (Key.F9, new KeyModifiers ())));
|
Assert.True (menu.ProcessHotKey (new KeyEvent (Key.F9, new KeyModifiers ())));
|
||||||
|
|||||||
Reference in New Issue
Block a user