forked from AuroraMiddleware/gtk
widget: Emit initial style-set signal in the same situations as GTK2
This ensures that widgets that aren't ported and rely on the style-set signal being emitted work as well as before. They should not rely on style-set being emitted however. Note that this function is a no-op if the initial style has been set already and is very cheap if it has not been set yet. It only becomes relevant if the resulting style actually gets used. https://bugzilla.gnome.org/show_bug.cgi?id=639584
This commit is contained in:
parent
af8a6a7abd
commit
fafee4e276
@ -339,6 +339,8 @@ compute_size_for_orientation (GtkWidget *widget,
|
||||
{
|
||||
gint adjusted_min, adjusted_natural, adjusted_for_size = for_size;
|
||||
|
||||
gtk_widget_ensure_style (widget);
|
||||
|
||||
if (orientation == GTK_SIZE_GROUP_HORIZONTAL)
|
||||
{
|
||||
if (for_size < 0)
|
||||
|
@ -9201,6 +9201,8 @@ gtk_widget_render_icon (GtkWidget *widget,
|
||||
GtkIconSize size,
|
||||
const gchar *detail)
|
||||
{
|
||||
gtk_widget_ensure_style (widget);
|
||||
|
||||
return gtk_widget_render_icon_pixbuf (widget, stock_id, size);
|
||||
}
|
||||
|
||||
@ -10622,7 +10624,8 @@ gtk_widget_real_destroy (GtkWidget *object)
|
||||
|
||||
gtk_grab_remove (widget);
|
||||
|
||||
g_object_unref (priv->style);
|
||||
if (priv->style)
|
||||
g_object_unref (priv->style);
|
||||
priv->style = gtk_widget_get_default_style ();
|
||||
g_object_ref (priv->style);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user