itemmananger: Remove the user data
authorBenjamin Otte <otte@redhat.com>
Sun, 12 Mar 2023 00:13:37 +0000 (01:13 +0100)
committerBenjamin Otte <otte@redhat.com>
Thu, 23 Mar 2023 03:45:03 +0000 (04:45 +0100)
Use the widget instead. They're the same anyway.

gtk/gtklistbase.c
gtk/gtklistitemmanager.c
gtk/gtklistitemmanagerprivate.h

index f786e197613d7389b9b0019f6880361513fa9d98..1adecc87f33f2c2631c8e86502890026fae8ad64 100644 (file)
@@ -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;
index 18a96713ec932e03ffc63b4e1d1294dacbeca2df..b959406c7995323e8d04651f7c9dec8baf18759e 100644 (file)
@@ -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
index fdfca67f258d76e64fb03b11aa1a07994e760393..bd49838db9f53fd9ed7c319a99ea5fc94a3554fe 100644 (file)
@@ -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);