diff options
author | Sauli Tähkäpää <sauli@vaadin.com> | 2014-11-13 11:53:30 +0200 |
---|---|---|
committer | Vaadin Code Review <review@vaadin.com> | 2014-11-13 13:17:58 +0000 |
commit | ee6f9483f36eeeecf32730016d02fb22e5cbaab3 (patch) | |
tree | a83acc2f2648b30c8f1bc0a95dbd64d0fed344f4 /uitest/src/com | |
parent | c7d698cc57e2c2baba5d168d65e061789d973054 (diff) | |
download | vaadin-framework-ee6f9483f36eeeecf32730016d02fb22e5cbaab3.tar.gz vaadin-framework-ee6f9483f36eeeecf32730016d02fb22e5cbaab3.zip |
Revert "Position tooltips in the visible area (#15129)."
This reverts commit aacb2f8289bc2faaab1225bd8b0dacd873d7839a.
Changed causes a regression where an empty tooltip appears
while the application is initialising.
Change-Id: I0e0c8ae38975a2ba3835172652e4737f4bc67e6b
Diffstat (limited to 'uitest/src/com')
3 files changed, 0 insertions, 228 deletions
diff --git a/uitest/src/com/vaadin/tests/components/TooltipPosition.java b/uitest/src/com/vaadin/tests/components/TooltipPosition.java deleted file mode 100644 index d6475e0a0a..0000000000 --- a/uitest/src/com/vaadin/tests/components/TooltipPosition.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright 2000-2014 Vaadin Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of - * the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ -package com.vaadin.tests.components; - -import com.vaadin.server.VaadinRequest; -import com.vaadin.ui.Button; -import com.vaadin.ui.UI; -import com.vaadin.ui.VerticalLayout; - -/** - * This UI is used for testing that a tooltip is not positioned partially - * outside the browser window when there is enough space to display it. - * - * @since - * @author Vaadin Ltd - */ -public class TooltipPosition extends AbstractTestUI { - - public static final int NUMBER_OF_BUTTONS = 5; - - @Override - protected void setup(VaadinRequest request) { - // These tooltip delay settings can be removed once #13854 is resolved. - getTooltipConfiguration().setOpenDelay(0); - getTooltipConfiguration().setQuickOpenDelay(0); - getTooltipConfiguration().setCloseTimeout(1000); - - VerticalLayout layout = new VerticalLayout(); - layout.setSpacing(true); - layout.setHeight(UI.getCurrent().getPage().getBrowserWindowHeight(), - Unit.PIXELS); - addComponent(layout); - for (int i = 0; i < NUMBER_OF_BUTTONS; i++) { - Button button = new Button("Button"); - button.setDescription(generateTooltipText()); - layout.addComponent(button); - } - } - - private String generateTooltipText() { - String result = ""; - for (int i = 0; i < 50; i++) { - result += "This is the line " + i - + " of the long tooltip text.<br>"; - } - return result; - } - - @Override - public String getTestDescription() { - return "The tooltips of the buttons should not be clipped when there is enough space to display them."; - } - - @Override - public Integer getTicketNumber() { - return 15129; - } -} diff --git a/uitest/src/com/vaadin/tests/components/TooltipPositionTest.java b/uitest/src/com/vaadin/tests/components/TooltipPositionTest.java deleted file mode 100644 index bffc63f6c6..0000000000 --- a/uitest/src/com/vaadin/tests/components/TooltipPositionTest.java +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright 2000-2014 Vaadin Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of - * the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ -package com.vaadin.tests.components; - -import java.util.List; - -import org.junit.Test; -import org.openqa.selenium.By; -import org.openqa.selenium.Dimension; -import org.openqa.selenium.Point; -import org.openqa.selenium.StaleElementReferenceException; -import org.openqa.selenium.WebDriver; -import org.openqa.selenium.WebDriver.Window; -import org.openqa.selenium.WebElement; -import org.openqa.selenium.interactions.Actions; -import org.openqa.selenium.support.ui.ExpectedCondition; - -import com.vaadin.testbench.elements.ButtonElement; -import com.vaadin.tests.tb3.MultiBrowserTest; - -/** - * Tests that the tooltip is positioned so that it fits in the displayed area. - * - * @since - * @author Vaadin Ltd - */ -public class TooltipPositionTest extends MultiBrowserTest { - - @Test - public void testTooltipPosition() throws Exception { - openTestURL(); - for (int i = 0; i < TooltipPosition.NUMBER_OF_BUTTONS; i++) { - ButtonElement button = $(ButtonElement.class).get(i); - // Move the mouse to display the tooltip. - Actions actions = new Actions(driver); - actions.moveToElement(button, 10, 10); - actions.build().perform(); - waitUntil(tooltipToBeInsideWindow(By.cssSelector(".v-tooltip"), - driver.manage().window())); - - if (i < TooltipPosition.NUMBER_OF_BUTTONS - 1) { - // Remove the tooltip by moving the mouse. - actions = new Actions(driver); - actions.moveByOffset(300, 0); - actions.build().perform(); - waitUntil(tooltipNotToBeShown(By.cssSelector(".v-tooltip"), - driver.manage().window())); - } - } - } - - /* - * An expectation for checking that the tooltip found by the given locator - * is present in the DOM and entirely inside the browser window. The - * coordinate of the top left corner of the window is supposed to be (0, 0). - */ - private ExpectedCondition<Boolean> tooltipToBeInsideWindow( - final By tooltipLocator, final Window window) { - return new ExpectedCondition<Boolean>() { - - @Override - public Boolean apply(WebDriver input) { - List<WebElement> elements = findElements(tooltipLocator); - if (elements.isEmpty()) { - return false; - } - WebElement element = elements.get(0); - try { - if (!element.isDisplayed()) { - return false; - } - Point topLeft = element.getLocation(); - int xLeft = topLeft.getX(); - int yTop = topLeft.getY(); - if (xLeft < 0 || yTop < 0) { - return false; - } - Dimension elementSize = element.getSize(); - int xRight = xLeft + elementSize.getWidth() - 1; - int yBottom = yTop + elementSize.getHeight() - 1; - Dimension browserSize = window.getSize(); - return xRight < browserSize.getWidth() - && yBottom < browserSize.getHeight(); - } catch (StaleElementReferenceException e) { - return false; - } - } - - @Override - public String toString() { - return "the tooltip to be displayed inside the window"; - } - }; - }; - - /* - * An expectation for checking that the tooltip found by the given locator - * is not shown in the window, even partially. The top left corner of window - * should have coordinates (0, 0). - */ - private ExpectedCondition<Boolean> tooltipNotToBeShown( - final By tooltipLocator, final Window window) { - return new ExpectedCondition<Boolean>() { - - @Override - public Boolean apply(WebDriver input) { - List<WebElement> elements = findElements(tooltipLocator); - if (elements.isEmpty()) { - return true; - } - WebElement tooltip = elements.get(0); - try { - if (!tooltip.isDisplayed()) { - return true; - } - // The tooltip is shown, at least partially, if - // its intervals of both horizontal and vertical coordinates - // overlap those of the window. - Point topLeft = tooltip.getLocation(); - Dimension tooltipSize = tooltip.getSize(); - Dimension windowSize = window.getSize(); - int xLeft = topLeft.getX(); - int yTop = topLeft.getY(); - int xRight = xLeft + tooltipSize.getWidth() - 1; - int yBottom = yTop + tooltipSize.getHeight() - 1; - boolean overlapHorizontally = !(xRight < 0 || xLeft >= windowSize - .getWidth()); - boolean overlapVertically = !(yBottom < 0 || yTop >= windowSize - .getHeight()); - return !(overlapHorizontally && overlapVertically); - } catch (StaleElementReferenceException e) { - return true; - } - } - - @Override - public String toString() { - return "the tooltip not to be displayed inside the window"; - } - - }; - } -}
\ No newline at end of file diff --git a/uitest/src/com/vaadin/tests/components/menubar/MenuTooltipTest.java b/uitest/src/com/vaadin/tests/components/menubar/MenuTooltipTest.java index 091f7be954..24025b9f39 100644 --- a/uitest/src/com/vaadin/tests/components/menubar/MenuTooltipTest.java +++ b/uitest/src/com/vaadin/tests/components/menubar/MenuTooltipTest.java @@ -49,7 +49,6 @@ public class MenuTooltipTest extends MultiBrowserTest { Coordinates elementCoordinates = getCoordinates($(MenuBarElement.class) .first()); - sleep(1000); Mouse mouse = ((HasInputDevices) getDriver()).getMouse(); |