diff --git a/lib/jquery.uls/images/language.png b/lib/jquery.uls/images/language.png
index c8fcbc66..332f20dc 100644
Binary files a/lib/jquery.uls/images/language.png and b/lib/jquery.uls/images/language.png differ
diff --git a/lib/jquery.uls/images/language.svg b/lib/jquery.uls/images/language.svg
index 8ddef85e..b706df29 100644
--- a/lib/jquery.uls/images/language.svg
+++ b/lib/jquery.uls/images/language.svg
@@ -1 +1,4 @@
-
\ No newline at end of file
+
+
diff --git a/lib/jquery.uls/src/jquery.uls.core.js b/lib/jquery.uls/src/jquery.uls.core.js
index 986c8ab1..27ba36b0 100644
--- a/lib/jquery.uls/src/jquery.uls.core.js
+++ b/lib/jquery.uls/src/jquery.uls.core.js
@@ -218,12 +218,7 @@
} );
// Handle key press events on the menu
- this.$menu.on( 'keypress', $.proxy( this.keypress, this ) )
- .on( 'keyup', $.proxy( this.keyup, this ) );
-
- if ( this.eventSupported( 'keydown' ) ) {
- this.$menu.on( 'keydown', $.proxy( this.keypress, this ) );
- }
+ this.$menu.on( 'keydown', $.proxy( this.keypress, this ) );
languagesCount = Object.keys( this.options.languages ).length;
lcd = this.$resultsView.lcd( {
@@ -275,18 +270,6 @@
this.hide();
},
- keyup: function ( e ) {
- if ( !this.shown ) {
- return;
- }
-
- if ( e.keyCode === 27 ) { // escape
- this.cancel();
- e.preventDefault();
- e.stopPropagation();
- }
- },
-
keypress: function ( e ) {
if ( !this.shown ) {
return;
@@ -307,17 +290,6 @@
}
},
- eventSupported: function ( eventName ) {
- var isSupported = eventName in this.$menu;
-
- if ( !isSupported ) {
- this.$element.setAttribute( eventName, 'return;' );
- isSupported = typeof this.$element[ eventName ] === 'function';
- }
-
- return isSupported;
- },
-
/**
* Get the panel menu width parameter
* @return {string}
diff --git a/lib/jquery.uls/src/jquery.uls.languagefilter.js b/lib/jquery.uls/src/jquery.uls.languagefilter.js
index 6352c80b..9f48d727 100644
--- a/lib/jquery.uls/src/jquery.uls.languagefilter.js
+++ b/lib/jquery.uls/src/jquery.uls.languagefilter.js
@@ -67,12 +67,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.on( 'keydown', $.proxy( this.keypress, this ) );
if ( this.$clear.length ) {
this.$clear.on( 'click', $.proxy( this.clear, this ) );
@@ -81,7 +77,7 @@
this.toggleClear();
},
- keyup: function ( e ) {
+ keypress: function ( e ) {
var suggestion, query, languageFilter;
switch ( e.keyCode ) {
@@ -106,11 +102,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 );
}
@@ -119,9 +115,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;
}
@@ -314,17 +310,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;
}
};