aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--client/src/main/java/com/vaadin/client/widget/escalator/ScrollbarBundle.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/client/src/main/java/com/vaadin/client/widget/escalator/ScrollbarBundle.java b/client/src/main/java/com/vaadin/client/widget/escalator/ScrollbarBundle.java
index 8042e1b264..122c302f36 100644
--- a/client/src/main/java/com/vaadin/client/widget/escalator/ScrollbarBundle.java
+++ b/client/src/main/java/com/vaadin/client/widget/escalator/ScrollbarBundle.java
@@ -790,9 +790,16 @@ public abstract class ScrollbarBundle implements DeferredWorker {
if (!isLocked()) {
scrollPos = newScrollPos;
scrollEventFirer.scheduleEvent();
- } else if (scrollPos != newScrollPos) {
- // we need to actually undo the setting of the scroll.
- internalSetScrollPos(toInt32(scrollPos));
+ } else {
+ if (scrollPos != newScrollPos) {
+ // we need to actually undo the setting of the scroll.
+ internalSetScrollPos(toInt32(scrollPos));
+ }
+ if (scrollInProgress != null) {
+ // cancel the in-progress indicator
+ scrollInProgress.removeHandler();
+ scrollInProgress = null;
+ }
}
}