diff options
author | Artur Signell <artur.signell@itmill.com> | 2011-06-06 15:13:14 +0000 |
---|---|---|
committer | Artur Signell <artur.signell@itmill.com> | 2011-06-06 15:13:14 +0000 |
commit | 3df4bbbe0199146286a2d00345116584e6daf886 (patch) | |
tree | 0614a3ef68ac1f6d1e4b697f002eb8481f905e8d /src/com/vaadin/data | |
parent | adaa83dff90b68c7bb4aa24a61e2c87807b1bf43 (diff) | |
download | vaadin-framework-3df4bbbe0199146286a2d00345116584e6daf886.tar.gz vaadin-framework-3df4bbbe0199146286a2d00345116584e6daf886.zip |
#7129 Properly clean up "filteredParent" when removing an item from a filtered container
svn changeset:19245/svn branch:6.6
Diffstat (limited to 'src/com/vaadin/data')
-rw-r--r-- | src/com/vaadin/data/util/HierarchicalContainer.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/com/vaadin/data/util/HierarchicalContainer.java b/src/com/vaadin/data/util/HierarchicalContainer.java index d671dbc833..e208d07dc6 100644 --- a/src/com/vaadin/data/util/HierarchicalContainer.java +++ b/src/com/vaadin/data/util/HierarchicalContainer.java @@ -471,6 +471,9 @@ public class HierarchicalContainer extends IndexedContainer implements if (filteredChildren != null) { filteredChildren = null; } + if (filteredParent != null) { + filteredParent = null; + } } enableAndFireContentsChangeEvents(); return success; @@ -528,6 +531,11 @@ public class HierarchicalContainer extends IndexedContainer implements } } parent.remove(itemId); + if (filteredParent != null) { + // Item id no longer has a parent as the item id is not in the + // container. + filteredParent.remove(itemId); + } noChildrenAllowed.remove(itemId); } |