Title: [106073] trunk/Source/WebCore
Revision
106073
Author
ander...@apple.com
Date
2012-01-26 18:01:47 -0800 (Thu, 26 Jan 2012)

Log Message

Scrollbars disappear when switching from legacy to overlay scrollbars
https://bugs.webkit.org/show_bug.cgi?id=77166

Reviewed by Dan Bernstein.

* platform/ScrollView.cpp:
(WebCore::ScrollView::scrollbarStyleChanged):
Call positionScrollbarLayers to make sure that the new scrollbar layers are positioned correctly.

* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::updateScrollerStyle):
Call ScrollbarThemeMac::setNewPainterForScrollbar after making the call to the scrollbar painter controller
to set the horizontal or vertical imp, since setting the imp will reset the knob style.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (106072 => 106073)


--- trunk/Source/WebCore/ChangeLog	2012-01-27 01:55:36 UTC (rev 106072)
+++ trunk/Source/WebCore/ChangeLog	2012-01-27 02:01:47 UTC (rev 106073)
@@ -1,3 +1,19 @@
+2012-01-26  Anders Carlsson  <ander...@apple.com>
+
+        Scrollbars disappear when switching from legacy to overlay scrollbars
+        https://bugs.webkit.org/show_bug.cgi?id=77166
+
+        Reviewed by Dan Bernstein.
+
+        * platform/ScrollView.cpp:
+        (WebCore::ScrollView::scrollbarStyleChanged):
+        Call positionScrollbarLayers to make sure that the new scrollbar layers are positioned correctly.
+
+        * platform/mac/ScrollAnimatorMac.mm:
+        (WebCore::ScrollAnimatorMac::updateScrollerStyle):
+        Call ScrollbarThemeMac::setNewPainterForScrollbar after making the call to the scrollbar painter controller
+        to set the horizontal or vertical imp, since setting the imp will reset the knob style.
+
 2012-01-26  Adam Barth  <aba...@webkit.org>
 
         NULL ptr in WebCore::ContainerNode::parserAddChild

Modified: trunk/Source/WebCore/platform/ScrollView.cpp (106072 => 106073)


--- trunk/Source/WebCore/platform/ScrollView.cpp	2012-01-27 01:55:36 UTC (rev 106072)
+++ trunk/Source/WebCore/platform/ScrollView.cpp	2012-01-27 02:01:47 UTC (rev 106073)
@@ -991,6 +991,7 @@
 
     contentsResized();
     updateScrollbars(scrollOffset());
+    positionScrollbarLayers();
 }
 
 void ScrollView::updateScrollCorner()

Modified: trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm (106072 => 106073)


--- trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm	2012-01-27 01:55:36 UTC (rev 106072)
+++ trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm	2012-01-27 02:01:47 UTC (rev 106073)
@@ -1090,8 +1090,8 @@
                                                                                     controlSize:(NSControlSize)verticalScrollbar->controlSize() 
                                                                                     horizontal:NO 
                                                                                     replacingScrollerImp:oldVerticalPainter];
+        [m_scrollbarPainterController.get() setVerticalScrollerImp:newVerticalPainter];
         macTheme->setNewPainterForScrollbar(verticalScrollbar, newVerticalPainter);
-        [m_scrollbarPainterController.get() setVerticalScrollerImp:newVerticalPainter];
 
         // The different scrollbar styles have different thicknesses, so we must re-set the 
         // frameRect to the new thickness, and the re-layout below will ensure the position
@@ -1108,8 +1108,8 @@
                                                                                     controlSize:(NSControlSize)horizontalScrollbar->controlSize() 
                                                                                     horizontal:YES 
                                                                                     replacingScrollerImp:oldHorizontalPainter];
+        [m_scrollbarPainterController.get() setHorizontalScrollerImp:newHorizontalPainter];
         macTheme->setNewPainterForScrollbar(horizontalScrollbar, newHorizontalPainter);
-        [m_scrollbarPainterController.get() setHorizontalScrollerImp:newHorizontalPainter];
 
         // The different scrollbar styles have different thicknesses, so we must re-set the 
         // frameRect to the new thickness, and the re-layout below will ensure the position
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to