diff options
Diffstat (limited to 'src/com/itmill/toolkit/ui/Tree.java')
-rw-r--r-- | src/com/itmill/toolkit/ui/Tree.java | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/com/itmill/toolkit/ui/Tree.java b/src/com/itmill/toolkit/ui/Tree.java index 1d3f303aa3..a4440c2cbc 100644 --- a/src/com/itmill/toolkit/ui/Tree.java +++ b/src/com/itmill/toolkit/ui/Tree.java @@ -305,8 +305,10 @@ public class Tree extends Select implements Container.Hierarchical, String[] keys = (String[]) variables.get("collapse"); for (int i = 0; i < keys.length; i++) { Object id = itemIdMapper.get(keys[i]); - if (id != null) - collapseItem(id); + if (id != null && isExpanded(id)) { + expanded.remove(id); + fireCollapseEvent(id); + } } } @@ -548,7 +550,7 @@ public class Tree extends Select implements Container.Hierarchical, boolean success = ((Container.Hierarchical) items).setChildrenAllowed( itemId, areChildrenAllowed); if (success) - fireValueChange(); + fireValueChange(false); return success; } |