You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Jari Aarniala (JIRA)" <ji...@apache.org> on 2008/09/12 14:31:44 UTC

[jira] Updated: (WICKET-1827) AutoCompleteTextField shows completion list even if focus is not in the text field anymore

     [ https://issues.apache.org/jira/browse/WICKET-1827?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jari Aarniala updated WICKET-1827:
----------------------------------

    Summary: AutoCompleteTextField shows completion list even if focus is not in the text field anymore  (was: AutoCompleteTextField shows completion list shown even if focus is not in the text field anymore)

typo

> AutoCompleteTextField shows completion list even if focus is not in the text field anymore
> ------------------------------------------------------------------------------------------
>
>                 Key: WICKET-1827
>                 URL: https://issues.apache.org/jira/browse/WICKET-1827
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket-extensions
>         Environment: Ubuntu/Firefox 3.0.1, OS X/Safari 3.1.2
>            Reporter: Jari Aarniala
>
> We have a form with multiple AutoCompleteTextFields in it. If the user enters text in text field A, and moves focus to text field B immediately (within the throttle delay) e.g. using tab, the autocompletion list appears in text field A even though it doesn't have the focus anymore.
> Looking at wicket-autocomplete.js, the fix should be pretty straightforward, i.e. just check whether the input still has focus at the time when the autocompletion list is shown (in doUpdateChoices(resp)). This works for me:
> --- wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js	(revision 694678)
> +++ wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js	(working copy)
> @@ -304,9 +304,9 @@
>  
>      function doUpdateChoices(resp){
>      
> -    	// check if the input hasn't been cleared in the meanwhile
> +    	// check that the input still has focus and hasn't been cleared in the meanwhile
>      	var input=wicketGet(elementId);
> -   		if (!cfg.showListOnEmptyInput && (input.value==null || input.value=="")) {
> +   		if ((Wicket.Focus.getFocusedElement() != input) || (!cfg.showListOnEmptyInput && (input.value==null || input.value==""))) {
>     			hideAutoComplete();
>     			return;
>     		}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.