From: Benjamin Otte Date: Sun, 12 Mar 2023 00:13:37 +0000 (+0100) Subject: itemmananger: Remove the user data X-Git-Tag: archive/raspbian/4.12.3+ds-1+rpi1~1^2^2^2~22^2~1^2~514^2~13 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=a18760a0942553a7fea54fafe6b8f5921782df89;p=gtk4.git itemmananger: Remove the user data Use the widget instead. They're the same anyway. --- diff --git a/gtk/gtklistbase.c b/gtk/gtklistbase.c index f786e19761..1adecc87f3 100644 --- a/gtk/gtklistbase.c +++ b/gtk/gtklistbase.c @@ -1913,11 +1913,11 @@ gtk_list_base_drag_leave (GtkDropControllerMotion *motion, } static GtkListTile * -gtk_list_base_split_func (gpointer data, +gtk_list_base_split_func (GtkWidget *widget, GtkListTile *tile, guint n_items) { - return GTK_LIST_BASE_GET_CLASS (data)->split (data, tile, n_items); + return GTK_LIST_BASE_GET_CLASS (widget)->split (GTK_LIST_BASE (widget), tile, n_items); } static void @@ -1930,8 +1930,7 @@ gtk_list_base_init_real (GtkListBase *self, priv->item_manager = gtk_list_item_manager_new (GTK_WIDGET (self), g_class->list_item_name, g_class->list_item_role, - gtk_list_base_split_func, - self); + gtk_list_base_split_func); priv->anchor = gtk_list_item_tracker_new (priv->item_manager); priv->anchor_side_along = GTK_PACK_START; priv->anchor_side_across = GTK_PACK_START; diff --git a/gtk/gtklistitemmanager.c b/gtk/gtklistitemmanager.c index 18a96713ec..b959406c79 100644 --- a/gtk/gtklistitemmanager.c +++ b/gtk/gtklistitemmanager.c @@ -38,8 +38,7 @@ struct _GtkListItemManager GtkRbTree *items; GSList *trackers; - GtkListTile * (* split_func) (gpointer, GtkListTile *, guint); - gpointer user_data; + GtkListTile * (* split_func) (GtkWidget *, GtkListTile *, guint); }; struct _GtkListItemManagerClass @@ -133,8 +132,7 @@ GtkListItemManager * gtk_list_item_manager_new (GtkWidget *widget, const char *item_css_name, GtkAccessibleRole item_role, - GtkListTile * (* split_func) (gpointer, GtkListTile *, guint), - gpointer user_data) + GtkListTile * (* split_func) (GtkWidget *, GtkListTile *, guint)) { GtkListItemManager *self; @@ -147,7 +145,6 @@ gtk_list_item_manager_new (GtkWidget *widget, self->item_css_name = g_intern_string (item_css_name); self->item_role = item_role; self->split_func = split_func; - self->user_data = user_data; self->items = gtk_rb_tree_new_for_size (sizeof (GtkListTile), sizeof (GtkListTileAugment), @@ -571,7 +568,7 @@ gtk_list_item_manager_ensure_split (GtkListItemManager *self, GtkListTile *tile, guint n_items) { - return self->split_func (self->user_data, tile, n_items); + return self->split_func (self->widget, tile, n_items); } static void diff --git a/gtk/gtklistitemmanagerprivate.h b/gtk/gtklistitemmanagerprivate.h index fdfca67f25..bd49838db9 100644 --- a/gtk/gtklistitemmanagerprivate.h +++ b/gtk/gtklistitemmanagerprivate.h @@ -64,8 +64,7 @@ GType gtk_list_item_manager_get_type (void) G_GNUC_CO GtkListItemManager * gtk_list_item_manager_new (GtkWidget *widget, const char *item_css_name, GtkAccessibleRole item_role, - GtkListTile * (* split_func) (gpointer, GtkListTile *, guint), - gpointer user_data); + GtkListTile * (* split_func) (GtkWidget *, GtkListTile *, guint)); void gtk_list_item_manager_get_tile_bounds (GtkListItemManager *self, GdkRectangle *out_bounds);