currentSuggestions.add(suggestion);
if (optionUidl.hasAttribute("selected")) {
if (!filtering || popupOpenerClicked) {
- tb.setText(suggestion.getReplacementString());
+ setPromptingOff(suggestion.getReplacementString());
selectedOptionKey = "" + suggestion.getOptionKey();
}
currentSuggestion = suggestion;
}
private void setPromptingOn() {
- prompting = true;
- addStyleDependentName(CLASSNAME_PROMPT);
+ if (!prompting) {
+ prompting = true;
+ addStyleDependentName(CLASSNAME_PROMPT);
+ }
tb.setText(inputPrompt);
}
private void setPromptingOff(String text) {
tb.setText(text);
- prompting = false;
- removeStyleDependentName(CLASSNAME_PROMPT);
+ if (prompting) {
+ prompting = false;
+ removeStyleDependentName(CLASSNAME_PROMPT);
+ }
}
public void onSuggestionSelected(FilterSelectSuggestion suggestion) {
\r
@Override\r
public void setWidth(String width) {\r
- if (this.width.equals(width)) {\r
+ if (this.width.equals(width) || !isVisible()) {\r
return;\r
}\r
Size sizeBefore = new Size(activeLayoutSize.getWidth(),\r