Title: [203505] trunk/Source/WebCore
Revision
203505
Author
[email protected]
Date
2016-07-21 09:05:16 -0700 (Thu, 21 Jul 2016)

Log Message

[GTK][Threaded Compositor] Overlay scrollbars shouldn't be a requirement of the threaded compositor
https://bugs.webkit.org/show_bug.cgi?id=160020

Reviewed by Michael Catanzaro.

It has been a requirement only because we didn't really know why frame scrollbars were not rendered when using
the threaded compositor. The reason is that RenderView doesn't use layers for FrameView scrollbars by default,
unless using overlay scrollbars. When using the threaded compositor we really need layers for the FrameView
scrollbars even when not using overlay scrollbars.

* platform/gtk/ScrollbarThemeGtk.cpp:
(WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Stop enforcing overlay scrollbars when threaded compositor is enabled.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::shouldCompositeOverflowControls): Always use layers for scrollbars when
threaded compositor is enabled.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (203504 => 203505)


--- trunk/Source/WebCore/ChangeLog	2016-07-21 16:02:52 UTC (rev 203504)
+++ trunk/Source/WebCore/ChangeLog	2016-07-21 16:05:16 UTC (rev 203505)
@@ -1,5 +1,23 @@
 2016-07-21  Carlos Garcia Campos  <[email protected]>
 
+        [GTK][Threaded Compositor] Overlay scrollbars shouldn't be a requirement of the threaded compositor
+        https://bugs.webkit.org/show_bug.cgi?id=160020
+
+        Reviewed by Michael Catanzaro.
+
+        It has been a requirement only because we didn't really know why frame scrollbars were not rendered when using
+        the threaded compositor. The reason is that RenderView doesn't use layers for FrameView scrollbars by default,
+        unless using overlay scrollbars. When using the threaded compositor we really need layers for the FrameView
+        scrollbars even when not using overlay scrollbars.
+
+        * platform/gtk/ScrollbarThemeGtk.cpp:
+        (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Stop enforcing overlay scrollbars when threaded compositor is enabled.
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::shouldCompositeOverflowControls): Always use layers for scrollbars when
+        threaded compositor is enabled.
+
+2016-07-21  Carlos Garcia Campos  <[email protected]>
+
         [Cairo] Fix a crash in fast/canvas/canvas-getImageData-invalid-result-buffer-crash.html
         https://bugs.webkit.org/show_bug.cgi?id=160014
 

Modified: trunk/Source/WebCore/platform/gtk/ScrollbarThemeGtk.cpp (203504 => 203505)


--- trunk/Source/WebCore/platform/gtk/ScrollbarThemeGtk.cpp	2016-07-21 16:02:52 UTC (rev 203504)
+++ trunk/Source/WebCore/platform/gtk/ScrollbarThemeGtk.cpp	2016-07-21 16:05:16 UTC (rev 203505)
@@ -57,12 +57,8 @@
 ScrollbarThemeGtk::ScrollbarThemeGtk()
 {
 #if GTK_CHECK_VERSION(3, 20, 0)
-#if USE(COORDINATED_GRAPHICS_THREADED)
-    m_usesOverlayScrollbars = true;
-#else
     m_usesOverlayScrollbars = g_strcmp0(g_getenv("GTK_OVERLAY_SCROLLING"), "0");
 #endif
-#endif
     static bool themeMonitorInitialized = false;
     if (!themeMonitorInitialized) {
         g_signal_connect(gtk_settings_get_default(), "notify::gtk-theme-name", G_CALLBACK(themeChangedCallback), nullptr);

Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp (203504 => 203505)


--- trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp	2016-07-21 16:02:52 UTC (rev 203504)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp	2016-07-21 16:05:16 UTC (rev 203505)
@@ -3009,8 +3009,10 @@
     if (documentUsesTiledBacking())
         return true;
 
+#if !USE(COORDINATED_GRAPHICS_THREADED)
     if (!frameView.hasOverlayScrollbars())
         return false;
+#endif
 
     return true;
 }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to