From: Matti Tahvonen Date: Wed, 31 Oct 2007 09:13:48 +0000 (+0000) Subject: fixed some bugs, filtering now works somehow X-Git-Tag: 6.7.0.beta1~5744 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=92cb17ac6b017dfa285a793ae66daa14bbf9e7c5;p=vaadin-framework.git fixed some bugs, filtering now works somehow svn changeset:2631/svn branch:trunk --- 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) {