|
@@ -715,6 +715,9 @@ the specific language governing permissions and limitations under the Apache Lic
|
|
|
|
|
|
installFilteredMouseMove(this.results);
|
|
|
this.dropdown.on("mousemove-filtered touchstart touchmove touchend", resultsSelector, this.bind(this.highlightUnderEvent));
|
|
|
+ this.dropdown.on("touchend", resultsSelector, this.bind(this.selectHighlighted));
|
|
|
+ this.dropdown.on("touchmove", resultsSelector, this.bind(this.touchMoved));
|
|
|
+ this.dropdown.on("touchstart touchend", resultsSelector, this.bind(this.clearTouchMoved));
|
|
|
|
|
|
installDebouncedScroll(80, this.results);
|
|
|
this.dropdown.on("scroll-debounced", resultsSelector, this.bind(this.loadMoreIfNeeded));
|
|
@@ -1483,6 +1486,14 @@ the specific language governing permissions and limitations under the Apache Lic
|
|
|
this.results.find(".select2-highlighted").removeClass("select2-highlighted");
|
|
|
},
|
|
|
|
|
|
+ touchMoved: function() {
|
|
|
+ this._touchMoved = true;
|
|
|
+ },
|
|
|
+
|
|
|
+ clearTouchMoved: function() {
|
|
|
+ this._touchMoved = false;
|
|
|
+ },
|
|
|
+
|
|
|
// abstract
|
|
|
countSelectableResults: function() {
|
|
|
return this.findHighlightableChoices().length;
|
|
@@ -1715,6 +1726,10 @@ the specific language governing permissions and limitations under the Apache Lic
|
|
|
|
|
|
// abstract
|
|
|
selectHighlighted: function (options) {
|
|
|
+ if (this._touchMoved) {
|
|
|
+ this.clearTouchMoved();
|
|
|
+ return;
|
|
|
+ }
|
|
|
var index=this.highlight(),
|
|
|
highlighted=this.results.find(".select2-highlighted"),
|
|
|
data = highlighted.closest('.select2-result').data("select2-data");
|