]> source.dussan.org Git - vaadin-framework.git/commitdiff
Make Panel scroll the correct div (#12736)
authorArtur Signell <artur@vaadin.com>
Mon, 4 Nov 2013 18:23:27 +0000 (20:23 +0200)
committerVaadin Code Review <review@vaadin.com>
Tue, 5 Nov 2013 06:54:44 +0000 (06:54 +0000)
Redefined util method to take the scrollable instead of its parent to make
it useful also for cases where the first child is not scrollable

Change-Id: I301d260d26373b38fdee525f169347bb7b4c499e

client/src/com/vaadin/client/Util.java
client/src/com/vaadin/client/ui/VWindow.java

index 206aa83c2bb57aabde65d6f4af8bc07db3cd1b98..9cdfa954c6f270b8bb460a11dbe9f148197ce20c 100644 (file)
@@ -525,12 +525,11 @@ public class Util {
      * See: bugs #11994 and #12736.
      * 
      * @param contentNode
-     *            an element that contains a scrollable element as its first
-     *            child
+     *            an element that is scrollable
      * 
      * @since 7.1.8
      */
-    public static void removeUnneededScrollbars(final Element contentNode) {
+    public static void removeUnneededScrollbars(final Element scrollable) {
         if (BrowserInfo.get().isWebkit()) {
 
             /*
@@ -544,9 +543,6 @@ public class Util {
 
                 @Override
                 public void execute() {
-                    final com.google.gwt.dom.client.Element scrollable = contentNode
-                            .getFirstChildElement();
-
                     // Adjusting the width or height may change the scroll
                     // position, so store the current position
                     int horizontalScrollPosition = scrollable.getScrollLeft();
index 3e71c0af5016413831a1fcb32189a33e7ac23e68..9f19a3e0abe6f5bf61955bc7e2398a1255d46dba 100644 (file)
@@ -343,7 +343,8 @@ public class VWindow extends VOverlay implements ShortcutActionHandlerOwner,
             super.setVisible(visible);
         }
         if (visible && BrowserInfo.get().isWebkit()) {
-            Util.removeUnneededScrollbars(contents);
+            Util.removeUnneededScrollbars((Element) contents
+                    .getFirstChildElement());
             updateContentsSize();
             positionOrSizeUpdated();
         }