[gtk+/gtk-style-context: 152/191] GtkWidget: Create GtkStyle on top of GtkStyleContext.



commit f05e438519aa92b8dd1b4acd6653f8396e4a37ad
Author: Carlos Garnacho <carlosg gnome org>
Date:   Mon Aug 2 16:14:17 2010 +0200

    GtkWidget: Create GtkStyle on top of GtkStyleContext.

 gtk/gtkwidget.c |   16 +++++++++++++++-
 1 files changed, 15 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index 1a910b9..96e258e 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -6431,7 +6431,7 @@ gtk_widget_set_parent (GtkWidget *widget,
     }
 
   context = g_object_get_qdata (G_OBJECT (widget),
-                                    quark_style_context);
+                                quark_style_context);
   if (context)
     {
       GtkWidgetPath *path;
@@ -6561,9 +6561,23 @@ gtk_widget_ensure_style (GtkWidget *widget)
 {
   g_return_if_fail (GTK_IS_WIDGET (widget));
 
+  if (!widget->style ||
+      !gtk_style_has_context (widget->style))
+    {
+      GtkStyle *style;
+
+      style = g_object_new (GTK_TYPE_STYLE,
+                            "context", gtk_widget_get_style_context (widget),
+                            NULL);
+
+      gtk_widget_set_style_internal (widget, style, TRUE);
+    }
+
+#if 0
   if (!GTK_WIDGET_USER_STYLE (widget) &&
       !gtk_widget_has_rc_style (widget))
     gtk_widget_reset_rc_style (widget);
+#endif
 }
 
 /* Look up the RC style for this widget, unsetting any user style that



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]