aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2007-10-31 09:13:48 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2007-10-31 09:13:48 +0000
commit92cb17ac6b017dfa285a793ae66daa14bbf9e7c5 (patch)
treefb5a553ce64fdf4992b81fd8a7bd3f7120dd0560 /src
parent81d05b41fd4c187270e34b3d2027b99e9cc3a503 (diff)
downloadvaadin-framework-92cb17ac6b017dfa285a793ae66daa14bbf9e7c5.tar.gz
vaadin-framework-92cb17ac6b017dfa285a793ae66daa14bbf9e7c5.zip
fixed some bugs, filtering now works somehow
svn changeset:2631/svn branch:trunk
Diffstat (limited to 'src')
-rw-r--r--src/com/itmill/toolkit/ui/Select.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/com/itmill/toolkit/ui/Select.java b/src/com/itmill/toolkit/ui/Select.java
index e56666f3ad..bf31d9c3ad 100644
--- a/src/com/itmill/toolkit/ui/Select.java
+++ b/src/com/itmill/toolkit/ui/Select.java
@@ -234,22 +234,25 @@ public class Select extends AbstractSelect implements AbstractSelect.Filtering {
this.filteredOptions = new LinkedList(getItemIds());
return this.filteredOptions;
}
+
if (this.filterstring.equals(this.prevfilterstring)) {
return this.filteredOptions;
}
Collection items;
- if (this.filterstring.startsWith(this.prevfilterstring)) {
- items = this.filteredOptions;
+ if (prevfilterstring != null
+ && filterstring.startsWith(this.prevfilterstring)) {
+ items = filteredOptions;
} else {
items = getItemIds();
}
+ prevfilterstring = filterstring;
this.filteredOptions = new LinkedList();
for (Iterator it = items.iterator(); it.hasNext();) {
Object itemId = it.next();
- String caption = getItemCaption(it);
- if (caption != null || caption.equals("")) {
+ String caption = getItemCaption(itemId);
+ if (caption == null || caption.equals("")) {
continue;
}
switch (this.filteringMode) {