]> source.dussan.org Git - vaadin-framework.git/commitdiff
Merged some changes from 6.5
authorHenri Sara <henri.sara@itmill.com>
Wed, 16 Mar 2011 08:31:31 +0000 (08:31 +0000)
committerHenri Sara <henri.sara@itmill.com>
Wed, 16 Mar 2011 08:31:31 +0000 (08:31 +0000)
svn changeset:17798/svn branch:6.6

31 files changed:
WebContent/VAADIN/themes/base/styles.css
WebContent/VAADIN/themes/base/tabsheet/tabsheet.css
WebContent/VAADIN/themes/liferay/styles.css
WebContent/VAADIN/themes/reindeer/styles.css
WebContent/VAADIN/themes/runo/styles.css
build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.class [new file with mode: 0644]
build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.java
build/buildhelpers/com/vaadin/buildhelpers/ManifestWriter.class [new file with mode: 0644]
src/com/vaadin/terminal/gwt/client/ui/VEmbedded.java
src/com/vaadin/terminal/gwt/client/ui/VPanel.java
src/com/vaadin/terminal/gwt/client/ui/VTextField.java
src/com/vaadin/terminal/gwt/client/ui/VView.java
src/com/vaadin/terminal/gwt/client/ui/VWindow.java
src/com/vaadin/ui/AbsoluteLayout.java
src/com/vaadin/ui/Embedded.java
src/com/vaadin/ui/Panel.java
src/com/vaadin/ui/Window.java
tests/eclipse-run-selected-test.properties
tests/src/com/vaadin/tests/VaadinClasses.java
tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.html [new file with mode: 0644]
tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.java [new file with mode: 0644]
tests/src/com/vaadin/tests/components/caption/IconsInCaption.java [new file with mode: 0644]
tests/src/com/vaadin/tests/components/embedded/FlashIsVisible.html [new file with mode: 0644]
tests/src/com/vaadin/tests/components/embedded/FlashIsVisible.java [new file with mode: 0644]
tests/src/com/vaadin/tests/components/menubar/IconsInSubMenus.html
tests/src/com/vaadin/tests/components/menubar/MenuBarResize.html [new file with mode: 0644]
tests/src/com/vaadin/tests/components/table/HeaderClick.html
tests/src/com/vaadin/tests/components/textfield/TextChangeTimeoutAfterDetach.html [new file with mode: 0644]
tests/src/com/vaadin/tests/components/textfield/TextChangeTimeoutAfterDetach.java [new file with mode: 0644]
tests/src/com/vaadin/tests/layouts/layouttester/HorizontalLayoutTests.java
tests/src/com/vaadin/tests/layouts/layouttester/LayoutTesterApplication.html

index 6ef3833ce191c5c741ae4bbee27f340b47e5d28c..0d5e79acbfc4984eae2c530271dbee2c4778a476 100644 (file)
@@ -1,5 +1,5 @@
-.v-theme-version:after {content:"6_5_1_dev-20110207";}
-.v-theme-version-6_5_1_dev-20110207 {display: none;}
+.v-theme-version:after {content:"6_5_2_dev-20110303";}
+.v-theme-version-6_5_2_dev-20110303 {display: none;}
 /* Automatically compiled css file from subdirectories. */
 
 .v-absolutelayout-wrapper {
@@ -1839,6 +1839,10 @@ div.v-progressindicator-indeterminate-disabled {
        border-bottom: none;
        position: relative;
 }
+.v-ie6 .v-tabsheet-content,
+.v-ie7 .v-tabsheet-content {
+       zoom: 1;
+}
 .v-tabsheet-deco {
        height: 1px;
        background: #aaa;
index b10afd99790dc5abb7ee8fa69203d964d3e00f1a..6fae7381a1c981b154509c863de68cfdad5c8da9 100644 (file)
        border-bottom: none;
        position: relative;
 }
+.v-ie6 .v-tabsheet-content,
+.v-ie7 .v-tabsheet-content {
+       zoom: 1;
+}
 .v-tabsheet-deco {
        height: 1px;
        background: #aaa;
index 5e52105283565805909df0503c3e2e59c55873e6..115119e79728aeb8a911da89b85945eca6e90c88 100644 (file)
@@ -1,5 +1,5 @@
-.v-theme-version:after {content:"6_5_1_dev-20110207";}
-.v-theme-version-6_5_1_dev-20110207 {display: none;}
+.v-theme-version:after {content:"6_5_2_dev-20110303";}
+.v-theme-version-6_5_2_dev-20110303 {display: none;}
 /* Automatically compiled css file from subdirectories. */
 
 .v-absolutelayout-wrapper {
@@ -1839,6 +1839,10 @@ div.v-progressindicator-indeterminate-disabled {
        border-bottom: none;
        position: relative;
 }
+.v-ie6 .v-tabsheet-content,
+.v-ie7 .v-tabsheet-content {
+       zoom: 1;
+}
 .v-tabsheet-deco {
        height: 1px;
        background: #aaa;
index f82d5574fb6a518c6753c7dfb30e1c71a72d4cae..b0c54c8ec4058380005f6a1d231b05f3e00ae4af 100644 (file)
@@ -1,5 +1,5 @@
-.v-theme-version:after {content:"6_5_1_dev-20110207";}
-.v-theme-version-6_5_1_dev-20110207 {display: none;}
+.v-theme-version:after {content:"6_5_2_dev-20110303";}
+.v-theme-version-6_5_2_dev-20110303 {display: none;}
 /* Automatically compiled css file from subdirectories. */
 
 .v-absolutelayout-wrapper {
@@ -1839,6 +1839,10 @@ div.v-progressindicator-indeterminate-disabled {
        border-bottom: none;
        position: relative;
 }
+.v-ie6 .v-tabsheet-content,
+.v-ie7 .v-tabsheet-content {
+       zoom: 1;
+}
 .v-tabsheet-deco {
        height: 1px;
        background: #aaa;
@@ -4467,9 +4471,9 @@ td.v-datefield-calendarpanel-nextyear {
        -webkit-border-bottom-right-radius: 4px;
        height: 13px;
        padding: 4px 30px;
+       white-space: nowrap;
        color: #222;
        text-shadow: #fff 0 1px 0;
-       width: 100px;
        position: relative;
        top: 1px;
        -webkit-box-shadow: rgba(0,0,0,.5) 0 1px 2px;
index 47c496d62c2eea4fa5e34c999412f581227a2f09..120c4daa53c07ce338c68cb6d56f6b5e6d052e59 100644 (file)
@@ -1,5 +1,5 @@
-.v-theme-version:after {content:"6_5_1_dev-20110207";}
-.v-theme-version-6_5_1_dev-20110207 {display: none;}
+.v-theme-version:after {content:"6_5_2_dev-20110303";}
+.v-theme-version-6_5_2_dev-20110303 {display: none;}
 /* Automatically compiled css file from subdirectories. */
 
 .v-absolutelayout-wrapper {
@@ -1839,6 +1839,10 @@ div.v-progressindicator-indeterminate-disabled {
        border-bottom: none;
        position: relative;
 }
+.v-ie6 .v-tabsheet-content,
+.v-ie7 .v-tabsheet-content {
+       zoom: 1;
+}
 .v-tabsheet-deco {
        height: 1px;
        background: #aaa;
diff --git a/build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.class b/build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.class
new file mode 100644 (file)
index 0000000..c7f0d86
Binary files /dev/null and b/build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.class differ
index 742450f3d5638c31430432a79c27443104e05c0a..6f477601edc8872c9c0855aaf43a74a1a7c632bd 100644 (file)
@@ -92,6 +92,14 @@ public class GeneratePackageExports {
             Name name = (Name) attrit.next();
             keys.add(name.toString());
         }
+
+        // Jar must be closed before updating it below, as it's
+        // locked in Windows until closed. (#6045)
+        try {
+            jar.close();
+        } catch (IOException e) {
+            System.err.println("Unable to close JAR '"+jarFilename+"'");
+        }
         
         // Put the manifest version as the first line
         String orderedKeys[] = new String[keys.size()]; 
@@ -121,7 +129,8 @@ public class GeneratePackageExports {
         // the loop above, but it's not guaranteed that it exists.
         manifest.writeAttribute("Export-Package", exportPackage);
 
-        // Update the manifest in the Jar
+        // Update the manifest in the Jar. The jar must be closed
+        // before this is done.
         int status = manifest.updateJar(jarFilename);
 
         if (status != 0)
diff --git a/build/buildhelpers/com/vaadin/buildhelpers/ManifestWriter.class b/build/buildhelpers/com/vaadin/buildhelpers/ManifestWriter.class
new file mode 100644 (file)
index 0000000..bd48e3b
Binary files /dev/null and b/build/buildhelpers/com/vaadin/buildhelpers/ManifestWriter.class differ
index f1d61029d49e85aba021a0bb5a511913cf7ab370..a0f7cc649ceb94cacac3c77a31a54b7167dbeaad 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
 @ITMillApache2LicenseForJavaFiles@
  */
 
@@ -137,35 +137,9 @@ public class VEmbedded extends HTML implements Paintable {
         } else if (uidl.hasAttribute("mimetype")) {
             final String mime = uidl.getStringAttribute("mimetype");
             if (mime.equals("application/x-shockwave-flash")) {
-                addStyleName(CLASSNAME + "-flash");
-                String html = "<object "
-                        + "type=\"application/x-shockwave-flash\" "
-                        + "width=\"" + width + "\" height=\"" + height + "\">";
+                // Handle embedding of Flash
+                setHTML(createFlashEmbed(uidl));
 
-                Map<String, String> parameters = getParameters(uidl);
-                if (parameters.get("movie") == null) {
-                    parameters.put("movie", getSrc(uidl, client));
-                }
-
-                // Add the parameters to the Object
-                for (String name : parameters.keySet()) {
-                    html += "<param name=\"" + escapeAttribute(name)
-                            + "\" value=\""
-                            + escapeAttribute(parameters.get(name)) + "\"/>";
-                }
-
-                html += "<embed src=\"" + getSrc(uidl, client) + "\" width=\""
-                        + width + "\" height=\"" + height + "\" "
-                        + "type=\"application/x-shockwave-flash\" ";
-
-                // Add the parameters to the Embed
-                for (String name : parameters.keySet()) {
-                    html += escapeAttribute(name) + "=\""
-                            + escapeAttribute(parameters.get(name)) + "\" ";
-                }
-
-                html += "></embed></object>";
-                setHTML(html);
             } else if (mime.equals("image/svg+xml")) {
                 addStyleName(CLASSNAME + "-svg");
                 String data;
@@ -185,6 +159,26 @@ public class VEmbedded extends HTML implements Paintable {
                 if (height != null) {
                     obj.getStyle().setProperty("height", "100%");
                 }
+                if (uidl.hasAttribute("classid")) {
+                    obj.setAttribute("classid",
+                            uidl.getStringAttribute(escapeAttribute("classid")));
+                }
+                if (uidl.hasAttribute("codebase")) {
+                    obj.setAttribute("codebase", uidl
+                            .getStringAttribute(escapeAttribute("codebase")));
+                }
+                if (uidl.hasAttribute("codetype")) {
+                    obj.setAttribute("codetype", uidl
+                            .getStringAttribute(escapeAttribute("codetype")));
+                }
+                if (uidl.hasAttribute("archive")) {
+                    obj.setAttribute("archive",
+                            uidl.getStringAttribute(escapeAttribute("archive")));
+                }
+                if (uidl.hasAttribute("standby")) {
+                    obj.setAttribute("standby",
+                            uidl.getStringAttribute(escapeAttribute("standby")));
+                }
                 getElement().appendChild(obj);
 
             } else {
@@ -197,7 +191,123 @@ public class VEmbedded extends HTML implements Paintable {
         if (clearBrowserElement) {
             browserElement = null;
         }
+    }
+
+    /**
+     * Creates the Object and Embed tags for the Flash plugin so it works
+     * cross-browser
+     * 
+     * @param uidl
+     *            The UIDL
+     * @return Tags concatenated into a string
+     */
+    private String createFlashEmbed(UIDL uidl) {
+        addStyleName(CLASSNAME + "-flash");
+
+        /*
+         * To ensure cross-browser compatibility we are using the twice-cooked
+         * method to embed flash i.e. we add a OBJECT tag for IE ActiveX and
+         * inside it a EMBED for all other browsers.
+         */
+
+        StringBuilder html = new StringBuilder();
+
+        // Start the object tag
+        html.append("<object ");
+
+        /*
+         * Add classid required for ActiveX to recognize the flash. This is a
+         * predefined value which ActiveX recognizes and must be the given
+         * value. More info can be found on
+         * http://kb2.adobe.com/cps/415/tn_4150.html. Allow user to override
+         * this by setting his own classid.
+         */
+        if (uidl.hasAttribute("classid")) {
+            html.append("classid=\""
+                    + escapeAttribute(uidl.getStringAttribute("classid"))
+                    + "\" ");
+        } else {
+            html.append("classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" ");
+        }
+
+        /*
+         * Add codebase required for ActiveX and must be exactly this according
+         * to http://kb2.adobe.com/cps/415/tn_4150.html to work with the above
+         * given classid. Again, see more info on
+         * http://kb2.adobe.com/cps/415/tn_4150.html. Limiting Flash version to
+         * 6.0.0.0 and above. Allow user to override this by setting his own
+         * codebase
+         */
+        if (uidl.hasAttribute("codebase")) {
+            html.append("codebase=\""
+                    + escapeAttribute(uidl.getStringAttribute("codebase"))
+                    + "\" ");
+        } else {
+            html.append("codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\" ");
+        }
+
+        // Add width and height
+        html.append("width=\"" + width + "\" ");
+        html.append("height=\"" + height + "\" ");
+        html.append("type=\"application/x-shockwave-flash\" ");
+
+        // Codetype
+        if (uidl.hasAttribute("codetype")) {
+            html.append("codetype=\"" + uidl.getStringAttribute("codetype")
+                    + "\" ");
+        }
+
+        // Standby
+        if (uidl.hasAttribute("standby")) {
+            html.append("standby=\"" + uidl.getStringAttribute("standby")
+                    + "\" ");
+        }
+
+        // Archive
+        if (uidl.hasAttribute("archive")) {
+            html.append("archive=\"" + uidl.getStringAttribute("archive")
+                    + "\" ");
+        }
+
+        // End object tag
+        html.append(">");
+
+        // Ensure we have an movie parameter
+        Map<String, String> parameters = getParameters(uidl);
+        if (parameters.get("movie") == null) {
+            parameters.put("movie", getSrc(uidl, client));
+        }
+
+        // Add parameters to OBJECT
+        for (String name : parameters.keySet()) {
+            html.append("<param ");
+            html.append("name=\"" + escapeAttribute(name) + "\" ");
+            html.append("value=\"" + escapeAttribute(parameters.get(name))
+                    + "\" ");
+            html.append("/>");
+        }
+
+        // Build inner EMBED tag
+        html.append("<embed ");
+        html.append("src=\"" + getSrc(uidl, client) + "\" ");
+        html.append("width=\"" + width + "\" ");
+        html.append("height=\"" + height + "\" ");
+        html.append("type=\"application/x-shockwave-flash\" ");
+
+        // Add the parameters to the Embed
+        for (String name : parameters.keySet()) {
+            html.append(escapeAttribute(name));
+            html.append("=");
+            html.append("\"" + escapeAttribute(parameters.get(name)) + "\"");
+        }
+
+        // End embed tag
+        html.append("></embed>");
+
+        // End object tag
+        html.append("</object>");
 
+        return html.toString();
     }
 
     /**
index 586e04ed10b6495aed81a7851e8b99d89fb55496..692b8a4858b63387bbd0bd53327cbb809c3dd1c0 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
 @ITMillApache2LicenseForJavaFiles@
  */
 
@@ -21,6 +21,7 @@ import com.google.gwt.user.client.ui.Widget;
 import com.vaadin.terminal.gwt.client.ApplicationConnection;
 import com.vaadin.terminal.gwt.client.BrowserInfo;
 import com.vaadin.terminal.gwt.client.Container;
+import com.vaadin.terminal.gwt.client.Focusable;
 import com.vaadin.terminal.gwt.client.Paintable;
 import com.vaadin.terminal.gwt.client.RenderInformation;
 import com.vaadin.terminal.gwt.client.RenderSpace;
@@ -29,7 +30,7 @@ import com.vaadin.terminal.gwt.client.Util;
 import com.vaadin.terminal.gwt.client.ui.ShortcutActionHandler.ShortcutActionHandlerOwner;
 
 public class VPanel extends SimplePanel implements Container,
-        ShortcutActionHandlerOwner {
+        ShortcutActionHandlerOwner, Focusable {
 
     public static final String CLICK_EVENT_IDENTIFIER = "click";
     public static final String CLASSNAME = "v-panel";
@@ -103,7 +104,16 @@ public class VPanel extends SimplePanel implements Container,
         bottomDecoration.setClassName(CLASSNAME + "-deco");
 
         getElement().appendChild(captionWrap);
+
+        /*
+         * Make contentNode focusable only by using the setFocus() method. This
+         * behaviour can be changed by invoking setTabIndex() in the serverside
+         * implementation
+         */
+        contentNode.setTabIndex(-1);
+
         getElement().appendChild(contentNode);
+
         getElement().appendChild(bottomDecoration);
         setStyleName(CLASSNAME);
         DOM.sinkEvents(getElement(), Event.ONKEYDOWN);
@@ -117,6 +127,30 @@ public class VPanel extends SimplePanel implements Container,
         }, TouchStartEvent.getType());
     }
 
+    /**
+     * Sets the keyboard focus on the Panel
+     * 
+     * @param focus
+     *            Should the panel have focus or not.
+     */
+    public void setFocus(boolean focus) {
+        if (focus) {
+            getContainerElement().focus();
+        } else {
+            getContainerElement().blur();
+        }
+    }
+
+    /*
+     * (non-Javadoc)
+     * 
+     * @see com.vaadin.terminal.gwt.client.Focusable#focus()
+     */
+    public void focus() {
+        setFocus(true);
+
+    }
+
     @Override
     protected Element getContainerElement() {
         return contentNode;
@@ -236,6 +270,11 @@ public class VPanel extends SimplePanel implements Container,
         // scrollTop
         runHacks(false);
 
+        // And apply tab index
+        if (uidl.hasVariable("tabindex")) {
+            contentNode.setTabIndex(uidl.getIntVariable("tabindex"));
+        }
+
         rendering = false;
 
     }
index 49d18f0867a628eba527eadf5685ab77abf3eaac..edf4261988e0b352d996326e1301b74952a7f266 100644 (file)
@@ -145,12 +145,14 @@ public class VTextField extends TextBoxBase implements Paintable, Field,
 
         @Override
         public void run() {
-            updateCursorPosition();
-            boolean textChanged = communicateTextValueToServer();
-            if (textChanged) {
-                client.sendPendingVariableChanges();
+            if (isAttached()) {
+                updateCursorPosition();
+                boolean textChanged = communicateTextValueToServer();
+                if (textChanged) {
+                    client.sendPendingVariableChanges();
+                }
+                scheduled = false;
             }
-            scheduled = false;
         }
     };
     private boolean scheduled = false;
index ea43deba9d3cf6bb44287edc1d2048ccb4c69d72..5d7cc1894599762b83230e07455cf0638c74ba8c 100644 (file)
@@ -43,7 +43,7 @@ import com.vaadin.terminal.gwt.client.ui.ShortcutActionHandler.ShortcutActionHan
  *
  */
 public class VView extends SimplePanel implements Container, ResizeHandler,
-        Window.ClosingHandler, ShortcutActionHandlerOwner {
+        Window.ClosingHandler, ShortcutActionHandlerOwner, Focusable {
 
     private static final String CLASSNAME = "v-view";
 
@@ -110,6 +110,10 @@ public class VView extends SimplePanel implements Container, ResizeHandler,
     public VView() {
         super();
         setStyleName(CLASSNAME);
+
+        // Allow focusing the view by using the focus() method, the view
+        // should not be in the document focus flow
+        getElement().setTabIndex(-1);
     }
 
     /**
@@ -691,9 +695,9 @@ public class VView extends SimplePanel implements Container, ResizeHandler,
             DOM.setStyleAttribute(fElem, "position", "absolute");
             DOM.setStyleAttribute(fElem, "opacity", "0.1");
             DOM.appendChild(getElement(), fElem);
-            Util.focus(fElem);
+            fElem.focus();
         } else {
-            Util.focus(getElement());
+            getElement().focus();
         }
 
         parentFrame = getParentFrame();
@@ -703,4 +707,8 @@ public class VView extends SimplePanel implements Container, ResizeHandler,
         return actionHandler;
     }
 
+    public void focus() {
+        getElement().focus();       
+    }
+
 }
index 8e03ca89d70529d7c366cdeaebc184c38aefe703..395d6f6ea07fa2cc5acaca30edfaf741f250a823 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
 @ITMillApache2LicenseForJavaFiles@
  */
 
@@ -35,6 +35,7 @@ import com.vaadin.terminal.gwt.client.ApplicationConnection;
 import com.vaadin.terminal.gwt.client.BrowserInfo;
 import com.vaadin.terminal.gwt.client.Container;
 import com.vaadin.terminal.gwt.client.EventId;
+import com.vaadin.terminal.gwt.client.Focusable;
 import com.vaadin.terminal.gwt.client.Paintable;
 import com.vaadin.terminal.gwt.client.RenderSpace;
 import com.vaadin.terminal.gwt.client.UIDL;
@@ -50,7 +51,7 @@ import com.vaadin.terminal.gwt.client.ui.ShortcutActionHandler.ShortcutActionHan
  */
 public class VWindow extends VOverlay implements Container,
         ShortcutActionHandlerOwner, ScrollHandler, KeyDownHandler,
-        FocusHandler, BlurHandler, BeforeShortcutActionListener {
+        FocusHandler, BlurHandler, BeforeShortcutActionListener, Focusable {
 
     /**
      * Minimum allowed height of a window. This refers to the content area, not
@@ -1307,4 +1308,8 @@ public class VWindow extends VOverlay implements Container,
         // blur/focus )
     }
 
+    public void focus() {
+        contentPanel.focus();
+    }
+
 }
index 3b0239af7b167396e15ba131e952f0b452e65b97..c7a1583d28c0e2cfe7efb042159dafaf6dfc0c4a 100644 (file)
@@ -122,8 +122,23 @@ public class AbsoluteLayout extends AbstractLayout implements
      *            The css position string
      */
     public void addComponent(Component c, String cssPosition) {
-        addComponent(c);
-        getPosition(c).setCSSString(cssPosition);
+        /*
+         * Create position instance and add it to componentToCoordinates map. We
+         * need to do this before we call addComponent so the attachListeners
+         * can access this position. #6368
+         */
+        ComponentPosition position = new ComponentPosition();
+        position.setCSSString(cssPosition);
+        componentToCoordinates.put(c, position);
+
+        try {
+            addComponent(c);
+
+        } catch (IllegalArgumentException e) {
+            // Remove component coordinates if adding fails
+            componentToCoordinates.remove(c);
+            throw e;
+        }
     }
 
     /**
index 85d67ae105dcc76f2256962a33a132a956215239..55991eafb28d073565d959577e653d072ed8275e 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
 @ITMillApache2LicenseForJavaFiles@
  */
 
@@ -205,8 +205,9 @@ public class Embedded extends AbstractComponent {
     }
 
     /**
-     * Gets the codebase, the root-path used to access resources with relative
-     * paths.
+     * This attribute specifies the base path used to resolve relative URIs
+     * specified by the classid, data, and archive attributes. When absent, its
+     * default value is the base URI of the current document.
      * 
      * @return the code base.
      */
@@ -233,20 +234,22 @@ public class Embedded extends AbstractComponent {
     }
 
     /**
-     * Gets the standby text displayed when the object is loading.
+     * This attribute specifies a message that a user agent may render while
+     * loading the object's implementation and data.
      * 
-     * @return the standby text.
+     * @return The text displayed when loading
      */
     public String getStandby() {
         return standby;
     }
 
     /**
-     * Sets the codebase, the root-path used to access resources with relative
-     * paths.
+     * This attribute specifies the base path used to resolve relative URIs
+     * specified by the classid, data, and archive attributes. When absent, its
+     * default value is the base URI of the current document.
      * 
      * @param codebase
-     *            the codebase to set.
+     *            The base path
      */
     public void setCodebase(String codebase) {
         if (codebase != this.codebase
@@ -257,7 +260,11 @@ public class Embedded extends AbstractComponent {
     }
 
     /**
-     * Sets the codetype, the MIME-Type of the code.
+     * This attribute specifies the content type of data expected when
+     * downloading the object specified by classid. This attribute is optional
+     * but recommended when classid is specified since it allows the user agent
+     * to avoid loading information for unsupported content types. When absent,
+     * it defaults to the value of the type attribute.
      * 
      * @param codetype
      *            the codetype to set.
@@ -296,10 +303,11 @@ public class Embedded extends AbstractComponent {
     }
 
     /**
-     * Sets the standby, the text to display while loading the object.
+     * This attribute specifies a message that a user agent may render while
+     * loading the object's implementation and data.
      * 
      * @param standby
-     *            the standby to set.
+     *            The text to display while loading
      */
     public void setStandby(String standby) {
         if (standby != this.standby
@@ -310,16 +318,18 @@ public class Embedded extends AbstractComponent {
     }
 
     /**
-     * Gets the classId attribute.
+     * This attribute may be used to specify the location of an object's
+     * implementation via a URI.
      * 
-     * @return the class id.
+     * @return the classid.
      */
     public String getClassId() {
         return classId;
     }
 
     /**
-     * Sets the classId attribute.
+     * This attribute may be used to specify the location of an object's
+     * implementation via a URI.
      * 
      * @param classId
      *            the classId to set.
@@ -410,19 +420,31 @@ public class Embedded extends AbstractComponent {
     }
 
     /**
-     * Gets the archive attribute.
+     * This attribute may be used to specify a space-separated list of URIs for
+     * archives containing resources relevant to the object, which may include
+     * the resources specified by the classid and data attributes. Preloading
+     * archives will generally result in reduced load times for objects.
+     * Archives specified as relative URIs should be interpreted relative to the
+     * codebase attribute.
      * 
-     * @return the archive attribute.
+     * @return Space-separated list of URIs with resources relevant to the
+     *         object
      */
     public String getArchive() {
         return archive;
     }
 
     /**
-     * Sets the archive attribute.
+     * This attribute may be used to specify a space-separated list of URIs for
+     * archives containing resources relevant to the object, which may include
+     * the resources specified by the classid and data attributes. Preloading
+     * archives will generally result in reduced load times for objects.
+     * Archives specified as relative URIs should be interpreted relative to the
+     * codebase attribute.
      * 
      * @param archive
-     *            the archive string to set.
+     *            Space-separated list of URIs with resources relevant to the
+     *            object
      */
     public void setArchive(String archive) {
         if (archive != this.archive
@@ -458,6 +480,12 @@ public class Embedded extends AbstractComponent {
         removeListener(CLICK_EVENT, ClickEvent.class, listener);
     }
 
+    /*
+     * (non-Javadoc)
+     * 
+     * @see com.vaadin.ui.AbstractComponent#changeVariables(java.lang.Object,
+     * java.util.Map)
+     */
     @SuppressWarnings("unchecked")
     @Override
     public void changeVariables(Object source, Map<String, Object> variables) {
@@ -468,6 +496,11 @@ public class Embedded extends AbstractComponent {
 
     }
 
+    /**
+     * Notifies click-listeners that a mouse click event has occurred.
+     * 
+     * @param parameters
+     */
     private void fireClick(Map<String, Object> parameters) {
         MouseEventDetails mouseDetails = MouseEventDetails
                 .deSerialize((String) parameters.get("mouseDetails"));
index 4d00cddfddb4e02f53059e86f45e12aa718d47b2..7ffa11a325415dbae576ee4dd1af00b9928fff5c 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
 @ITMillApache2LicenseForJavaFiles@
  */
 
@@ -17,6 +17,7 @@ import com.vaadin.terminal.PaintTarget;
 import com.vaadin.terminal.Scrollable;
 import com.vaadin.terminal.gwt.client.MouseEventDetails;
 import com.vaadin.terminal.gwt.client.ui.VPanel;
+import com.vaadin.ui.Component.Focusable;
 import com.vaadin.ui.themes.Reindeer;
 import com.vaadin.ui.themes.Runo;
 
@@ -32,7 +33,7 @@ import com.vaadin.ui.themes.Runo;
 @ClientWidget(VPanel.class)
 public class Panel extends AbstractComponentContainer implements Scrollable,
         ComponentContainer.ComponentAttachListener,
-        ComponentContainer.ComponentDetachListener, Action.Notifier {
+        ComponentContainer.ComponentDetachListener, Action.Notifier, Focusable {
 
     private static final String CLICK_EVENT = VPanel.CLICK_EVENT_IDENTIFIER;
 
@@ -74,6 +75,13 @@ public class Panel extends AbstractComponentContainer implements Scrollable,
      */
     protected ActionManager actionManager;
 
+    /**
+     * By default the Panel is not in the normal document focus flow and can
+     * only be focused by using the focus()-method. Change this to 0 if you want
+     * to have the Panel in the normal focus flow.
+     */
+    private int tabIndex = -1;
+
     /**
      * Creates a new empty panel. A VerticalLayout is used as content.
      */
@@ -234,6 +242,8 @@ public class Panel extends AbstractComponentContainer implements Scrollable,
     public void paintContent(PaintTarget target) throws PaintException {
         content.paint(target);
 
+        target.addVariable(this, "tabindex", getTabIndex());
+
         if (isScrollable()) {
             target.addVariable(this, "scrollLeft", getScrollLeft());
             target.addVariable(this, "scrollTop", getScrollTop());
@@ -582,4 +592,29 @@ public class Panel extends AbstractComponentContainer implements Scrollable,
         fireEvent(new ClickEvent(this, mouseDetails));
     }
 
+    
+    /**
+     * {@inheritDoc}
+     */
+    public int getTabIndex() {
+        return tabIndex;
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    public void setTabIndex(int tabIndex) {
+        this.tabIndex = tabIndex;
+        requestRepaint();
+    }
+
+    /**
+     * Moves keyboard focus to the component. {@see Focusable#focus()}
+     * 
+     */
+    @Override
+    public void focus() {
+        super.focus();
+    }
+
 }
index b31255cb26a59456cbe1edff231715b3bd13c321..5c2769c7567dac05874ed1b1726b5020f06e47fe 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
 @ITMillApache2LicenseForJavaFiles@
  */
 
@@ -1120,6 +1120,10 @@ public class Window extends Panel implements URIHandler, ParameterHandler,
         if (parent == null) {
             fireClose();
         } else {
+
+            // focus is restored to the parent window
+            parent.focus();
+            
             // subwindow is removed from parent
             parent.removeWindow(this);
         }
@@ -2089,7 +2093,7 @@ public class Window extends Panel implements URIHandler, ParameterHandler,
      * <code>
      *  // within the window using helper
      *  subWindow.setCloseShortcut(KeyCode.ESCAPE, null);
-     *  
+     * 
      *  // or globally
      *  getWindow().addAction(new Window.CloseShortcut(subWindow, KeyCode.ESCAPE));
      * </code>
@@ -2180,4 +2184,24 @@ public class Window extends Panel implements URIHandler, ParameterHandler,
         removeListener(BlurEvent.EVENT_ID, BlurEvent.class, listener);
     }
 
+    /**
+     * {@inheritDoc}
+     * 
+     * If the window is a sub-window focusing will cause the sub-window to be
+     * brought on top of other sub-windows on gain keyboard focus.
+     */
+    @Override
+    public void focus() {
+        if (getParent() != null) {
+            /*
+             * When focusing a sub-window it basically means it should be
+             * brought to the front. Instead of just moving the keyboard focus
+             * we focus the window and bring it top-most.
+             */
+            bringToFront();
+        } else {
+            super.focus();
+        }
+    }
+
 }
index 49925925bc9502fdc5ccf088bad595ceab20df79..06e414b902bcb7a34f2fc42be105da73521fcff8 100644 (file)
@@ -1,12 +1,12 @@
 ; Location where vaadin-testbench jar can be found\r
-com.vaadin.testbench.lib.dir=<enter location of testbench here>\r
+com.vaadin.testbench.lib.dir=/home/hesara/dev/software/testbench/vaadin-testbench-2.2.0.development.201103151333\r
 \r
 ; Deployment url to use for testing. Context path must be /  \r
-com.vaadin.testbench.deployment.url=http://<enter your ip here>:8888/\r
+com.vaadin.testbench.deployment.url=http://192.168.2.215:8888/\r
 \r
 ; Location of the screenshot directory. \r
 ; This is the directory that contains the "references" directory\r
-com.vaadin.testbench.screenshot.directory=<enter the full path to the screenshots directory, parent of "references" directory>\r
+com.vaadin.testbench.screenshot.directory=/home/hesara/dev/workspaces/helios_sr1_jee_vaadin/v66_screenshots\r
 \r
 ; Run the whole test even if \r
 com.vaadin.testbench.screenshot.softfail=true\r
@@ -23,7 +23,7 @@ com.vaadin.testbench.screenshot.cursor=true
 ; Uncomment to limit to certain browsers or override in launch configuration\r
 ; browsers=winxp-opera10\r
 \r
-; Claim that the server has started succesfully. Needed for the tests to run\r
+; Claim that the server has started successfully. Needed for the tests to run\r
 server.start.succeeded=1\r
 \r
 test-output-dir=../build/test-output
\ No newline at end of file
index 3508f8405978de4f2e83b0a5305bbb1dded3f7a3..9aef3f527733d51a69aea011025d8245c59b80e0 100644 (file)
@@ -20,9 +20,14 @@ import com.vaadin.ui.Component;
 import com.vaadin.ui.ComponentContainer;
 import com.vaadin.ui.CustomComponent;
 import com.vaadin.ui.DragAndDropWrapper;
+import com.vaadin.ui.HorizontalSplitPanel;
 import com.vaadin.ui.LoginForm;
 import com.vaadin.ui.PopupView;
+import com.vaadin.ui.SplitPanel;
+import com.vaadin.ui.VerticalSplitPanel;
+import com.vaadin.ui.Window;
 
+@SuppressWarnings("deprecation")
 public class VaadinClasses {
 
     public static void main(String[] args) {
@@ -68,6 +73,16 @@ public class VaadinClasses {
         return classes;
     }
 
+    public static List<Class<? extends ComponentContainer>> getComponentContainersSupportingUnlimitedNumberOfComponents() {
+        List<Class<? extends ComponentContainer>> classes = getComponentContainersSupportingAddRemoveComponent();
+        classes.remove(SplitPanel.class);
+        classes.remove(VerticalSplitPanel.class);
+        classes.remove(HorizontalSplitPanel.class);
+        classes.remove(Window.class);
+
+        return classes;
+    }
+
     @SuppressWarnings({ "unchecked", "rawtypes" })
     public static List<Class<? extends AbstractComponentTest<?>>> getBasicComponentTests() {
         try {
diff --git a/tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.html b/tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.html
new file mode 100644 (file)
index 0000000..10dd21d
--- /dev/null
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>New Test</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">New Test</td></tr>
+</thead><tbody>
+<tr>
+       <td>open</td>
+       <td>/run/com.vaadin.tests.components.LayoutAttachListenerInfo?restartApplication</td>
+       <td></td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>Top50pxLeft50px</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::Root/VNotification[0]/HTML[0]/domChild[0]</td>
+       <td>351,23</td>
+</tr>
+<tr>
+       <td>pause</td>
+       <td>1000</td>
+       <td></td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VOptionGroup[0]/domChild[1]/domChild[0]</td>
+       <td>8,7</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>AttachedToIndex0</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::Root/VNotification[0]/HTML[0]/domChild[0]</td>
+       <td>351,23</td>
+</tr>
+<tr>
+       <td>pause</td>
+       <td>1000</td>
+       <td></td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VOptionGroup[0]/domChild[2]/domChild[0]</td>
+       <td>3,5</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td></td>
+</tr>
+<tr>
+       <td>pause</td>
+       <td>1000</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>AttachedTo23</td>
+</tr>
+</tbody></table>
+</body>
+</html>
diff --git a/tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.java b/tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.java
new file mode 100644 (file)
index 0000000..7ed4476
--- /dev/null
@@ -0,0 +1,142 @@
+package com.vaadin.tests.components;
+
+import java.util.Arrays;
+
+import com.vaadin.data.Property.ValueChangeEvent;
+import com.vaadin.data.Property.ValueChangeListener;
+import com.vaadin.ui.AbsoluteLayout;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.Button.ClickEvent;
+import com.vaadin.ui.ComponentContainer;
+import com.vaadin.ui.ComponentContainer.ComponentAttachEvent;
+import com.vaadin.ui.GridLayout;
+import com.vaadin.ui.Label;
+import com.vaadin.ui.OptionGroup;
+import com.vaadin.ui.VerticalLayout;
+import com.vaadin.ui.Window.Notification;
+
+
+public class LayoutAttachListenerInfo extends TestBase {
+
+    private VerticalLayout content = new VerticalLayout();
+
+    @Override
+    protected void setup() {
+
+        OptionGroup layouts = new OptionGroup("Layouts", Arrays.asList(
+                "AbsoluteLayout", "OrderedLayout", "GridLayout"));
+        layouts.select("AbsoluteLayout");
+        layouts.setImmediate(true);
+        layouts.addListener(new ValueChangeListener() {
+            public void valueChange(ValueChangeEvent event) {
+                if (event.getProperty().getValue().equals("AbsoluteLayout")) {
+                    testAbsoluteLayout();
+                } else if (event.getProperty().getValue()
+                        .equals("OrderedLayout")) {
+                    testOrderedLayout();
+                } else if (event.getProperty().getValue().equals("GridLayout")) {
+                    testGridLayout();
+                }
+            }
+        });
+
+        addComponent(layouts);
+        addComponent(content);
+
+        testAbsoluteLayout();
+    }
+
+    @Override
+    protected String getDescription() {
+        return "When pressing the attach button a Label with the value \"X\" "
+                + "should get added to the selected layout and a notification of the position"
+                + " of the component should be visible";
+    }
+
+    @Override
+    protected Integer getTicketNumber() {
+        return 6368;
+    }
+
+    private void testAbsoluteLayout() {
+        content.removeAllComponents();
+
+        final AbsoluteLayout a = new AbsoluteLayout();
+        a.setWidth("300px");
+        a.setHeight("300px");
+        a.addListener(new ComponentContainer.ComponentAttachListener() {
+            public void componentAttachedToContainer(ComponentAttachEvent event) {
+                AbsoluteLayout layout = (AbsoluteLayout) event.getContainer();
+                AbsoluteLayout.ComponentPosition position = layout
+                        .getPosition(event.getAttachedComponent());
+
+                getMainWindow().showNotification(
+                        "Attached to " + position.getCSSString(),
+                        Notification.TYPE_ERROR_MESSAGE);
+            }
+        });
+        content.addComponent(a);
+
+        content.addComponent(new Button("Attach label to layout",
+                new Button.ClickListener() {
+                    public void buttonClick(ClickEvent event) {
+                        a.addComponent(new Label("X"), "top:50px;left:50px");
+                    }
+                }));
+    }
+
+    private void testOrderedLayout(){
+        content.removeAllComponents();
+        
+        final VerticalLayout v = new VerticalLayout();
+        v.setWidth("300px");
+        v.setHeight("300px");
+        v.addListener(new ComponentContainer.ComponentAttachListener() {
+            public void componentAttachedToContainer(ComponentAttachEvent event) {
+                VerticalLayout layout = (VerticalLayout) event.getContainer();
+                getMainWindow().showNotification(
+                        "Attached to index "
+                                + layout.getComponentIndex(event
+                                        .getAttachedComponent()),
+                        Notification.TYPE_ERROR_MESSAGE);
+            }
+        });
+        content.addComponent(v);
+
+        content.addComponent(new Button("Attach label to layout",
+                new Button.ClickListener() {
+                    public void buttonClick(ClickEvent event) {
+                        v.addComponent(new Label("X"));
+
+                    }
+                }));
+    }
+
+    private void testGridLayout() {
+        content.removeAllComponents();
+
+        final GridLayout g = new GridLayout(4, 4);
+        g.setWidth("300px");
+        g.setHeight("300px");
+        g.addListener(new ComponentContainer.ComponentAttachListener() {
+            public void componentAttachedToContainer(ComponentAttachEvent event) {
+                GridLayout layout = (GridLayout) event.getContainer();
+                GridLayout.Area area = layout.getComponentArea(event
+                        .getAttachedComponent());
+                getMainWindow().showNotification(
+                        "Attached to " + area.getColumn1() + ","
+                                + area.getRow1(),
+                        Notification.TYPE_ERROR_MESSAGE);
+            }
+        });
+
+        content.addComponent(g);
+
+        content.addComponent(new Button("Attach label to layout",
+                new Button.ClickListener() {
+                    public void buttonClick(ClickEvent event) {
+                        g.addComponent(new Label("X"), 2, 3);
+                    }
+                }));
+    }
+}
diff --git a/tests/src/com/vaadin/tests/components/caption/IconsInCaption.java b/tests/src/com/vaadin/tests/components/caption/IconsInCaption.java
new file mode 100644 (file)
index 0000000..926088f
--- /dev/null
@@ -0,0 +1,136 @@
+package com.vaadin.tests.components.caption;
+
+import com.vaadin.data.Property.ValueChangeEvent;
+import com.vaadin.data.Property.ValueChangeListener;
+import com.vaadin.terminal.ThemeResource;
+import com.vaadin.tests.VaadinClasses;
+import com.vaadin.tests.components.TestBase;
+import com.vaadin.tests.util.Log;
+import com.vaadin.ui.ComboBox;
+import com.vaadin.ui.ComponentContainer;
+import com.vaadin.ui.Embedded;
+import com.vaadin.ui.Label;
+import com.vaadin.ui.VerticalLayout;
+
+public class IconsInCaption extends TestBase {
+
+    private static final String TYPE_EMBEDDED = "Embedded";
+    private static final String TYPE_CAPTION = "In caption";
+
+    private static final String[] icons = new String[] { "arrow-down.png",
+            "arrow-left.png", "arrow-right.png", "arrow-up.png",
+            "attention.png", "calendar.png", "cancel.png", "document.png",
+            "document-add.png", "document-delete.png", "document-doc.png",
+            "document-image.png", "document-pdf.png", "document-ppt.png",
+            "document-txt.png", "document-web.png", "document-xsl.png",
+            "email.png", "email-reply.png", "email-send.png", "folder.png",
+            "folder-add.png", "folder-delete.png", "globe.png", "help.png",
+            "lock.png", "note.png", "ok.png", "reload.png", "settings.png",
+            "trash.png", "trash-full.png", "user.png", "users.png" };
+
+    private static final String[] sizes = new String[] { "16", "32", "64" };
+
+    private ComponentContainer container = new VerticalLayout();
+
+    private Log log = new Log(5);
+
+    private ComboBox containerSelect;
+
+    private ComboBox iconTypeSelect;
+
+    @Override
+    protected void setup() {
+        iconTypeSelect = new ComboBox("Icon container");
+        iconTypeSelect.addItem(TYPE_EMBEDDED);
+        iconTypeSelect.addItem(TYPE_CAPTION);
+        iconTypeSelect.setImmediate(true);
+        iconTypeSelect.setNullSelectionAllowed(false);
+        iconTypeSelect.addListener(new ValueChangeListener() {
+            public void valueChange(ValueChangeEvent event) {
+                updateContainer();
+            }
+        });
+
+        containerSelect = new ComboBox("Container");
+        for (Class<? extends ComponentContainer> cc : VaadinClasses
+                .getComponentContainersSupportingUnlimitedNumberOfComponents()) {
+            containerSelect.addItem(cc);
+        }
+        containerSelect.setImmediate(true);
+        containerSelect.addListener(new ValueChangeListener() {
+
+            public void valueChange(ValueChangeEvent event) {
+                updateContainer();
+
+            }
+        });
+
+        addComponent(log);
+        addComponent(iconTypeSelect);
+        addComponent(containerSelect);
+        addComponent(container);
+
+        iconTypeSelect.setValue(TYPE_CAPTION);
+        containerSelect.setValue(VerticalLayout.class);
+    }
+
+    protected void updateContainer() {
+        Class<? extends ComponentContainer> containerClass = (Class<? extends ComponentContainer>) containerSelect
+                .getValue();
+        if (containerClass == null) {
+            return;
+        }
+
+        Object iconType = iconTypeSelect.getValue();
+        try {
+            ComponentContainer newContainer = createContainer(containerClass,
+                    iconType);
+            replaceComponent(container, newContainer);
+            container = newContainer;
+            log.log("Container changed to " + containerClass.getName() + "/"
+                    + iconType);
+        } catch (Exception e) {
+            log.log("Create container failed for " + containerClass.getName()
+                    + ": " + e.getMessage());
+            e.printStackTrace();
+        }
+
+    }
+
+    private static ComponentContainer createContainer(
+            Class<? extends ComponentContainer> containerClass, Object iconType)
+            throws InstantiationException, IllegalAccessException {
+        ComponentContainer container = containerClass.newInstance();
+        for (String size : sizes) {
+            Label title = new Label("<h3>" + size + "x" + size + "</h3>",
+                    Label.CONTENT_XHTML);
+            container.addComponent(title);
+            for (String icon : icons) {
+                ThemeResource res = new ThemeResource("../runo/icons/" + size
+                        + "/" + icon);
+                if (TYPE_CAPTION.equals(iconType)) {
+                    Label name = new Label();
+                    name.setCaption(icon);
+                    name.setIcon(res);
+                    container.addComponent(name);
+                } else if (TYPE_EMBEDDED.equals(iconType)) {
+                    Embedded e = new Embedded(icon, res);
+                    container.addComponent(e);
+                }
+            }
+        }
+
+        return container;
+    }
+
+    @Override
+    protected String getDescription() {
+        return "Test for comparing rendering speed of icons in a caption and in an Embedded component in different component containers.";
+    }
+
+    @Override
+    protected Integer getTicketNumber() {
+        return 6578;
+    }
+
+}
diff --git a/tests/src/com/vaadin/tests/components/embedded/FlashIsVisible.html b/tests/src/com/vaadin/tests/components/embedded/FlashIsVisible.html
new file mode 100644 (file)
index 0000000..d3debf3
--- /dev/null
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>New Test</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">New Test</td></tr>
+</thead><tbody>
+<tr>
+       <td>open</td>
+       <td>/run/com.vaadin.tests.components.embedded.FlashIsVisible</td>
+       <td></td>
+</tr>
+<!--Allow the flash plugin to load before taking the screenshot-->
+<tr>
+       <td>pause</td>
+       <td>5000</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
diff --git a/tests/src/com/vaadin/tests/components/embedded/FlashIsVisible.java b/tests/src/com/vaadin/tests/components/embedded/FlashIsVisible.java
new file mode 100644 (file)
index 0000000..5d626cf
--- /dev/null
@@ -0,0 +1,31 @@
+package com.vaadin.tests.components.embedded;
+
+import com.vaadin.terminal.ExternalResource;
+import com.vaadin.tests.components.TestBase;
+import com.vaadin.ui.Embedded;
+
+public class FlashIsVisible extends TestBase {
+
+    @Override
+    protected void setup() {
+        Embedded player = new Embedded();
+        player.setType(Embedded.TYPE_OBJECT);
+        player.setMimeType("application/x-shockwave-flash");
+        player.setWidth("400px");
+        player.setHeight("300px");
+        String url = "http://www.youtube.com/v/qQ9N742QB4g&autoplay=0";
+        player.setSource(new ExternalResource(url));
+        addComponent(player);
+    }
+
+    @Override
+    protected String getDescription() {
+        return "Flash plugin should load and be visible on all browsers";
+    }
+
+    @Override
+    protected Integer getTicketNumber() {
+        return 6501;
+    }
+
+}
index 706fbca002058a8fdcc3bd3a06d829e7a1138e28..3ce0986f71ed5ee49d359fbda729c10a6cbb38a3 100644 (file)
        <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_StestComponent#item0</td>\r
        <td>51,10</td>\r
 </tr>\r
+<tr>\r
+       <td>pause</td>\r
+       <td>1000</td>\r
+       <td></td>\r
+</tr>\r
 <tr>\r
        <td>screenCapture</td>\r
        <td></td>\r
diff --git a/tests/src/com/vaadin/tests/components/menubar/MenuBarResize.html b/tests/src/com/vaadin/tests/components/menubar/MenuBarResize.html
new file mode 100644 (file)
index 0000000..9700632
--- /dev/null
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>New Test</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">New Test</td></tr>
+</thead><tbody>
+<tr>
+       <td>open</td>
+       <td>/run/com.vaadin.tests.components.menubar.MenuBarTest?restartApplication</td>
+       <td></td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_Smenu#item0</td>
+       <td>26,7</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[0]/VMenuBar[0]#item2</td>
+       <td>71,9</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[1]/VMenuBar[0]#item0</td>
+       <td>34,2</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[2]/VMenuBar[0]#item2</td>
+       <td>32,5</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_Smenu#item1</td>
+       <td>17,5</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[0]/VMenuBar[0]#item2</td>
+       <td>36,1</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[1]/VMenuBar[0]#item0</td>
+       <td>22,5</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[2]/VMenuBar[0]#item6</td>
+       <td>48,15</td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>menubar-100pct-inside-500px</td>
+</tr>
+<tr>
+       <td>open</td>
+       <td>/run/com.vaadin.tests.components.menubar.MenuBarTest</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>menubar-100pct-inside-500px-after-refresh</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_Smenu#item1</td>
+       <td>20,0</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[0]/VMenuBar[0]#item2</td>
+       <td>72,3</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[1]/VMenuBar[0]#item0</td>
+       <td>4,8</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[2]/VMenuBar[0]#item10</td>
+       <td>26,9</td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>menubar-100pct-inside-900px</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_Smenu#item0</td>
+       <td>19,3</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[0]/VMenuBar[0]#item2</td>
+       <td>66,6</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[1]/VMenuBar[0]#item0</td>
+       <td>6,2</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[2]/VMenuBar[0]#item10</td>
+       <td>43,3</td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>menubar-900px-inside-900px</td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
index 3f0b111419338c5b198b4ef62e991f3490f6f734..d5328b25d34a6afee9d0a44b36bca0681e2c9876 100644 (file)
        <td>/run/com.vaadin.tests.components.table.HeaderClick?restartApplication</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
 <tr>
        <td>mouseClick</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[1]</td>
        <td>37,11</td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[1]/domChild[1]</td>
        <td>36,9</td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[2]/domChild[1]</td>
        <td>8,11</td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[1]</td>
        <td>31,9</td>
 </tr>
-<tr>
-       <td>pause</td>
-       <td>500</td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[1]/domChild[1]</td>
        <td>16,10</td>
 </tr>
-<tr>
-       <td>pause</td>
-       <td>500</td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[2]/domChild[1]</td>
        <td>16,10</td>
 </tr>
-<tr>
-       <td>pause</td>
-       <td>500</td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[1]</td>
        <td>64,10</td>
 </tr>
-<tr>
-       <td>pause</td>
-       <td>500</td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[1]/domChild[1]</td>
        <td>48,10</td>
 </tr>
-<tr>
-       <td>pause</td>
-       <td>500</td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[2]/domChild[1]</td>
        <td>30,11</td>
 </tr>
-<tr>
-       <td>pause</td>
-       <td>500</td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[1]</td>
        <td>48,11</td>
 </tr>
-<tr>
-       <td>pause</td>
-       <td>500</td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[1]/domChild[1]</td>
        <td>71,10</td>
 </tr>
-<tr>
-       <td>pause</td>
-       <td>500</td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VScrollTable[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[2]/domChild[1]</td>
        <td>39,5</td>
 </tr>
-<tr>
-       <td>pause</td>
-       <td>500</td>
-       <td></td>
-</tr>
 <tr>
        <td>assertValue</td>
        <td>vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0]</td>
diff --git a/tests/src/com/vaadin/tests/components/textfield/TextChangeTimeoutAfterDetach.html b/tests/src/com/vaadin/tests/components/textfield/TextChangeTimeoutAfterDetach.html
new file mode 100644 (file)
index 0000000..544cea9
--- /dev/null
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>New Test</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">New Test</td></tr>
+</thead><tbody>
+<tr>
+       <td>open</td>
+       <td>/run/com.vaadin.tests.components.textfield.TextChangeTimeoutAfterDetach?restartApplication</td>
+       <td></td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentstextfieldTextChangeTimeoutAfterDetach::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VTextField[0]</td>
+       <td>119,12</td>
+</tr>
+<tr>
+       <td>enterCharacter</td>
+       <td>vaadin=runcomvaadintestscomponentstextfieldTextChangeTimeoutAfterDetach::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VTextField[0]</td>
+       <td>aaaa</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestscomponentstextfieldTextChangeTimeoutAfterDetach::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td></td>
+</tr>
+<!--Wait for 3 seconds so the timeout occurs-->
+<tr>
+       <td>pause</td>
+       <td>3000</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
diff --git a/tests/src/com/vaadin/tests/components/textfield/TextChangeTimeoutAfterDetach.java b/tests/src/com/vaadin/tests/components/textfield/TextChangeTimeoutAfterDetach.java
new file mode 100644 (file)
index 0000000..d1f856f
--- /dev/null
@@ -0,0 +1,48 @@
+package com.vaadin.tests.components.textfield;
+
+import com.vaadin.event.FieldEvents.TextChangeEvent;
+import com.vaadin.event.FieldEvents.TextChangeListener;
+import com.vaadin.tests.components.TestBase;
+import com.vaadin.ui.AbstractTextField.TextChangeEventMode;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.Button.ClickEvent;
+import com.vaadin.ui.Label;
+import com.vaadin.ui.TextField;
+
+public class TextChangeTimeoutAfterDetach extends TestBase {
+
+    @Override
+    protected void setup() {
+        final TextField field = new TextField();
+        field.setImmediate(false);
+        field.setTextChangeTimeout(2000);
+        field.setTextChangeEventMode(TextChangeEventMode.TIMEOUT);
+        field.addListener(new TextChangeListener() {
+            public void textChange(TextChangeEvent event) {
+                // Need to add a listener for events to occur
+            }
+        });
+        addComponent(field);
+        
+        Button detachBtn = new Button("detach field",
+                new Button.ClickListener() {
+            public void buttonClick(ClickEvent event) {
+                        removeComponent(field);
+                        getLayout().addComponentAsFirst(
+                                new Label("Field detached!"));
+            }
+        });
+        addComponent(detachBtn);
+    }
+
+    @Override
+    protected String getDescription() {
+        return "The textfield has a TextChangeTimout of 1 second. Edit the field and immidietly detach the field and you will cause an \"Out Of Sync\" error.";
+    }
+
+    @Override
+    protected Integer getTicketNumber() {
+        return 6507;
+    }
+
+}
index 35c813293f63e162d6691b1c8508977a594cf5a6..ff6e76e480213716d88244cd798b6572fdfd4208 100644 (file)
@@ -16,7 +16,6 @@ import com.vaadin.ui.HorizontalLayout;
 import com.vaadin.ui.Label;\r
 import com.vaadin.ui.Layout;\r
 import com.vaadin.ui.Link;\r
-import com.vaadin.ui.NativeSelect;\r
 import com.vaadin.ui.Select;\r
 import com.vaadin.ui.TabSheet;\r
 import com.vaadin.ui.Table;\r
@@ -490,7 +489,7 @@ public class HorizontalLayoutTests extends AbstractLayoutTests {
         components[3] = getTestTabsheet();\r
         components[3].setIcon(new ThemeResource(LOCK_16_PNG));\r
 \r
-        AbstractField[] fields = new AbstractField[6];\r
+        AbstractField[] fields = new AbstractField[5];\r
         fields[0] = new TextField();\r
         fields[0].setRequired(true);\r
         fields[0].setValidationVisible(true);\r
@@ -512,14 +511,6 @@ public class HorizontalLayoutTests extends AbstractLayoutTests {
         fields[4]\r
                 .setComponentError(new UserError("component error, user error"));\r
 \r
-        fields[5] = new NativeSelect();\r
-        fields[5].setRequired(true);\r
-        fields[5].setValidationVisible(true);\r
-        fields[5].setRequiredError("required error");\r
-        fields[5]\r
-                .setComponentError(new UserError("component error, user error"));\r
-        fields[5].setIcon(new ThemeResource(CALENDAR_32_PNG));\r
-\r
         for (int i = 0; i < components.length; i++) {\r
             components[i].setComponentError(new UserError(\r
                     "component error, user error"));\r
index 807984be26af5d5711ddc08955e9b9c4b2e3afea..b0e2444986ee358d024778491705b8c7173b4ee6 100644 (file)
        <td>/run/com.vaadin.tests.layouts.layouttester.LayoutTesterApplication</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>1</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>2</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>3</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>4</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>5</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>6</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>7</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>8</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>9</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>10</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>11</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>12</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>13</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>14</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>15</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>16</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>17</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>18</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>19</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>20</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>21</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>22</td>
 </tr>
 <tr>
        <td>click</td>
        <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>select</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VNativeSelect[0]/domChild[0]</td>
-       <td>label=class com.vaadin.ui.HorizontalLayout</td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
-<tr>
-       <td>screenCapture</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
-       <td></td>
-</tr>
-<tr>
-       <td>waitForVaadin</td>
-       <td></td>
-       <td></td>
-</tr>
-<tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
-</tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>23</td>
 </tr>
 <tr>
-       <td>select</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VNativeSelect[0]/domChild[0]</td>
-       <td>label=class com.vaadin.ui.GridLayout</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>24</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>25</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>26</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>27</td>
 </tr>
 <tr>
        <td>click</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>28</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
+       <td>select</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VNativeSelect[0]/domChild[0]</td>
+       <td>label=class com.vaadin.ui.HorizontalLayout</td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>29</td>
 </tr>
 <tr>
        <td>click</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
+       <td>screenCapture</td>
        <td></td>
+       <td>30</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
        <td></td>
 </tr>
+<!-- Only for IE6 so it has time to load images and adjust -->
 <tr>
        <td>pause</td>
-       <td>1000</td>
+       <td>2000</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>31</td>
 </tr>
 <tr>
        <td>click</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>32</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>33</td>
 </tr>
 <tr>
        <td>click</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>34</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>35</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>36</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>37</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>38</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>39</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>40</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>41</td>
 </tr>
 <tr>
        <td>click</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>42</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>43</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>44</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>45</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>46</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>47</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>48</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>49</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>50</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>51</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>52</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>53</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>54</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>55</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>56</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
-       <td></td>
+       <td>select</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VNativeSelect[0]/domChild[0]</td>
+       <td>label=class com.vaadin.ui.GridLayout</td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>57</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>58</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>59</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>60</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>61</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>62</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>63</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[5]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>64</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>65</td>
 </tr>
 <tr>
        <td>click</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>66</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>67</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>68</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>69</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>70</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>71</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>72</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
+       <td>73</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
        <td></td>
+       <td>74</td>
 </tr>
 <tr>
        <td>click</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>75</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>76</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[5]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>77</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>78</td>
 </tr>
 <tr>
        <td>click</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>79</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>80</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>81</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>82</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>83</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>84</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>85</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>86</td>
 </tr>
 <tr>
        <td>click</td>
-       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
-       <td>waitForVaadin</td>
-       <td></td>
+       <td>screenCapture</td>
        <td></td>
+       <td>87</td>
 </tr>
 <tr>
-       <td>pause</td>
-       <td>1000</td>
+       <td>click</td>
+       <td>vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
        <td></td>
 </tr>
 <tr>
        <td>screenCapture</td>
        <td></td>
-       <td></td>
+       <td>88</td>
 </tr>
-
 </tbody></table>
 </body>
 </html>