< prev index next >
modules/javafx.controls/src/test/java/test/javafx/scene/control/MenuBarTest.java
Print this page
*** 616,621 ****
--- 616,667 ----
@Test public void test_rt_37118() {
MenuBar menuBar = new MenuBar();
MenuBarSkin menuBarSkin = new MenuBarSkin(menuBar);
}
+
+ @Test public void testMenubarAltKeysupport() {
+ // First Menu gets selected when ALT key is pressed and released.
+ VBox root = new VBox();
+ Menu menu1 = new Menu("Menu1");
+ Menu menu2 = new Menu("Menu2");
+ Menu menu3 = new Menu("Menu3");
+
+ MenuItem menuItem1 = new MenuItem("MenuItem1");
+ MenuItem menuItem2 = new MenuItem("MenuItem2");
+ MenuItem menuItem3 = new MenuItem("MenuItem3");
+
+ menu1.getItems().add(menuItem1);
+ menu2.getItems().add(menuItem2);
+ menu3.getItems().add(menuItem3);
+
+ menuBar.getMenus().addAll(menu1, menu2, menu3);
+ root.getChildren().addAll(menuBar);
+ startApp(root);
+ tk.firePulse();
+
+ MenuBarSkin skin = (MenuBarSkin)menuBar.getSkin();
+ assertTrue(skin != null);
+
+ MenuButton mb = MenuBarSkinShim.getNodeForMenu(skin, 0);
+ mb.getScene().getWindow().requestFocus();
+ KeyEventFirer keyboard = new KeyEventFirer(mb.getScene());
+
+ // Left ALT key
+ keyboard.doKeyPress(KeyCode.ALT);
+ tk.firePulse();
+ keyboard.doDownArrowPress();
+ tk.firePulse();
+ assertTrue(menu1.isShowing());
+
+ keyboard.doKeyPress(KeyCode.ESCAPE);
+ tk.firePulse();
+
+ // Right ALT key
+ keyboard.doKeyPress(KeyCode.ALT_GRAPH);
+ tk.firePulse();
+ keyboard.doDownArrowPress();
+ tk.firePulse();
+ assertTrue(menu1.isShowing());
+
+ }
}
< prev index next >