Modified: trunk/Source/WebCore/ChangeLog (195166 => 195167)
--- trunk/Source/WebCore/ChangeLog 2016-01-16 09:36:44 UTC (rev 195166)
+++ trunk/Source/WebCore/ChangeLog 2016-01-16 09:44:17 UTC (rev 195167)
@@ -1,3 +1,18 @@
+2016-01-16 Carlos Garcia Campos <[email protected]>
+
+ [GTK] List box selections stopped working again with GTK+ from current git master
+ https://bugs.webkit.org/show_bug.cgi?id=153122
+
+ Reviewed by Michael Catanzaro.
+
+ The problem is that the ListBox selection implementation is
+ wrong. We are using a similar implementation to GtkEntry, but
+ GtkTreeView doesn't have a child CSS node for selections.
+
+ * rendering/RenderThemeGtk.cpp:
+ (WebCore::styleColor): Don't use a child style context for ListBox selections.
+ (WebCore::createStyleContext): Remove ListBoxSelection.
+
2016-01-14 Carlos Garcia Campos <[email protected]>
[SOUP] Initialize HTTP version of ResourceResponse
Modified: trunk/Source/WebCore/rendering/RenderThemeGtk.cpp (195166 => 195167)
--- trunk/Source/WebCore/rendering/RenderThemeGtk.cpp 2016-01-16 09:36:44 UTC (rev 195166)
+++ trunk/Source/WebCore/rendering/RenderThemeGtk.cpp 2016-01-16 09:44:17 UTC (rev 195167)
@@ -158,7 +158,6 @@
ProgressBarTrough,
ProgressBarProgress,
ListBox,
- ListBoxSelection,
SpinButton,
SpinButtonUpButton,
SpinButtonDownButton,
@@ -334,14 +333,6 @@
#endif
gtk_widget_path_iter_add_class(path.get(), -1, GTK_STYLE_CLASS_VIEW);
break;
- case ListBoxSelection:
- gtk_widget_path_append_type(path.get(), GTK_TYPE_TREE_VIEW);
-#if GTK_CHECK_VERSION(3, 19, 2)
- gtk_widget_path_iter_set_object_name(path.get(), -1, "selection");
-#else
- gtk_widget_path_iter_add_class(path.get(), -1, GTK_STYLE_CLASS_VIEW);
-#endif
- break;
case SpinButton:
gtk_widget_path_append_type(path.get(), GTK_TYPE_SPIN_BUTTON);
#if GTK_CHECK_VERSION(3, 19, 2)
@@ -1289,10 +1280,9 @@
{
GRefPtr<GtkStyleContext> parentContext;
RenderThemePart part = themePart;
- if (state & GTK_STATE_FLAG_SELECTED) {
- parentContext = createStyleContext(themePart);
- ASSERT(themePart == Entry || themePart == ListBox);
- part = themePart == Entry ? EntrySelection : ListBoxSelection;
+ if (themePart == Entry && (state & GTK_STATE_FLAG_SELECTED)) {
+ parentContext = createStyleContext(Entry);
+ part = EntrySelection;
}
GRefPtr<GtkStyleContext> context = createStyleContext(part, parentContext.get());