From e23c3dd83c372c86c1c2aa3b911bdcb0720c0095 Mon Sep 17 00:00:00 2001 From: Anna Koskinen Date: Tue, 4 Dec 2018 19:11:38 +0200 Subject: Improvement to details row height handling. (#11351) - When rows are added, details row heights need to be taken into account in positioning. Fixes #11348 --- client/src/main/java/com/vaadin/client/widgets/Escalator.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'client/src/main') diff --git a/client/src/main/java/com/vaadin/client/widgets/Escalator.java b/client/src/main/java/com/vaadin/client/widgets/Escalator.java index ff76a66f96..cc207c10c0 100644 --- a/client/src/main/java/com/vaadin/client/widgets/Escalator.java +++ b/client/src/main/java/com/vaadin/client/widgets/Escalator.java @@ -2907,10 +2907,14 @@ public class Escalator extends Widget */ scroller.recalculateScrollbarsForVirtualViewport(); + double spacerHeightsSumUntilIndex = spacerContainer + .getSpacerHeightsSumUntilIndex(index); final boolean addedRowsAboveCurrentViewport = index - * getDefaultRowHeight() < getScrollTop(); + * getDefaultRowHeight() + + spacerHeightsSumUntilIndex < getScrollTop(); final boolean addedRowsBelowCurrentViewport = index - * getDefaultRowHeight() > getScrollTop() + * getDefaultRowHeight() + + spacerHeightsSumUntilIndex > getScrollTop() + getHeightOfSection(); if (addedRowsAboveCurrentViewport) { -- cgit v1.2.3