From 2d6f626bedd6aaf7e740b368f3d893b2e7853ccc Mon Sep 17 00:00:00 2001 From: Artur Signell Date: Thu, 31 Mar 2011 13:18:19 +0000 Subject: [PATCH] Test for #6731 svn changeset:18065/svn branch:6.5 --- .../tree/TreeScrollingOnSelection.html | 76 +++++++++++++++++++ .../tree/TreeScrollingOnSelection.java | 71 +++++++++++++++++ 2 files changed, 147 insertions(+) create mode 100644 tests/src/com/vaadin/tests/components/tree/TreeScrollingOnSelection.html create mode 100644 tests/src/com/vaadin/tests/components/tree/TreeScrollingOnSelection.java diff --git a/tests/src/com/vaadin/tests/components/tree/TreeScrollingOnSelection.html b/tests/src/com/vaadin/tests/components/tree/TreeScrollingOnSelection.html new file mode 100644 index 0000000000..bd8e944c32 --- /dev/null +++ b/tests/src/com/vaadin/tests/components/tree/TreeScrollingOnSelection.html @@ -0,0 +1,76 @@ + + + + + + +New Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
New Test
open/run/com.vaadin.tests.components.tree.TreeScrollingOnSelection?restartApplication
mouseClickvaadin=runcomvaadintestscomponentstreeTreeScrollingOnSelection::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VPanel[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VTree[0]#n[0]/n[4]32,7
screenCaptureepsilon-selected
scrollvaadin=runcomvaadintestscomponentstreeTreeScrollingOnSelection::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VPanel[0]/domChild[1]256
pause300
mouseClickvaadin=runcomvaadintestscomponentstreeTreeScrollingOnSelection::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VPanel[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VTree[0]#n[0]/n[21]18,-245
screenCapturescrolled-down-chi-selected
open/run/com.vaadin.tests.components.tree.TreeScrollingOnSelection?restartApplication
scrollvaadin=runcomvaadintestscomponentstreeTreeScrollingOnSelection::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VPanel[0]/domChild[1]500
pause300
mouseClickvaadin=runcomvaadintestscomponentstreeTreeScrollingOnSelection::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VPanel[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VTree[0]#n[0]/n[11]14,-248
screenCapturescrolled-down-my-selected
+ + diff --git a/tests/src/com/vaadin/tests/components/tree/TreeScrollingOnSelection.java b/tests/src/com/vaadin/tests/components/tree/TreeScrollingOnSelection.java new file mode 100644 index 0000000000..0f06f23fe0 --- /dev/null +++ b/tests/src/com/vaadin/tests/components/tree/TreeScrollingOnSelection.java @@ -0,0 +1,71 @@ +package com.vaadin.tests.components.tree; + +import com.vaadin.data.util.HierarchicalContainer; +import com.vaadin.event.ItemClickEvent; +import com.vaadin.event.ItemClickEvent.ItemClickListener; +import com.vaadin.tests.components.TestBase; +import com.vaadin.ui.Label; +import com.vaadin.ui.Panel; +import com.vaadin.ui.Tree; + +public class TreeScrollingOnSelection extends TestBase { + private static final long serialVersionUID = 4082075610259697145L; + + private static final String GREEK_ALPHABET = "greek alphabet"; + + private static final String[] ALPHABET = { "Alpha", "Beta", "Gamma", + "Delta", "Epsilon", "Zeta", "Eta", "Theta", "Iota", "Kappa", + "Lambda", "My", "Ny", "Xi", "Omikron", "Pi", "Rho", "Sigma", "Tau", + "Ypsilon", "Phi", "Chi", "Psi", "Omega" }; + + @Override + public void setup() { + final Label charLabel = new Label(); + charLabel.setWidth("200px"); + + Tree tree = new Tree("alphabets", getContainer()); + tree.expandItem(GREEK_ALPHABET); + tree.addListener(new ItemClickListener() { + + private static final long serialVersionUID = 5955518276555388126L; + + public void itemClick(ItemClickEvent event) { + charLabel.setValue(event.getItemId().toString()); + } + }); + + Panel panel = new Panel(); + panel.setScrollable(true); + panel.addComponent(tree); + panel.setWidth("200px"); + panel.setHeight("300px"); + + addComponent(panel); + + addComponent(charLabel); + } + + private HierarchicalContainer getContainer() { + HierarchicalContainer container = new HierarchicalContainer(); + + container.addItem(GREEK_ALPHABET); + + for (String character : ALPHABET) { + container.addItem(character); + container.setChildrenAllowed(character, false); + container.setParent(character, GREEK_ALPHABET); + } + + return container; + } + + @Override + protected String getDescription() { + return "Selecting an item in the tree inside the Panel should not cause the panel scroll position to change."; + } + + @Override + protected Integer getTicketNumber() { + return 6731; + } +} -- 2.39.5