diff options
author | John Ahlroos <john@vaadin.com> | 2012-09-04 16:40:12 +0300 |
---|---|---|
committer | John Ahlroos <john@vaadin.com> | 2012-09-04 16:40:12 +0300 |
commit | 3757ed30c6ebbeb7635449c6019ab00a6a25ea5e (patch) | |
tree | 1d6e8908b2affeb3ec62e1bc833e5ed701cd7b08 /client/src | |
parent | e5ce22479bc99f39821497f726ee3b0c1a85bbbd (diff) | |
download | vaadin-framework-3757ed30c6ebbeb7635449c6019ab00a6a25ea5e.tar.gz vaadin-framework-3757ed30c6ebbeb7635449c6019ab00a6a25ea5e.zip |
Thinking I finally got it (ComponentLocator fix)
Diffstat (limited to 'client/src')
-rw-r--r-- | client/src/com/vaadin/client/ComponentLocator.java | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/client/src/com/vaadin/client/ComponentLocator.java b/client/src/com/vaadin/client/ComponentLocator.java index 694c57ed5c..4b47a96dca 100644 --- a/client/src/com/vaadin/client/ComponentLocator.java +++ b/client/src/com/vaadin/client/ComponentLocator.java @@ -589,13 +589,7 @@ public class ComponentLocator { Widget child = iterator.next(); String simpleName2 = Util.getSimpleName(child); - - if ("VBoxLayout$Slot".equals(simpleName2)) { - // Replace slot with the actual widget in the slot - child = ((SimplePanel) child).getWidget(); - simpleName2 = Util.getSimpleName(child); - } - + if (widgetClassName.equals(simpleName2)) { if (widgetPosition == 0) { w = child; @@ -603,6 +597,19 @@ public class ComponentLocator { break; } widgetPosition--; + + } else if (w instanceof VBoxLayout + && "VBoxLayout$Slot".equals(simpleName2)) { + child = ((SimplePanel) child).getWidget(); + simpleName2 = Util.getSimpleName(child); + if (widgetClassName.equals(simpleName2)) { + if (widgetPosition == 0) { + w = child; + ok = true; + break; + } + widgetPosition--; + } } } |