Simplify key press event handlers

Remove eventSupported checks and just rely on jquery.keydown
This commit is contained in:
Santhosh Thottingal
2018-01-05 15:00:31 +05:30
parent 2a77df6c41
commit e67e1e42ee
2 changed files with 8 additions and 51 deletions

View File

@@ -68,12 +68,8 @@
},
listen: function () {
this.$element.on( 'keypress', $.proxy( this.keyup, this ) )
.on( 'keyup', $.proxy( this.keyup, this ) );
if ( this.eventSupported( 'keydown' ) ) {
this.$element.on( 'keydown', $.proxy( this.keyup, this ) );
}
this.$element.keydown( $.proxy( this.keypress, this ) );
if ( this.$clear.length ) {
this.$clear.on( 'click', $.proxy( this.clear, this ) );
@@ -82,7 +78,7 @@
this.toggleClear();
},
keyup: function ( e ) {
keypress: function ( e ) {
var suggestion, query, languageFilter;
switch ( e.keyCode ) {
@@ -107,11 +103,11 @@
query = $.trim( this.$element.val() ).toLowerCase();
if ( this.selectedLanguage ) {
// this.selectLanguage will be populated from a matching search
// this.selectLanguage will be populated from a matching search
this.options.onSelect( this.selectedLanguage );
} else if ( this.options.languages[ query ] ) {
// Search is yet to happen (in timeout delay),
// but we have a matching language code.
// Search is yet to happen (in timeout delay),
// but we have a matching language code.
this.options.onSelect( query );
}
@@ -120,9 +116,9 @@
languageFilter = this;
if ( e.which < 32 &&
e.which !== 8 // Backspace
e.which !== 8 // Backspace
) {
// ignore any ASCII control characters
// ignore any ASCII control characters
break;
}
@@ -321,17 +317,6 @@
matcher.test( $.uls.data.getAutonym( langCode ) ) ||
matcher.test( langCode ) ||
matcher.test( $.uls.data.getScript( langCode ) );
},
eventSupported: function ( eventName ) {
var isSupported = eventName in this.$element;
if ( !isSupported ) {
this.$element.setAttribute( eventName, 'return;' );
isSupported = typeof this.$element[ eventName ] === 'function';
}
return isSupported;
}
};