Updated Branches:
  refs/heads/wicket-1.5.x 1fb546471 -> 368d5ff46

When showing all then only select if it really is in the list
if filtering (typing) then select the first one by default
This fixes the behavior that when tabbing through fields that suddenly
the first value overwrites the real selected value if the real selected
value was not in the list yet (because the data is to big)

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

Branch: refs/heads/wicket-1.5.x
Commit: 368d5ff469b761d6677178a52d07a23b5035cae6
Parents: 1fb5464
Author: Johan Compagner <[email protected]>
Authored: Fri May 4 14:20:45 2012 +0200
Committer: Johan Compagner <[email protected]>
Committed: Fri May 4 14:23:13 2012 +0200

----------------------------------------------------------------------
 .../html/autocomplete/wicket-autocomplete.js       |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/368d5ff4/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 3e95004..da28c13 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
@@ -359,7 +359,7 @@ Wicket.AutoComplete=function(elementId, callbackUrl, cfg, 
indicatorId){
     function actualUpdateChoicesShowAll()
     {
        showIndicator();
-               var request = new Wicket.Ajax.Request(callbackUrl+"&q=", 
doUpdateChoices, false, true, false, "wicket-autocomplete|d");
+               var request = new Wicket.Ajax.Request(callbackUrl+"&q=", 
doUpdateAllChoices, false, true, false, "wicket-autocomplete|d");
                request.get();
     }
 
@@ -581,7 +581,10 @@ Wicket.AutoComplete=function(elementId, callbackUrl, cfg, 
indicatorId){
         return [leftPosition,topPosition];
     }
     
-    function doUpdateChoices(resp){
+    function doUpdateAllChoices(resp) {
+       doUpdateChoices(resp,-1);
+    }
+    function doUpdateChoices(resp, defaultSelection){
        
        getAutocompleteMenu().showingAutocomplete = false;
        
@@ -639,7 +642,7 @@ Wicket.AutoComplete=function(elementId, callbackUrl, cfg, 
indicatorId){
 
         if(elementCount>0){
             if(cfg.preselect==true){
-                var selectedIndex = 0;
+                var selectedIndex = defaultSelection?defaultSelection:0;
                 for(var i = 0;i < elementCount; i++) {
                                var node = selectableElements[i];
                                var attr= node.attributes['textvalue'];

Reply via email to