Skip to content

Commit

Permalink
Menu: Replace regular bind call with _bind
Browse files Browse the repository at this point in the history
  • Loading branch information
jzaefferer committed Sep 12, 2011
1 parent 7216c08 commit 609e1f8
Showing 1 changed file with 94 additions and 94 deletions.
188 changes: 94 additions & 94 deletions ui/jquery.ui.menu.js
Expand Up @@ -71,111 +71,111 @@ $.widget( "ui.menu", {


this.refresh(); this.refresh();


this.element.attr( "tabIndex", 0 ).bind( "keydown.menu", function( event ) { this.element.attr( "tabIndex", 0 );
if ( self.options.disabled ) { this._bind({
return; "keydown": function( event ) {
} switch ( event.keyCode ) {
switch ( event.keyCode ) { case $.ui.keyCode.PAGE_UP:
case $.ui.keyCode.PAGE_UP: self.previousPage( event );
self.previousPage( event ); event.preventDefault();
event.preventDefault();
event.stopImmediatePropagation();
break;
case $.ui.keyCode.PAGE_DOWN:
self.nextPage( event );
event.preventDefault();
event.stopImmediatePropagation();
break;
case $.ui.keyCode.HOME:
self._move( "first", "first", event );
event.preventDefault();
event.stopImmediatePropagation();
break;
case $.ui.keyCode.END:
self._move( "last", "last", event );
event.preventDefault();
event.stopImmediatePropagation();
break;
case $.ui.keyCode.UP:
self.previous( event );
event.preventDefault();
event.stopImmediatePropagation();
break;
case $.ui.keyCode.DOWN:
self.next( event );
event.preventDefault();
event.stopImmediatePropagation();
break;
case $.ui.keyCode.LEFT:
if (self.collapse( event )) {
event.stopImmediatePropagation(); event.stopImmediatePropagation();
} break;
event.preventDefault(); case $.ui.keyCode.PAGE_DOWN:
break; self.nextPage( event );
case $.ui.keyCode.RIGHT: event.preventDefault();
if (self.expand( event )) {
event.stopImmediatePropagation(); event.stopImmediatePropagation();
} break;
event.preventDefault(); case $.ui.keyCode.HOME:
break; self._move( "first", "first", event );
case $.ui.keyCode.ENTER: event.preventDefault();
if ( self.active.children( "a[aria-haspopup='true']" ).length ) {
if ( self.expand( event ) ) {
event.stopImmediatePropagation();
}
}
else {
self.select( event );
event.stopImmediatePropagation(); event.stopImmediatePropagation();
} break;
event.preventDefault(); case $.ui.keyCode.END:
break; self._move( "last", "last", event );
case $.ui.keyCode.ESCAPE: event.preventDefault();
if ( self.collapse( event ) ) {
event.stopImmediatePropagation(); event.stopImmediatePropagation();
} break;
event.preventDefault(); case $.ui.keyCode.UP:
break; self.previous( event );
default: event.preventDefault();
event.stopPropagation(); event.stopImmediatePropagation();
clearTimeout( self.filterTimer ); break;
var match, case $.ui.keyCode.DOWN:
prev = self.previousFilter || "", self.next( event );
character = String.fromCharCode( event.keyCode ), event.preventDefault();
skip = false; event.stopImmediatePropagation();

break;
if (character == prev) { case $.ui.keyCode.LEFT:
skip = true; if (self.collapse( event )) {
} else { event.stopImmediatePropagation();
character = prev + character; }
} event.preventDefault();
function escape( value ) { break;
return value.replace( /[-[\]{}()*+?.,\\^$|#\s]/g , "\\$&" ); case $.ui.keyCode.RIGHT:
} if (self.expand( event )) {
match = self.activeMenu.children( ".ui-menu-item" ).filter( function() { event.stopImmediatePropagation();
return new RegExp("^" + escape(character), "i") }
.test( $( this ).children( "a" ).text() ); event.preventDefault();
}); break;
match = skip && match.index(self.active.next()) != -1 ? self.active.nextAll(".ui-menu-item") : match; case $.ui.keyCode.ENTER:
if ( !match.length ) { if ( self.active.children( "a[aria-haspopup='true']" ).length ) {
character = String.fromCharCode(event.keyCode); if ( self.expand( event ) ) {
match = self.activeMenu.children(".ui-menu-item").filter( function() { event.stopImmediatePropagation();
}
}
else {
self.select( event );
event.stopImmediatePropagation();
}
event.preventDefault();
break;
case $.ui.keyCode.ESCAPE:
if ( self.collapse( event ) ) {
event.stopImmediatePropagation();
}
event.preventDefault();
break;
default:
event.stopPropagation();
clearTimeout( self.filterTimer );
var match,
prev = self.previousFilter || "",
character = String.fromCharCode( event.keyCode ),
skip = false;

if (character == prev) {
skip = true;
} else {
character = prev + character;
}
function escape( value ) {
return value.replace( /[-[\]{}()*+?.,\\^$|#\s]/g , "\\$&" );
}
match = self.activeMenu.children( ".ui-menu-item" ).filter( function() {
return new RegExp("^" + escape(character), "i") return new RegExp("^" + escape(character), "i")
.test( $( this ).children( "a" ).text() ); .test( $( this ).children( "a" ).text() );
}); });
} match = skip && match.index(self.active.next()) != -1 ? self.active.nextAll(".ui-menu-item") : match;
if ( match.length ) { if ( !match.length ) {
self.focus( event, match ); character = String.fromCharCode(event.keyCode);
if (match.length > 1) { match = self.activeMenu.children(".ui-menu-item").filter( function() {
self.previousFilter = character; return new RegExp("^" + escape(character), "i")
self.filterTimer = setTimeout( function() { .test( $( this ).children( "a" ).text() );
});
}
if ( match.length ) {
self.focus( event, match );
if (match.length > 1) {
self.previousFilter = character;
self.filterTimer = setTimeout( function() {
delete self.previousFilter;
}, 1000 );
} else {
delete self.previousFilter; delete self.previousFilter;
}, 1000 ); }
} else { } else {
delete self.previousFilter; delete self.previousFilter;
} }
} else {
delete self.previousFilter;
} }
} }
}); });
Expand Down

0 comments on commit 609e1f8

Please sign in to comment.