WICKET-4705 Autocomplete doesn't fire when using keyboard (ENTER key)

Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/909ddf19
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/909ddf19
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/909ddf19

Branch: refs/heads/master
Commit: 909ddf192bff57a5c6ee8bbe290a3a7b29d8f0cc
Parents: 5ab4424
Author: Martin Tzvetanov Grigorov <[email protected]>
Authored: Fri Aug 10 11:50:52 2012 +0300
Committer: Martin Tzvetanov Grigorov <[email protected]>
Committed: Fri Aug 10 11:50:52 2012 +0300

----------------------------------------------------------------------
 .../html/autocomplete/wicket-autocomplete.js       |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/909ddf19/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js
----------------------------------------------------------------------
diff --git 
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js
 
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js
index ac37d51..06b18dc 100644
--- 
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js
+++ 
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js
@@ -177,8 +177,10 @@
                                                        hidingAutocomplete = 1;
                                                        if(value) {
                                                                obj.value = 
value;
-                                                               if(typeof 
objonchange==="function") {
-                                                                       
objonchange.apply(this,[event]);
+                                                               if 
(typeof(objonchange) === "function") {
+                                                                       
objonchange.apply(this,[jqEvent]);
+                                                               } else {
+                                                                       
jQuery(obj).triggerHandler('change');
                                                                }
                                                        }
                                                } else if 
(Wicket.AutoCompleteSettings.enterHidesWithNoSelection) {
@@ -644,15 +646,16 @@
                                        var value = getSelectedValue();
                                        var input = Wicket.$(elementId);
                                        value = handleSelection(value);
-                                       if(value) {
+                                       hideAutoComplete();
+                                       if (value) {
                                                input.value = value;
-                                               jQuery(input).trigger('change');
+                                               
jQuery(input).triggerHandler('change');
                                        }
-                                       hideAutoComplete();
                                        if (document.activeElement !== input) {
                                                ignoreOneFocusGain = true;
                                                input.focus();
                                        }
+                                       return true;
                                };
 
                                var mouseOverFunc = function(event) {

Reply via email to