In getFilteringOptions() method, I noticed the following:
Collection items;
if (prevfilterstring != null
&& filterstring.startsWith(prevfilterstring)) {
items = filteredOptions;
} else {
items = getItemIds();
}
If the current filter starts with the previous one, we need to scan only the existing filtered list. This is a good optimization but it will not work correctly if a new item was added to the container and that new item matches the filter condition. As a result, that new item won’t show up on the screen.
The work around may be listen on container item changes and update the filteredOptions linked list accordingly.
[Edited]
Any response to this?