You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jc...@apache.org on 2008/10/05 00:11:24 UTC
svn commit: r701721 - in
/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete:
AbstractAutoCompleteBehavior.java AutoCompleteSettings.java
wicket-autocomplete.js
Author: jcompagner
Date: Sat Oct 4 15:11:23 2008
New Revision: 701721
URL: http://svn.apache.org/viewvc?rev=701721&view=rev
Log:
various fixes from 1.3
Modified:
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js
Modified: wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java?rev=701721&r1=701720&r2=701721&view=diff
==============================================================================
--- wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java (original)
+++ wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java Sat Oct 4 15:11:23 2008
@@ -73,6 +73,7 @@
sb.append(",maxHeight: ").append(settings.getMaxHeightInPx());
sb.append(",adjustInputWidth: ").append(settings.isAdjustInputWidth());
sb.append(",showListOnEmptyInput: ").append(settings.getShowListOnEmptyInput());
+ sb.append(",showListOnFocusGain: ").append(settings.getShowListOnFocusGain());
if (settings.getCssClassName() != null)
sb.append(",className: '").append(settings.getCssClassName()).append('\'');
sb.append('}');
Modified: wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java?rev=701721&r1=701720&r2=701721&view=diff
==============================================================================
--- wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java (original)
+++ wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java Sat Oct 4 15:11:23 2008
@@ -57,6 +57,8 @@
private String cssClassName = null;
private boolean adjustInputWidth = true;
+
+ private boolean showListOnFocusGain = false;
/**
* Indicates whether the first item in the list is automatically selected when the autocomplete
@@ -188,4 +190,25 @@
{
this.adjustInputWidth = adjustInputWidth;
}
-}
\ No newline at end of file
+
+ /**
+ * Indicates whether the autocomplete list will be shown when the input field receives focus.
+ *
+ * @return true if the autocomplete list will be shown when the input field receives focus, false
+ * otherwise
+ */
+ public boolean getShowListOnFocusGain()
+ {
+ return this.showListOnFocusGain;
+ }
+
+ /**
+ * Sets whether the list should be shown when the input field receives focus.
+ *
+ * @param showListOnEmptyInput the flag
+ */
+ public void setShowListOnFocusGain(final boolean showListOnFocusGain)
+ {
+ this.showListOnFocusGain = showListOnFocusGain;
+ }
+}
Modified: wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js?rev=701721&r1=701720&r2=701721&view=diff
==============================================================================
--- wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js (original)
+++ wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/wicket-autocomplete.js Sat Oct 4 15:11:23 2008
@@ -128,7 +128,7 @@
var value = getSelectedValue();
if(value = handleSelection(value)) {
obj.value = value;
- if(typeof objonchange=="function") objonchange();
+ if(typeof objonchange=="function") objonchange(event);
}
hideAutoComplete();
hidingAutocomplete = 1;
@@ -137,7 +137,7 @@
hidingAutocomplete = 1;
}
mouseactive=0;
- if(typeof objonkeydown=="function")objonkeydown();
+ if(typeof objonkeydown=="function")objonkeydown(event);
if(selected>-1){
//return killEvent(event);
@@ -152,10 +152,13 @@
switch(wicketKeyCode(Wicket.fixEvent(event))){
case KEY_ENTER:
return killEvent(event);
+ case KEY_TAB:
+ if (cfg.showListOnFocusGain)
+ updateChoices();
+ break;
case KEY_UP:
case KEY_DOWN:
case KEY_ESC:
- case KEY_TAB:
case KEY_RIGHT:
case KEY_LEFT:
case KEY_SHIFT:
@@ -165,7 +168,7 @@
default:
updateChoices();
}
- if(typeof objonkeyup=="function")objonkeyup();
+ if(typeof objonkeyup=="function")objonkeyup(event);
return null;
}
@@ -176,7 +179,7 @@
return killEvent(event);
}
}
- if(typeof objonkeypress=="function")objonkeypress();
+ if(typeof objonkeypress=="function")objonkeypress(event);
}
}
@@ -285,7 +288,7 @@
var input=wicketGet(elementId);
var index=getOffsetParentZIndex(elementId);
container.show();
- container.style.zIndex=(Number(index)!=Number.NaN?Number(index)+1:index);
+ container.style.zIndex=(!isNaN(Number(index))?Number(index)+1:index);
container.style.left=position[0]+'px'
container.style.top=(input.offsetHeight+position[1])+'px';
if(cfg.adjustInputWidth)
@@ -319,7 +322,7 @@
// check if the input 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;
}
@@ -335,8 +338,8 @@
if(value = handleSelection(value)) {
wicketGet(elementId).value=value;
if (typeof objonchange=="function") {objonchange();}
- hideAutoComplete();
}
+ hideAutoComplete();
};
var mouseOverFunc = function(event){