* GTK will update this property automatically if
* the @surface background is opaque, as we know where the opaque regions
* are. If your surface background is not opaque, please update this
- * property in your #GtkWidget::style-updated handler.
+ * property in your #GtkWidget:css-changed handler.
*/
void
gdk_surface_set_opaque_region (GdkSurface *surface,
}
static void
-gtk_builtin_icon_style_updated (GtkWidget *widget)
+gtk_builtin_icon_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
- GtkStyleContext *context;
- GtkCssStyleChange *change = NULL;
-
- context = gtk_widget_get_style_context (widget);
- change = gtk_style_context_get_change (context);
-
- GTK_WIDGET_CLASS (gtk_builtin_icon_parent_class)->style_updated (widget);
+ GTK_WIDGET_CLASS (gtk_builtin_icon_parent_class)->css_changed (widget, change);
if (change == NULL ||
gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_ICON_SIZE))
wclass->snapshot = gtk_builtin_icon_snapshot;
wclass->measure = gtk_builtin_icon_measure;
- wclass->style_updated = gtk_builtin_icon_style_updated;
+ wclass->css_changed = gtk_builtin_icon_css_changed;
}
static void
/* We validate the style contexts in a single loop before even trying
* to handle resizes instead of doing validations inline.
* This is mostly necessary for compatibility reasons with old code,
- * because both style_updated and size_allocate functions often change
+ * because both css_changed and size_allocate functions often change
* styles and so could cause infinite loops in this function.
*
* It's important to note that even an invalid style context returns
G_BEGIN_DECLS
-typedef struct _GtkCssStyleChange GtkCssStyleChange;
-
struct _GtkCssStyleChange {
GtkCssStyle *old_style;
GtkCssStyle *new_style;
if (context)
gtk_style_context_validate (context, &change);
else
- _gtk_widget_style_context_invalidated (widget_node->widget);
+ gtk_widget_css_changed (widget_node->widget, &change);
g_set_object (&widget_node->last_updated_style, style);
}
gtk_css_style_change_finish (&change);
static void gtk_file_chooser_button_map (GtkWidget *widget);
static gboolean gtk_file_chooser_button_mnemonic_activate (GtkWidget *widget,
gboolean group_cycling);
-static void gtk_file_chooser_button_style_updated (GtkWidget *widget);
-static void gtk_file_chooser_button_state_flags_changed (GtkWidget *widget,
- GtkStateFlags previous_state);
+static void gtk_file_chooser_button_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
+static void gtk_file_chooser_button_state_flags_changed (GtkWidget *widget,
+ GtkStateFlags previous_state);
/* Utility Functions */
static void set_info_for_file_at_iter (GtkFileChooserButton *fs,
widget_class->show = gtk_file_chooser_button_show;
widget_class->hide = gtk_file_chooser_button_hide;
widget_class->map = gtk_file_chooser_button_map;
- widget_class->style_updated = gtk_file_chooser_button_style_updated;
+ widget_class->css_changed = gtk_file_chooser_button_css_changed;
widget_class->root = gtk_file_chooser_button_root;
widget_class->mnemonic_activate = gtk_file_chooser_button_mnemonic_activate;
widget_class->state_flags_changed = gtk_file_chooser_button_state_flags_changed;
}
static void
-gtk_file_chooser_button_style_updated (GtkWidget *widget)
+gtk_file_chooser_button_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
- GtkStyleContext *context = gtk_widget_get_style_context (widget);
- GtkCssStyleChange *change = gtk_style_context_get_change (context);
-
- GTK_WIDGET_CLASS (gtk_file_chooser_button_parent_class)->style_updated (widget);
+ GTK_WIDGET_CLASS (gtk_file_chooser_button_parent_class)->css_changed (widget, change);
/* We need to update the icon surface, but only in case
* the icon theme really changed. */
static void gtk_file_chooser_widget_unmap (GtkWidget *widget);
static void gtk_file_chooser_widget_root (GtkWidget *widget);
static void gtk_file_chooser_widget_unroot (GtkWidget *widget);
-static void gtk_file_chooser_widget_style_updated (GtkWidget *widget);
+static void gtk_file_chooser_widget_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
static gboolean gtk_file_chooser_widget_set_current_folder (GtkFileChooser *chooser,
GFile *folder,
}
static void
-gtk_file_chooser_widget_style_updated (GtkWidget *widget)
+gtk_file_chooser_widget_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
GtkFileChooserWidget *impl;
impl = GTK_FILE_CHOOSER_WIDGET (widget);
- profile_msg (" parent class style_udpated start", NULL);
- GTK_WIDGET_CLASS (gtk_file_chooser_widget_parent_class)->style_updated (widget);
- profile_msg (" parent class style_updated end", NULL);
+ profile_msg (" parent class css_changed start", NULL);
+ GTK_WIDGET_CLASS (gtk_file_chooser_widget_parent_class)->css_changed (widget, change);
+ profile_msg (" parent class css_changed end", NULL);
change_icon_theme (impl);
widget_class->unmap = gtk_file_chooser_widget_unmap;
widget_class->root = gtk_file_chooser_widget_root;
widget_class->unroot = gtk_file_chooser_widget_unroot;
- widget_class->style_updated = gtk_file_chooser_widget_style_updated;
+ widget_class->css_changed = gtk_file_chooser_widget_css_changed;
/*
* Signals
gtk_widget_class_bind_template_callback (widget_class, stop_search_cb);
gtk_widget_class_bind_template_callback (widget_class, cursor_changed_cb);
gtk_widget_class_bind_template_callback (widget_class, row_activated_cb);
- gtk_widget_class_bind_template_callback (widget_class, gtk_font_chooser_widget_set_cell_size);
gtk_widget_class_bind_template_callback (widget_class, rows_changed_cb);
gtk_widget_class_bind_template_callback (widget_class, size_change_cb);
gtk_widget_class_bind_template_callback (widget_class, output_cb);
* they will be tried in order.
*
* Note that you probably want to listen for icon theme changes and
- * update the icon. This is usually done by connecting to the
- * GtkWidget::style-updated signal.
+ * update the icon. This is usually done by overriding the
+ * #GtkWidget:css-changed function.
*
* Returns: (nullable) (transfer full): a #GtkIconPaintable object
* containing the icon, or %NULL if the icon wasn’t found.
int *minimum_baseline,
int *natural_baseline);
-static void gtk_image_style_updated (GtkWidget *widget);
+static void gtk_image_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
static void gtk_image_finalize (GObject *object);
static void gtk_image_set_property (GObject *object,
widget_class->snapshot = gtk_image_snapshot;
widget_class->measure = gtk_image_measure;
widget_class->unrealize = gtk_image_unrealize;
- widget_class->style_updated = gtk_image_style_updated;
+ widget_class->css_changed = gtk_image_css_changed;
image_props[PROP_PAINTABLE] =
g_param_spec_object ("paintable",
}
static void
-gtk_image_style_updated (GtkWidget *widget)
+gtk_image_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
GtkImage *image = GTK_IMAGE (widget);
GtkImagePrivate *priv = gtk_image_get_instance_private (image);
- GtkStyleContext *context = gtk_widget_get_style_context (widget);
- GtkCssStyleChange *change = gtk_style_context_get_change (context);
gtk_icon_helper_invalidate_for_change (priv->icon_helper, change);
- GTK_WIDGET_CLASS (gtk_image_parent_class)->style_updated (widget);
+ GTK_WIDGET_CLASS (gtk_image_parent_class)->css_changed (widget, change);
priv->baseline_align = 0.0;
}
int baseline);
static void gtk_label_state_flags_changed (GtkWidget *widget,
GtkStateFlags prev_state);
-static void gtk_label_style_updated (GtkWidget *widget);
-static void gtk_label_snapshot (GtkWidget *widget,
- GtkSnapshot *snapshot);
+static void gtk_label_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
+static void gtk_label_snapshot (GtkWidget *widget,
+ GtkSnapshot *snapshot);
static gboolean gtk_label_focus (GtkWidget *widget,
GtkDirectionType direction);
widget_class->destroy = gtk_label_destroy;
widget_class->size_allocate = gtk_label_size_allocate;
widget_class->state_flags_changed = gtk_label_state_flags_changed;
- widget_class->style_updated = gtk_label_style_updated;
+ widget_class->css_changed = gtk_label_css_changed;
widget_class->query_tooltip = gtk_label_query_tooltip;
widget_class->snapshot = gtk_label_snapshot;
widget_class->unrealize = gtk_label_unrealize;
}
static void
-gtk_label_style_updated (GtkWidget *widget)
+gtk_label_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
GtkLabel *label = GTK_LABEL (widget);
GtkLabelPrivate *priv = gtk_label_get_instance_private (label);
- GtkStyleContext *context;
- GtkCssStyleChange *change;
-
- GTK_WIDGET_CLASS (gtk_label_parent_class)->style_updated (widget);
- context = gtk_widget_get_style_context (widget);
- change = gtk_style_context_get_change (context);
+ GTK_WIDGET_CLASS (gtk_label_parent_class)->css_changed (widget, change);
if (change == NULL || gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_TEXT_ATTRS) ||
(priv->select_info && priv->select_info->links))
int width,
int height,
int baseline);
-static void gtk_paned_unrealize (GtkWidget *widget);
-static gboolean gtk_paned_focus (GtkWidget *widget,
- GtkDirectionType direction);
-static void gtk_paned_style_updated (GtkWidget *widget);
+static void gtk_paned_unrealize (GtkWidget *widget);
+static gboolean gtk_paned_focus (GtkWidget *widget,
+ GtkDirectionType direction);
+static void gtk_paned_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
static void gtk_paned_add (GtkContainer *container,
GtkWidget *widget);
static void gtk_paned_remove (GtkContainer *container,
widget_class->size_allocate = gtk_paned_size_allocate;
widget_class->unrealize = gtk_paned_unrealize;
widget_class->focus = gtk_paned_focus;
- widget_class->style_updated = gtk_paned_style_updated;
+ widget_class->css_changed = gtk_paned_css_changed;
container_class->add = gtk_paned_add;
container_class->remove = gtk_paned_remove;
}
static void
-gtk_paned_style_updated (GtkWidget *widget)
+gtk_paned_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
- GtkStyleContext *context;
- GtkCssStyleChange *change = NULL;
-
- context = gtk_widget_get_style_context (widget);
- change = gtk_style_context_get_change (context);
-
- GTK_WIDGET_CLASS (gtk_paned_parent_class)->style_updated (widget);
+ GTK_WIDGET_CLASS (gtk_paned_parent_class)->css_changed (widget, change);
if (change == NULL ||
gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_ICON_SIZE))
}
static void
-gtk_spinner_style_updated (GtkWidget *widget)
+gtk_spinner_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
- GtkStyleContext *context;
- GtkCssStyleChange *change = NULL;
-
- context = gtk_widget_get_style_context (widget);
- change = gtk_style_context_get_change (context);
-
- GTK_WIDGET_CLASS (gtk_spinner_parent_class)->style_updated (widget);
+ GTK_WIDGET_CLASS (gtk_spinner_parent_class)->css_changed (widget, change);
if (change == NULL ||
gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_ICON_SIZE))
widget_class = GTK_WIDGET_CLASS(klass);
widget_class->snapshot = gtk_spinner_snapshot;
widget_class->measure = gtk_spinner_measure;
- widget_class->style_updated = gtk_spinner_style_updated;
+ widget_class->css_changed = gtk_spinner_css_changed;
/* GtkSpinner:active:
*
{
GtkWidget *widget = gtk_css_widget_node_get_widget (GTK_CSS_WIDGET_NODE (priv->cssnode));
if (widget != NULL)
- _gtk_widget_style_context_invalidated (widget);
+ gtk_widget_css_changed (widget, gtk_style_context_get_change (context));
}
}
* #GtkStyleContext.
*
* For a #GtkStyleContext returned by gtk_widget_get_style_context(), the
- * #GtkWidget::style-updated signal/vfunc might be more convenient to use.
+ * #GtkWidget:css-changed vfunc might be more convenient to use.
*
* This signal is useful when using the theming layer standalone.
*/
static void gtk_text_focus_in (GtkWidget *widget);
static void gtk_text_focus_out (GtkWidget *widget);
static gboolean gtk_text_grab_focus (GtkWidget *widget);
-static void gtk_text_style_updated (GtkWidget *widget);
+static void gtk_text_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
static void gtk_text_direction_changed (GtkWidget *widget,
GtkTextDirection previous_dir);
static void gtk_text_state_flags_changed (GtkWidget *widget,
widget_class->size_allocate = gtk_text_size_allocate;
widget_class->snapshot = gtk_text_snapshot;
widget_class->grab_focus = gtk_text_grab_focus;
- widget_class->style_updated = gtk_text_style_updated;
+ widget_class->css_changed = gtk_text_css_changed;
widget_class->direction_changed = gtk_text_direction_changed;
widget_class->state_flags_changed = gtk_text_state_flags_changed;
widget_class->root = gtk_text_root;
}
static void
-gtk_text_style_updated (GtkWidget *widget)
+gtk_text_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
GtkText *self = GTK_TEXT (widget);
- GtkStyleContext *context;
- GtkCssStyleChange *change = NULL;
-
- context = gtk_widget_get_style_context (widget);
- change = gtk_style_context_get_change (context);
- GTK_WIDGET_CLASS (gtk_text_parent_class)->style_updated (widget);
+ GTK_WIDGET_CLASS (gtk_text_parent_class)->css_changed (widget, change);
gtk_text_update_cached_style_values (self);
int width,
int height,
int baseline);
-static void gtk_text_view_realize (GtkWidget *widget);
-static void gtk_text_view_unrealize (GtkWidget *widget);
-static void gtk_text_view_map (GtkWidget *widget);
-static void gtk_text_view_style_updated (GtkWidget *widget);
+static void gtk_text_view_realize (GtkWidget *widget);
+static void gtk_text_view_unrealize (GtkWidget *widget);
+static void gtk_text_view_map (GtkWidget *widget);
+static void gtk_text_view_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
static void gtk_text_view_direction_changed (GtkWidget *widget,
GtkTextDirection previous_direction);
static void gtk_text_view_state_flags_changed (GtkWidget *widget,
widget_class->realize = gtk_text_view_realize;
widget_class->unrealize = gtk_text_view_unrealize;
widget_class->map = gtk_text_view_map;
- widget_class->style_updated = gtk_text_view_style_updated;
+ widget_class->css_changed = gtk_text_view_css_changed;
widget_class->direction_changed = gtk_text_view_direction_changed;
widget_class->state_flags_changed = gtk_text_view_state_flags_changed;
widget_class->measure = gtk_text_view_measure;
}
static void
-gtk_text_view_style_updated (GtkWidget *widget)
+gtk_text_view_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
GtkTextView *text_view;
GtkTextViewPrivate *priv;
PangoContext *ltr_context, *rtl_context;
- GtkStyleContext *style_context;
- GtkCssStyleChange *change;
text_view = GTK_TEXT_VIEW (widget);
priv = text_view->priv;
- GTK_WIDGET_CLASS (gtk_text_view_parent_class)->style_updated (widget);
-
- style_context = gtk_widget_get_style_context (widget);
- change = gtk_style_context_get_change (style_context);
+ GTK_WIDGET_CLASS (gtk_text_view_parent_class)->css_changed (widget, change);
if ((change == NULL ||
gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_TEXT |
int width,
int height,
int baseline);
-static void gtk_toolbar_style_updated (GtkWidget *widget);
+static void gtk_toolbar_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
static gboolean gtk_toolbar_focus (GtkWidget *widget,
GtkDirectionType dir);
static void gtk_toolbar_move_focus (GtkWidget *widget,
widget_class->snapshot = gtk_toolbar_snapshot;
widget_class->measure = gtk_toolbar_measure;
widget_class->size_allocate = gtk_toolbar_size_allocate;
- widget_class->style_updated = gtk_toolbar_style_updated;
+ widget_class->css_changed = gtk_toolbar_css_changed;
widget_class->focus = gtk_toolbar_focus;
gtk_widget_class_set_accessible_role (widget_class, ATK_ROLE_TOOL_BAR);
}
static void
-gtk_toolbar_style_updated (GtkWidget *widget)
+gtk_toolbar_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
GtkToolbar *toolbar = GTK_TOOLBAR (widget);
GtkToolbarPrivate *priv = toolbar->priv;
- GTK_WIDGET_CLASS (gtk_toolbar_parent_class)->style_updated (widget);
+ GTK_WIDGET_CLASS (gtk_toolbar_parent_class)->css_changed (widget, change);
priv->max_homogeneous_pixels = -1;
}
static gint gtk_tree_view_focus (GtkWidget *widget,
GtkDirectionType direction);
static gboolean gtk_tree_view_grab_focus (GtkWidget *widget);
-static void gtk_tree_view_style_updated (GtkWidget *widget);
+static void gtk_tree_view_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
/* container signals */
static void gtk_tree_view_remove (GtkContainer *container,
widget_class->snapshot = gtk_tree_view_snapshot;
widget_class->focus = gtk_tree_view_focus;
widget_class->grab_focus = gtk_tree_view_grab_focus;
- widget_class->style_updated = gtk_tree_view_style_updated;
+ widget_class->css_changed = gtk_tree_view_css_changed;
/* GtkContainer signals */
container_class->remove = gtk_tree_view_remove;
}
static void
-gtk_tree_view_style_updated (GtkWidget *widget)
+gtk_tree_view_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
GtkTreeView *tree_view = GTK_TREE_VIEW (widget);
GList *list;
GtkTreeViewColumn *column;
- GtkStyleContext *style_context;
- GtkCssStyleChange *change;
- GTK_WIDGET_CLASS (gtk_tree_view_parent_class)->style_updated (widget);
+ GTK_WIDGET_CLASS (gtk_tree_view_parent_class)->css_changed (widget, change);
if (gtk_widget_get_realized (widget))
{
gtk_tree_view_set_enable_tree_lines (tree_view, tree_view->tree_lines_enabled);
}
- style_context = gtk_widget_get_style_context (widget);
- change = gtk_style_context_get_change (style_context);
-
if (change == NULL || gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_SIZE))
{
for (list = tree_view->columns; list; list = list->next)
typedef struct _GtkBuilder GtkBuilder;
typedef struct _GtkBuilderScope GtkBuilderScope;
typedef struct _GtkClipboard GtkClipboard;
+typedef struct _GtkCssStyleChange GtkCssStyleChange;
typedef struct _GtkEventController GtkEventController;
typedef struct _GtkGesture GtkGesture;
typedef struct _GtkLayoutManager GtkLayoutManager;
gint y,
gboolean keyboard_tip,
GtkTooltip *tooltip);
-static void gtk_widget_real_style_updated (GtkWidget *widget);
+static void gtk_widget_real_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
static gboolean gtk_widget_real_focus (GtkWidget *widget,
GtkDirectionType direction);
klass->keynav_failed = gtk_widget_real_keynav_failed;
klass->can_activate_accel = gtk_widget_real_can_activate_accel;
klass->query_tooltip = gtk_widget_real_query_tooltip;
- klass->style_updated = gtk_widget_real_style_updated;
+ klass->css_changed = gtk_widget_real_css_changed;
/* Accessibility support */
klass->priv->accessible_type = GTK_TYPE_ACCESSIBLE;
G_TYPE_NONE, 1,
GTK_TYPE_STATE_FLAGS);
- /**
- * GtkWidget::style-updated:
- * @widget: the object on which the signal is emitted
- *
- * The ::style-updated signal is a convenience signal that is emitted when the
- * #GtkStyleContext::changed signal is emitted on the @widget's associated
- * #GtkStyleContext as returned by gtk_widget_get_style_context().
- */
- widget_signals[STYLE_UPDATED] =
- g_signal_new (I_("style-updated"),
- G_TYPE_FROM_CLASS (gobject_class),
- G_SIGNAL_RUN_FIRST,
- G_STRUCT_OFFSET (GtkWidgetClass, style_updated),
- NULL, NULL,
- NULL,
- G_TYPE_NONE, 0);
-
/**
* GtkWidget::direction-changed:
* @widget: the object on which the signal is emitted
}
static void
-gtk_widget_real_style_updated (GtkWidget *widget)
+gtk_widget_real_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
- GtkCssStyleChange *change = NULL;
gtk_widget_update_alpha (widget);
- if (priv->context)
- change = gtk_style_context_get_change (priv->context);
-
if (change)
{
const gboolean has_text = gtk_widget_peek_pango_context (widget) != NULL;
}
void
-_gtk_widget_style_context_invalidated (GtkWidget *widget)
+gtk_widget_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
- g_signal_emit (widget, widget_signals[STYLE_UPDATED], 0);
+ GTK_WIDGET_GET_CLASS (widget)->css_changed (widget, change);
}
GtkCssNode *
* widget; or emitted when widget got focus in keyboard mode.
* @compute_expand: Computes whether a container should give this
* widget extra space when possible.
- * @style_updated: Signal emitted when the GtkStyleContext of a widget
- * is changed.
+ * @css_changed: Signal emitted when the CSS used by widget was changed. Widgets
+ * should then discard their caches that depend on CSS and queue resizes or
+ * redraws accordingly. The default implementation will take care of this for
+ * all the default CSS properties, so implementations must chain up.
* @snapshot: Vfunc for gtk_widget_snapshot().
* @contains: Vfunc for gtk_widget_contains().
*/
gboolean *hexpand_p,
gboolean *vexpand_p);
- void (* style_updated) (GtkWidget *widget);
+ void (* css_changed) (GtkWidget *widget,
+ GtkCssStyleChange *change);
void (* snapshot) (GtkWidget *widget,
GtkSnapshot *snapshot);
gboolean _gtk_widget_captured_event (GtkWidget *widget,
GdkEvent *event);
-void _gtk_widget_style_context_invalidated (GtkWidget *widget);
+void gtk_widget_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
void _gtk_widget_update_parent_muxer (GtkWidget *widget);
GtkActionMuxer * _gtk_widget_get_action_muxer (GtkWidget *widget,
const char *action_name,
GVariant *parameter);
-static void gtk_window_do_popup (GtkWindow *window,
- GdkEventButton *event);
-static void gtk_window_style_updated (GtkWidget *widget);
+static void gtk_window_do_popup (GtkWindow *window,
+ GdkEventButton *event);
+static void gtk_window_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change);
static void gtk_window_state_flags_changed (GtkWidget *widget,
GtkStateFlags previous_state);
static void _gtk_window_set_is_active (GtkWindow *window,
widget_class->move_focus = gtk_window_move_focus;
widget_class->measure = gtk_window_measure;
widget_class->state_flags_changed = gtk_window_state_flags_changed;
- widget_class->style_updated = gtk_window_style_updated;
+ widget_class->css_changed = gtk_window_css_changed;
widget_class->snapshot = gtk_window_snapshot;
container_class->add = gtk_window_add;
}
static void
-gtk_window_style_updated (GtkWidget *widget)
+gtk_window_css_changed (GtkWidget *widget,
+ GtkCssStyleChange *change)
{
- GtkCssStyleChange *change = gtk_style_context_get_change (gtk_widget_get_style_context (widget));
GtkWindow *window = GTK_WINDOW (widget);
- GTK_WIDGET_CLASS (gtk_window_parent_class)->style_updated (widget);
+ GTK_WIDGET_CLASS (gtk_window_parent_class)->css_changed (widget, change);
if (!_gtk_widget_get_alloc_needed (widget) &&
(change == NULL || gtk_css_style_change_changes_property (change, GTK_CSS_PROPERTY_BACKGROUND_COLOR)))
<property name="fixed-height-mode">1</property>
<signal name="cursor-changed" handler="cursor_changed_cb" swapped="no"/>
<signal name="row-activated" handler="row_activated_cb" swapped="no"/>
- <signal name="style-updated" handler="gtk_font_chooser_widget_set_cell_size" object="GtkFontChooserWidget" after="yes" swapped="yes"/>
<child internal-child="selection">
<object class="GtkTreeSelection" id="treeview-selection1">
<property name="mode">browse</property>