From: Henri Sara Date: Wed, 16 Mar 2011 08:31:31 +0000 (+0000) Subject: Merged some changes from 6.5 X-Git-Tag: 6.7.0.beta1~395 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=722adf8a3efca33301bf67a9932ae0b22f19847e;p=vaadin-framework.git Merged some changes from 6.5 svn changeset:17798/svn branch:6.6 --- diff --git a/WebContent/VAADIN/themes/base/styles.css b/WebContent/VAADIN/themes/base/styles.css index 6ef3833ce1..0d5e79acbf 100644 --- a/WebContent/VAADIN/themes/base/styles.css +++ b/WebContent/VAADIN/themes/base/styles.css @@ -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/WebContent/VAADIN/themes/base/tabsheet/tabsheet.css b/WebContent/VAADIN/themes/base/tabsheet/tabsheet.css index b10afd9979..6fae7381a1 100644 --- a/WebContent/VAADIN/themes/base/tabsheet/tabsheet.css +++ b/WebContent/VAADIN/themes/base/tabsheet/tabsheet.css @@ -111,6 +111,10 @@ 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/WebContent/VAADIN/themes/liferay/styles.css b/WebContent/VAADIN/themes/liferay/styles.css index 5e52105283..115119e797 100644 --- a/WebContent/VAADIN/themes/liferay/styles.css +++ b/WebContent/VAADIN/themes/liferay/styles.css @@ -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/WebContent/VAADIN/themes/reindeer/styles.css b/WebContent/VAADIN/themes/reindeer/styles.css index f82d5574fb..b0c54c8ec4 100644 --- a/WebContent/VAADIN/themes/reindeer/styles.css +++ b/WebContent/VAADIN/themes/reindeer/styles.css @@ -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; diff --git a/WebContent/VAADIN/themes/runo/styles.css b/WebContent/VAADIN/themes/runo/styles.css index 47c496d62c..120c4daa53 100644 --- a/WebContent/VAADIN/themes/runo/styles.css +++ b/WebContent/VAADIN/themes/runo/styles.css @@ -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 index 0000000000..c7f0d86336 Binary files /dev/null and b/build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.class differ diff --git a/build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.java b/build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.java index 742450f3d5..6f477601ed 100644 --- a/build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.java +++ b/build/buildhelpers/com/vaadin/buildhelpers/GeneratePackageExports.java @@ -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 index 0000000000..bd48e3b356 Binary files /dev/null and b/build/buildhelpers/com/vaadin/buildhelpers/ManifestWriter.class differ diff --git a/src/com/vaadin/terminal/gwt/client/ui/VEmbedded.java b/src/com/vaadin/terminal/gwt/client/ui/VEmbedded.java index f1d61029d4..a0f7cc649c 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VEmbedded.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VEmbedded.java @@ -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 = ""; + // Handle embedding of Flash + setHTML(createFlashEmbed(uidl)); - Map 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 += ""; - } - - html += ""); + + // Ensure we have an movie parameter + Map 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(""); + } + + // Build inner EMBED tag + html.append(""); + + // End object tag + html.append(""); + return html.toString(); } /** diff --git a/src/com/vaadin/terminal/gwt/client/ui/VPanel.java b/src/com/vaadin/terminal/gwt/client/ui/VPanel.java index 586e04ed10..692b8a4858 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VPanel.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VPanel.java @@ -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; } diff --git a/src/com/vaadin/terminal/gwt/client/ui/VTextField.java b/src/com/vaadin/terminal/gwt/client/ui/VTextField.java index 49d18f0867..edf4261988 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VTextField.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VTextField.java @@ -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; diff --git a/src/com/vaadin/terminal/gwt/client/ui/VView.java b/src/com/vaadin/terminal/gwt/client/ui/VView.java index ea43deba9d..5d7cc18945 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VView.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VView.java @@ -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(); + } + } diff --git a/src/com/vaadin/terminal/gwt/client/ui/VWindow.java b/src/com/vaadin/terminal/gwt/client/ui/VWindow.java index 8e03ca89d7..395d6f6ea0 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VWindow.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VWindow.java @@ -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(); + } + } diff --git a/src/com/vaadin/ui/AbsoluteLayout.java b/src/com/vaadin/ui/AbsoluteLayout.java index 3b0239af7b..c7a1583d28 100644 --- a/src/com/vaadin/ui/AbsoluteLayout.java +++ b/src/com/vaadin/ui/AbsoluteLayout.java @@ -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; + } } /** diff --git a/src/com/vaadin/ui/Embedded.java b/src/com/vaadin/ui/Embedded.java index 85d67ae105..55991eafb2 100644 --- a/src/com/vaadin/ui/Embedded.java +++ b/src/com/vaadin/ui/Embedded.java @@ -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 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 parameters) { MouseEventDetails mouseDetails = MouseEventDetails .deSerialize((String) parameters.get("mouseDetails")); diff --git a/src/com/vaadin/ui/Panel.java b/src/com/vaadin/ui/Panel.java index 4d00cddfdd..7ffa11a325 100644 --- a/src/com/vaadin/ui/Panel.java +++ b/src/com/vaadin/ui/Panel.java @@ -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(); + } + } diff --git a/src/com/vaadin/ui/Window.java b/src/com/vaadin/ui/Window.java index b31255cb26..5c2769c756 100644 --- a/src/com/vaadin/ui/Window.java +++ b/src/com/vaadin/ui/Window.java @@ -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, * * // within the window using helper * subWindow.setCloseShortcut(KeyCode.ESCAPE, null); - * + * * // or globally * getWindow().addAction(new Window.CloseShortcut(subWindow, KeyCode.ESCAPE)); * @@ -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(); + } + } + } diff --git a/tests/eclipse-run-selected-test.properties b/tests/eclipse-run-selected-test.properties index 49925925bc..06e414b902 100644 --- a/tests/eclipse-run-selected-test.properties +++ b/tests/eclipse-run-selected-test.properties @@ -1,12 +1,12 @@ ; Location where vaadin-testbench jar can be found -com.vaadin.testbench.lib.dir= +com.vaadin.testbench.lib.dir=/home/hesara/dev/software/testbench/vaadin-testbench-2.2.0.development.201103151333 ; Deployment url to use for testing. Context path must be / -com.vaadin.testbench.deployment.url=http://:8888/ +com.vaadin.testbench.deployment.url=http://192.168.2.215:8888/ ; Location of the screenshot directory. ; This is the directory that contains the "references" directory -com.vaadin.testbench.screenshot.directory= +com.vaadin.testbench.screenshot.directory=/home/hesara/dev/workspaces/helios_sr1_jee_vaadin/v66_screenshots ; Run the whole test even if com.vaadin.testbench.screenshot.softfail=true @@ -23,7 +23,7 @@ com.vaadin.testbench.screenshot.cursor=true ; Uncomment to limit to certain browsers or override in launch configuration ; browsers=winxp-opera10 -; Claim that the server has started succesfully. Needed for the tests to run +; Claim that the server has started successfully. Needed for the tests to run server.start.succeeded=1 test-output-dir=../build/test-output \ No newline at end of file diff --git a/tests/src/com/vaadin/tests/VaadinClasses.java b/tests/src/com/vaadin/tests/VaadinClasses.java index 3508f84059..9aef3f5277 100644 --- a/tests/src/com/vaadin/tests/VaadinClasses.java +++ b/tests/src/com/vaadin/tests/VaadinClasses.java @@ -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> getComponentContainersSupportingUnlimitedNumberOfComponents() { + List> 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>> 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 index 0000000000..10dd21d240 --- /dev/null +++ b/tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.html @@ -0,0 +1,86 @@ + + + + + + +New Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
New Test
open/run/com.vaadin.tests.components.LayoutAttachListenerInfo?restartApplication
clickvaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]
screenCaptureTop50pxLeft50px
mouseClickvaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::Root/VNotification[0]/HTML[0]/domChild[0]351,23
pause1000
mouseClickvaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VOptionGroup[0]/domChild[1]/domChild[0]8,7
clickvaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]
screenCaptureAttachedToIndex0
mouseClickvaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::Root/VNotification[0]/HTML[0]/domChild[0]351,23
pause1000
mouseClickvaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VOptionGroup[0]/domChild[2]/domChild[0]3,5
clickvaadin=runcomvaadintestscomponentsLayoutAttachListenerInfo::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]
pause1000
screenCaptureAttachedTo23
+ + diff --git a/tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.java b/tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.java new file mode 100644 index 0000000000..7ed44768fd --- /dev/null +++ b/tests/src/com/vaadin/tests/components/LayoutAttachListenerInfo.java @@ -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 index 0000000000..926088ff48 --- /dev/null +++ b/tests/src/com/vaadin/tests/components/caption/IconsInCaption.java @@ -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 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 containerClass = (Class) 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 containerClass, Object iconType) + throws InstantiationException, IllegalAccessException { + ComponentContainer container = containerClass.newInstance(); + for (String size : sizes) { + Label title = new Label("

" + size + "x" + size + "

", + 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 index 0000000000..d3debf3417 --- /dev/null +++ b/tests/src/com/vaadin/tests/components/embedded/FlashIsVisible.html @@ -0,0 +1,33 @@ + + + + + + +New Test + + + + + + + + + + + + + + + + + + + + + + + +
New Test
open/run/com.vaadin.tests.components.embedded.FlashIsVisible
pause5000
screenCapture
+ + 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 index 0000000000..5d626cfc0b --- /dev/null +++ b/tests/src/com/vaadin/tests/components/embedded/FlashIsVisible.java @@ -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; + } + +} diff --git a/tests/src/com/vaadin/tests/components/menubar/IconsInSubMenus.html b/tests/src/com/vaadin/tests/components/menubar/IconsInSubMenus.html index 706fbca002..3ce0986f71 100644 --- a/tests/src/com/vaadin/tests/components/menubar/IconsInSubMenus.html +++ b/tests/src/com/vaadin/tests/components/menubar/IconsInSubMenus.html @@ -75,6 +75,11 @@ vaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_StestComponent#item0 51,10 + + pause + 1000 + + screenCapture 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 index 0000000000..97006323a2 --- /dev/null +++ b/tests/src/com/vaadin/tests/components/menubar/MenuBarResize.html @@ -0,0 +1,127 @@ + + + + + + +New Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
New Test
open/run/com.vaadin.tests.components.menubar.MenuBarTest?restartApplication
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_Smenu#item026,7
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[0]/VMenuBar[0]#item271,9
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[1]/VMenuBar[0]#item034,2
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[2]/VMenuBar[0]#item232,5
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_Smenu#item117,5
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[0]/VMenuBar[0]#item236,1
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[1]/VMenuBar[0]#item022,5
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[2]/VMenuBar[0]#item648,15
screenCapturemenubar-100pct-inside-500px
open/run/com.vaadin.tests.components.menubar.MenuBarTest
screenCapturemenubar-100pct-inside-500px-after-refresh
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_Smenu#item120,0
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[0]/VMenuBar[0]#item272,3
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[1]/VMenuBar[0]#item04,8
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[2]/VMenuBar[0]#item1026,9
screenCapturemenubar-100pct-inside-900px
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::PID_Smenu#item019,3
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[0]/VMenuBar[0]#item266,6
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[1]/VMenuBar[0]#item06,2
mouseClickvaadin=runcomvaadintestscomponentsmenubarMenuBarTest::Root/VOverlay[2]/VMenuBar[0]#item1043,3
screenCapturemenubar-900px-inside-900px
+ + diff --git a/tests/src/com/vaadin/tests/components/table/HeaderClick.html b/tests/src/com/vaadin/tests/components/table/HeaderClick.html index 3f0b111419..d5328b25d3 100644 --- a/tests/src/com/vaadin/tests/components/table/HeaderClick.html +++ b/tests/src/com/vaadin/tests/components/table/HeaderClick.html @@ -16,21 +16,11 @@ /run/com.vaadin.tests.components.table.HeaderClick?restartApplication - - waitForVaadin - - - mouseClick 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] 37,11 - - waitForVaadin - - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -41,11 +31,6 @@ 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] 36,9 - - waitForVaadin - - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -56,11 +41,6 @@ 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] 8,11 - - waitForVaadin - - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -77,11 +57,6 @@ 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] 31,9 - - pause - 500 - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -92,11 +67,6 @@ 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] 16,10 - - pause - 500 - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -107,11 +77,6 @@ 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] 16,10 - - pause - 500 - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -127,11 +92,6 @@ 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] 64,10 - - pause - 500 - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -142,11 +102,6 @@ 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] 48,10 - - pause - 500 - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -157,11 +112,6 @@ 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] 30,11 - - pause - 500 - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -177,11 +127,6 @@ 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] 48,11 - - pause - 500 - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -192,11 +137,6 @@ 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] 71,10 - - pause - 500 - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] @@ -207,11 +147,6 @@ 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] 39,5 - - pause - 500 - - assertValue vaadin=runcomvaadintestscomponentstableHeaderClick::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTextField[0] 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 index 0000000000..544cea9faa --- /dev/null +++ b/tests/src/com/vaadin/tests/components/textfield/TextChangeTimeoutAfterDetach.html @@ -0,0 +1,48 @@ + + + + + + +New Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
New Test
open/run/com.vaadin.tests.components.textfield.TextChangeTimeoutAfterDetach?restartApplication
mouseClickvaadin=runcomvaadintestscomponentstextfieldTextChangeTimeoutAfterDetach::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VTextField[0]119,12
enterCharactervaadin=runcomvaadintestscomponentstextfieldTextChangeTimeoutAfterDetach::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VTextField[0]aaaa
clickvaadin=runcomvaadintestscomponentstextfieldTextChangeTimeoutAfterDetach::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]
pause3000
screenCapture
+ + 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 index 0000000000..d1f856f40c --- /dev/null +++ b/tests/src/com/vaadin/tests/components/textfield/TextChangeTimeoutAfterDetach.java @@ -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; + } + +} diff --git a/tests/src/com/vaadin/tests/layouts/layouttester/HorizontalLayoutTests.java b/tests/src/com/vaadin/tests/layouts/layouttester/HorizontalLayoutTests.java index 35c813293f..ff6e76e480 100644 --- a/tests/src/com/vaadin/tests/layouts/layouttester/HorizontalLayoutTests.java +++ b/tests/src/com/vaadin/tests/layouts/layouttester/HorizontalLayoutTests.java @@ -16,7 +16,6 @@ import com.vaadin.ui.HorizontalLayout; import com.vaadin.ui.Label; import com.vaadin.ui.Layout; import com.vaadin.ui.Link; -import com.vaadin.ui.NativeSelect; import com.vaadin.ui.Select; import com.vaadin.ui.TabSheet; import com.vaadin.ui.Table; @@ -490,7 +489,7 @@ public class HorizontalLayoutTests extends AbstractLayoutTests { components[3] = getTestTabsheet(); components[3].setIcon(new ThemeResource(LOCK_16_PNG)); - AbstractField[] fields = new AbstractField[6]; + AbstractField[] fields = new AbstractField[5]; fields[0] = new TextField(); fields[0].setRequired(true); fields[0].setValidationVisible(true); @@ -512,14 +511,6 @@ public class HorizontalLayoutTests extends AbstractLayoutTests { fields[4] .setComponentError(new UserError("component error, user error")); - fields[5] = new NativeSelect(); - fields[5].setRequired(true); - fields[5].setValidationVisible(true); - fields[5].setRequiredError("required error"); - fields[5] - .setComponentError(new UserError("component error, user error")); - fields[5].setIcon(new ThemeResource(CALENDAR_32_PNG)); - for (int i = 0; i < components.length; i++) { components[i].setComponentError(new UserError( "component error, user error")); diff --git a/tests/src/com/vaadin/tests/layouts/layouttester/LayoutTesterApplication.html b/tests/src/com/vaadin/tests/layouts/layouttester/LayoutTesterApplication.html index 807984be26..b0e2444986 100644 --- a/tests/src/com/vaadin/tests/layouts/layouttester/LayoutTesterApplication.html +++ b/tests/src/com/vaadin/tests/layouts/layouttester/LayoutTesterApplication.html @@ -16,1165 +16,270 @@ /run/com.vaadin.tests.layouts.layouttester.LayoutTesterApplication - - waitForVaadin - - - - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 1 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 2 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 3 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 4 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 5 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 6 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 7 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 8 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 9 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 10 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 11 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 12 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 13 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 14 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 15 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 16 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 17 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 18 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 19 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 20 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 21 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 22 click vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - select - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VNativeSelect[0]/domChild[0] - label=class com.vaadin.ui.HorizontalLayout - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - - - screenCapture - - - - - click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - - - - waitForVaadin - - - - - pause - 1000 - - screenCapture - + 23 - select - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VNativeSelect[0]/domChild[0] - label=class com.vaadin.ui.GridLayout + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] + - waitForVaadin - + screenCapture + 24 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 25 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 26 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 27 click @@ -1182,19 +287,19 @@ - waitForVaadin - + screenCapture + 28 - pause - 1000 - + select + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VNativeSelect[0]/domChild[0] + label=class com.vaadin.ui.HorizontalLayout screenCapture - + 29 click @@ -1202,19 +307,25 @@ - waitForVaadin + screenCapture + 30 + + + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] + pause - 1000 + 2000 screenCapture - + 31 click @@ -1222,19 +333,19 @@ - waitForVaadin - + screenCapture + 32 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] screenCapture - + 33 click @@ -1242,79 +353,79 @@ - waitForVaadin - + screenCapture + 34 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 35 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 36 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 37 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 38 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 39 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 40 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 41 click @@ -1322,239 +433,239 @@ - waitForVaadin - + screenCapture + 42 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 43 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 44 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 45 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 46 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 47 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 48 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 49 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 50 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 51 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 52 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 53 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 54 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 55 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 56 - pause - 1000 - + select + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VNativeSelect[0]/domChild[0] + label=class com.vaadin.ui.GridLayout screenCapture - + 57 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] - waitForVaadin - + screenCapture + 58 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] screenCapture - + 59 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] - waitForVaadin - + screenCapture + 60 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] screenCapture - + 61 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 62 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 63 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[5]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 64 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 65 click @@ -1562,79 +673,89 @@ - waitForVaadin - + screenCapture + 66 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 67 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 68 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 69 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 70 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 71 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 72 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] screenCapture + 73 + + + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] + + + + screenCapture + 74 click @@ -1642,39 +763,39 @@ - waitForVaadin - + screenCapture + 75 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 76 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[5]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 77 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 78 click @@ -1682,101 +803,100 @@ - waitForVaadin - + screenCapture + 79 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 80 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 81 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 82 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0] - waitForVaadin - + screenCapture + 83 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 84 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 85 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 86 click - vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0] - waitForVaadin - + screenCapture + 87 - pause - 1000 + click + vaadin=runcomvaadintestslayoutslayouttesterLayoutTesterApplication::/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0] screenCapture - + 88 -