summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--client/src/com/vaadin/client/widget/escalator/ScrollbarBundle.java2
-rw-r--r--uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeaturesTest.java5
-rw-r--r--uitest/src/com/vaadin/tests/components/grid/basicfeatures/server/GridStructureTest.java10
3 files changed, 16 insertions, 1 deletions
diff --git a/client/src/com/vaadin/client/widget/escalator/ScrollbarBundle.java b/client/src/com/vaadin/client/widget/escalator/ScrollbarBundle.java
index 96ebd811fb..883bbae0bd 100644
--- a/client/src/com/vaadin/client/widget/escalator/ScrollbarBundle.java
+++ b/client/src/com/vaadin/client/widget/escalator/ScrollbarBundle.java
@@ -414,7 +414,7 @@ public abstract class ScrollbarBundle implements DeferredWorker {
* offset size. All other browser need to suffer alongside.
*/
- boolean newOffsetSizeIsGreaterThanScrollSize = px > getOffsetSize();
+ boolean newOffsetSizeIsGreaterThanScrollSize = px > getScrollSize();
boolean offsetSizeBecomesGreaterThanScrollSize = showsScrollHandle()
&& newOffsetSizeIsGreaterThanScrollSize;
if (offsetSizeBecomesGreaterThanScrollSize && getScrollPos() != 0) {
diff --git a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeaturesTest.java b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeaturesTest.java
index 26d6fefa45..91dff944cb 100644
--- a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeaturesTest.java
+++ b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeaturesTest.java
@@ -74,6 +74,11 @@ public abstract class GridBasicFeaturesTest extends MultiBrowserTest {
getGridVerticalScrollbar());
}
+ protected int getGridVerticalScrollPos() {
+ return ((Number) executeScript("return arguments[0].scrollTop",
+ getGridVerticalScrollbar())).intValue();
+ }
+
protected List<TestBenchElement> getGridHeaderRowCells() {
List<TestBenchElement> headerCells = new ArrayList<TestBenchElement>();
for (int i = 0; i < getGridElement().getHeaderCount(); ++i) {
diff --git a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/server/GridStructureTest.java b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/server/GridStructureTest.java
index 9e1a9d5e91..9a9f85ccb9 100644
--- a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/server/GridStructureTest.java
+++ b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/server/GridStructureTest.java
@@ -437,4 +437,14 @@ public class GridStructureTest extends GridBasicFeaturesTest {
assertTrue(vscrollStyleName.contains(stylename + "-scroller"));
assertTrue(vscrollStyleName.contains(stylename + "-scroller-vertical"));
}
+
+ @Test
+ public void testScrollPosDoesNotChangeAfterStateChange() {
+ openTestURL();
+ scrollGridVerticallyTo(1000);
+ int scrollPos = getGridVerticalScrollPos();
+ selectMenuPath("Component", "Editor", "Enabled");
+ assertEquals("Scroll position should've not have changed", scrollPos,
+ getGridVerticalScrollPos());
+ }
}