Skip to content

Commit 37d22ee

Browse files
committed
Selectmenu: fixed unwanted focus events
1 parent 3ba99cb commit 37d22ee

File tree

1 file changed

+6
-10
lines changed

1 file changed

+6
-10
lines changed

ui/jquery.ui.selectmenu.js

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -172,8 +172,10 @@ $.widget( "ui.selectmenu", {
172172

173173
that.close( event, true);
174174
},
175-
focus: function( event, ui ) {
176-
that._trigger( "focus", event, { item: ui.item.data( "item.selectmenu" ) } );
175+
focus: function( event, ui ) {
176+
var item = ui.item.data( "item.selectmenu" );
177+
if ( that.focus !== undefined && item.index != that.focus ) that._trigger( "focus", event, { item: item } );
178+
that.focus = item.index;
177179
}
178180
});
179181
},
@@ -302,15 +304,9 @@ $.widget( "ui.selectmenu", {
302304
},
303305

304306
_move: function( key, event ) {
305-
// TODO this focus is needed to make the select below work,
306-
// but should be removed as its fires an unwanted focus event
307-
if ( !this.opened ) {
308-
this.list.menu( "focus", event, this._getSelectedItem() );
309-
}
307+
if ( !this.opened ) this.list.menu( "focus", event, this._getSelectedItem() );
310308
this.list.menu( key, event );
311-
if ( !this.opened ) {
312-
this.list.menu( "select", event );
313-
}
309+
if ( !this.opened ) this.list.menu( "select", event );
314310
},
315311

316312
_getSelectedItem: function() {

0 commit comments

Comments
 (0)