Title: [196913] releases/WebKitGTK/webkit-2.10/Source/WebCore
- Revision
- 196913
- Author
- carlo...@webkit.org
- Date
- 2016-02-22 01:18:01 -0800 (Mon, 22 Feb 2016)
Log Message
Merge r196171 - [GTK] Scrollbars not correctly rendered in non GNOME environments
https://bugs.webkit.org/show_bug.cgi?id=153860
Reviewed by Michael Catanzaro.
I noticed this in a matchbox environment, where there's no
gnome-setting-daemon running. The problem is only with the
scrollbars, because we initialize the GtkSettings in
RenderThemeGtk and notify the ScrollbarTheme when it changes, but
ScrollbarTheme is created before RenderThemeGtk so we initialize
the theme properties before the GtkSettings have been
initialized. We can just let the ScrollbarTheme monitor the
theme itself instead of relying on being notified by the WebCore
layer.
* platform/gtk/ScrollbarThemeGtk.cpp:
(WebCore::themeChangedCallback):
(WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk):
* rendering/RenderThemeGtk.cpp:
(WebCore::gtkStyleChangedCallback): Deleted.
Modified Paths
Diff
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog (196912 => 196913)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog 2016-02-22 09:12:53 UTC (rev 196912)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog 2016-02-22 09:18:01 UTC (rev 196913)
@@ -1,3 +1,26 @@
+2016-02-05 Carlos Garcia Campos <cgar...@igalia.com>
+
+ [GTK] Scrollbars not correctly rendered in non GNOME environments
+ https://bugs.webkit.org/show_bug.cgi?id=153860
+
+ Reviewed by Michael Catanzaro.
+
+ I noticed this in a matchbox environment, where there's no
+ gnome-setting-daemon running. The problem is only with the
+ scrollbars, because we initialize the GtkSettings in
+ RenderThemeGtk and notify the ScrollbarTheme when it changes, but
+ ScrollbarTheme is created before RenderThemeGtk so we initialize
+ the theme properties before the GtkSettings have been
+ initialized. We can just let the ScrollbarTheme monitor the
+ theme itself instead of relying on being notified by the WebCore
+ layer.
+
+ * platform/gtk/ScrollbarThemeGtk.cpp:
+ (WebCore::themeChangedCallback):
+ (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk):
+ * rendering/RenderThemeGtk.cpp:
+ (WebCore::gtkStyleChangedCallback): Deleted.
+
2016-02-03 Carlos Garcia Campos <cgar...@igalia.com>
Do not show context menu when right clicking on a scrollbar
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/platform/gtk/ScrollbarThemeGtk.cpp (196912 => 196913)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/platform/gtk/ScrollbarThemeGtk.cpp 2016-02-22 09:12:53 UTC (rev 196912)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/platform/gtk/ScrollbarThemeGtk.cpp 2016-02-22 09:18:01 UTC (rev 196913)
@@ -217,8 +217,19 @@
return styleContext;
}
+static void themeChangedCallback()
+{
+ ScrollbarTheme::theme()->themeChanged();
+}
+
ScrollbarThemeGtk::ScrollbarThemeGtk()
{
+ static bool themeMonitorInitialized = false;
+ if (!themeMonitorInitialized) {
+ g_signal_connect_swapped(gtk_settings_get_default(), "notify::gtk-theme-name", G_CALLBACK(themeChangedCallback), nullptr);
+ themeMonitorInitialized = true;
+ }
+
updateThemeProperties();
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderThemeGtk.cpp (196912 => 196913)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderThemeGtk.cpp 2016-02-22 09:12:53 UTC (rev 196912)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderThemeGtk.cpp 2016-02-22 09:18:01 UTC (rev 196913)
@@ -168,7 +168,6 @@
static void gtkStyleChangedCallback(GObject*, GParamSpec*)
{
- static_cast<ScrollbarThemeGtk*>(ScrollbarTheme::theme())->themeChanged();
Page::updateStyleForAllPagesAfterGlobalChangeInEnvironment();
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes