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, 8 insertions, 0 deletions
diff --git a/src/com/itmill/toolkit/ui/Tree.java b/src/com/itmill/toolkit/ui/Tree.java index 0aaa22a3c7..3c5552c256 100644 --- a/src/com/itmill/toolkit/ui/Tree.java +++ b/src/com/itmill/toolkit/ui/Tree.java @@ -31,6 +31,7 @@ package com.itmill.toolkit.ui; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Collection; +import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.LinkedHashSet; @@ -336,6 +337,13 @@ public class Tree extends AbstractSelect implements Container.Hierarchical, */ public void changeVariables(Object source, Map variables) { + if (!isSelectable() && variables.containsKey("selected")) { + // Not-selectable is a special case, AbstractSelect does not support + // TODO could be optimized. + variables = new HashMap(variables); + variables.remove("selected"); + } + // Collapses the nodes if (variables.containsKey("collapse")) { String[] keys = (String[]) variables.get("collapse"); |