diff options
author | Denis Anisimov <denis@vaadin.com> | 2016-11-07 09:41:01 +0200 |
---|---|---|
committer | Vaadin Code Review <review@vaadin.com> | 2016-11-14 07:23:22 +0000 |
commit | 5d2f6a372e0c31c471ecfbe7b7483f32e0a00f1d (patch) | |
tree | b8fca3a014f276b75e66a661621c74ea3bb58b17 /client | |
parent | 3e8f028817582a77ec3654b1f8f99136f327cc70 (diff) | |
download | vaadin-framework-5d2f6a372e0c31c471ecfbe7b7483f32e0a00f1d.tar.gz vaadin-framework-5d2f6a372e0c31c471ecfbe7b7483f32e0a00f1d.zip |
Prevent adding several scrollbar handlers (#19189).
Change-Id: Ib0cc6c6835aab6d263f153362a328bcf2be7bc5c
Diffstat (limited to 'client')
-rw-r--r-- | client/src/main/java/com/vaadin/client/widget/escalator/ScrollbarBundle.java | 6 |
1 files changed, 6 insertions, 0 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 6e2fb14f8f..870cbf2660 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 @@ -442,6 +442,9 @@ public abstract class ScrollbarBundle implements DeferredWorker { boolean offsetSizeBecomesGreaterThanScrollSize = showsScrollHandle() && newOffsetSizeIsGreaterThanScrollSize; if (offsetSizeBecomesGreaterThanScrollSize && getScrollPos() != 0) { + if (offsetSizeTemporaryScrollHandler != null) { + offsetSizeTemporaryScrollHandler.removeHandler(); + } // must be a field because Java insists. offsetSizeTemporaryScrollHandler = addScrollHandler( new ScrollHandler() { @@ -669,6 +672,9 @@ public abstract class ScrollbarBundle implements DeferredWorker { boolean delayedSizeSet = !BrowserInfo.get().isFirefox(); // must be a field because Java insists. if (delayedSizeSet) { + if (scrollSizeTemporaryScrollHandler != null) { + scrollSizeTemporaryScrollHandler.removeHandler(); + } scrollSizeTemporaryScrollHandler = addScrollHandler( new ScrollHandler() { @Override |