Skip to content
Permalink
Browse files
Menu: Close menus immediately on selection or click outside
Fixes #15034
Closes gh-1807
  • Loading branch information
scottgonzalez committed Apr 25, 2017
1 parent b3c0a7f commit 0d25a36eecb9e5598596208e4852b3c3fdbf5510
Showing with 5 additions and 3 deletions.
  1. +3 −1 tests/unit/menu/events.js
  2. +2 −2 ui/widgets/menu.js
@@ -670,7 +670,9 @@ QUnit.test( "handle keyboard navigation and mouse click on menu with dividers an
element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
assert.equal( logOutput(), "keydown,3,4,7", "Keydown focus skips divider and group label" );
element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
assert.equal( logOutput(), "keydown,1,2,3,4,7", "Keydown focus skips divider and group label" );
ready();
}
} );
@@ -162,7 +162,7 @@ return $.widget( "ui.menu", {
this._on( this.document, {
click: function( event ) {
if ( this._closeOnDocumentClick( event ) ) {
this.collapseAll( event );
this.collapseAll( event, true );
}

// Reset the mouseHandled flag
@@ -502,7 +502,7 @@ return $.widget( "ui.menu", {
this._removeClass( currentMenu.find( ".ui-state-active" ), null, "ui-state-active" );

this.activeMenu = currentMenu;
}, this.delay );
}, all ? 0 : this.delay );
},

// With no arguments, closes the currently active menu - if nothing is active

0 comments on commit 0d25a36

Please sign in to comment.