Repository: wicket Updated Branches: refs/heads/master be3ed3d38 -> 9bf1db7d5
WICKET-5314 Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/9bf1db7d Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/9bf1db7d Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/9bf1db7d Branch: refs/heads/master Commit: 9bf1db7d5deaba34b0bfba233976778c0c496555 Parents: be3ed3d Author: Sven Meier <svenme...@apache.org> Authored: Fri Feb 13 15:22:20 2015 +0100 Committer: Sven Meier <svenme...@apache.org> Committed: Fri Feb 13 15:22:20 2015 +0100 ---------------------------------------------------------------------- .../autocomplete/AutoCompleteTextField.java | 13 +++++++ .../html/autocomplete/wicket-autocomplete.js | 41 +++++++++++--------- 2 files changed, 36 insertions(+), 18 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/9bf1db7d/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java index b31bff3..79b86ea 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java @@ -19,6 +19,7 @@ package org.apache.wicket.extensions.ajax.markup.html.autocomplete; import java.util.Iterator; import org.apache.wicket.ConverterLocator; +import org.apache.wicket.ajax.attributes.AjaxRequestAttributes; import org.apache.wicket.behavior.Behavior; import org.apache.wicket.markup.ComponentTag; import org.apache.wicket.markup.html.form.TextField; @@ -233,9 +234,21 @@ public abstract class AutoCompleteTextField<T> extends TextField<T> { return AutoCompleteTextField.this.getChoices(input); } + + @Override + protected void updateAjaxAttributes(AjaxRequestAttributes attributes) + { + super.updateAjaxAttributes(attributes); + + AutoCompleteTextField.this.updateAjaxAttributes(attributes); + } }; } + protected void updateAjaxAttributes(AjaxRequestAttributes attributes) + { + } + /** * Initializes the {@link AutoCompleteBehavior} if it is not already there. */ http://git-wip-us.apache.org/repos/asf/wicket/blob/9bf1db7d/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 c5d89fb..0e1e4b9 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 @@ -343,27 +343,32 @@ function prepareAndExecuteAjaxUpdate(successHandler, currentInput){ showIndicator(); - var settings = jQuery.extend(true, { - pre: [ function (attributes) { - var activeIsInitial = (document.activeElement === initialElement); - var elementVal = Wicket.$(elementId).value; - var hasMinimumLength = elementVal.length >= minInputLength; - - var result = hasMinimumLength && activeIsInitial; - - if (!result) { - hideAutoComplete(); - } + var attrs = jQuery.extend({}, ajaxAttributes); + + attrs.c = undefined; + + attrs.pre = attrs.pre || []; + attrs.pre.push(function (attributes) { + var activeIsInitial = (document.activeElement === initialElement); + var elementVal = Wicket.$(elementId).value; + var hasMinimumLength = elementVal.length >= minInputLength; + + var result = hasMinimumLength && activeIsInitial; - return result; - }], - ep: {}, - sh: [ successHandler ] - }, ajaxAttributes); + if (!result) { + hideAutoComplete(); + } + + return result; + }); + + attrs.sh = attrs.sh || []; + attrs.sh.push(successHandler); - settings.ep[cfg.parameterName] = currentInput; + attrs.ep = attrs.ep || {}; + attrs.ep[cfg.parameterName] = currentInput; - Wicket.Ajax.ajax(settings); + Wicket.Ajax.ajax(attrs); } function showIndicator() {