Esanders has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/241666

Change subject: SelectWidget: Ensure 'choose' never emits null
......................................................................

SelectWidget: Ensure 'choose' never emits null

Unlike 'select', 'choose' can only be emitted when a
valid user selection has been made. Ensure this is the
case with the SearchWidget, and add an extra check inside
SelectWidget for the future.

Change-Id: I03f0b6d88fe799160661da00720c8e9096c0ada8
---
M src/widgets/SearchWidget.js
M src/widgets/SelectWidget.js
2 files changed, 8 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/oojs/ui refs/changes/66/241666/1

diff --git a/src/widgets/SearchWidget.js b/src/widgets/SearchWidget.js
index b5bddf6..fbce361 100644
--- a/src/widgets/SearchWidget.js
+++ b/src/widgets/SearchWidget.js
@@ -103,8 +103,10 @@
  * @param {string} value New value
  */
 OO.ui.SearchWidget.prototype.onQueryEnter = function () {
-       // Reset
-       this.results.chooseItem( this.results.getHighlightedItem() );
+       var highlightedItem = this.results.getHighlightedItem();
+       if ( highlightedItem ) {
+               this.results.chooseItem( highlightedItem );
+       }
 };
 
 /**
diff --git a/src/widgets/SelectWidget.js b/src/widgets/SelectWidget.js
index 4840ba8..b03c6de 100644
--- a/src/widgets/SelectWidget.js
+++ b/src/widgets/SelectWidget.js
@@ -699,8 +699,10 @@
  * @chainable
  */
 OO.ui.SelectWidget.prototype.chooseItem = function ( item ) {
-       this.selectItem( item );
-       this.emit( 'choose', item );
+       if ( item ) {
+               this.selectItem( item );
+               this.emit( 'choose', item );
+       }
 
        return this;
 };

-- 
To view, visit https://gerrit.wikimedia.org/r/241666
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I03f0b6d88fe799160661da00720c8e9096c0ada8
Gerrit-PatchSet: 1
Gerrit-Project: oojs/ui
Gerrit-Branch: master
Gerrit-Owner: Esanders <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to