* elsewhere.
* @event: (nullable): the event that is triggering the grab, or %NULL if none
* is available.
- * @prepare_func: (nullable) (scope call) (closure prepare_func_data): function to
+ * @prepare_func: (nullable) (scope call): function to
* prepare the surface to be grabbed, it can be %NULL if @surface is
* visible before this call.
- * @prepare_func_data: user data to pass to @prepare_func
+ * @prepare_func_data: (closure): user data to pass to @prepare_func
*
* Grabs the seat so that all events corresponding to the given @capabilities
* are passed to this application until the seat is ungrabbed with gdk_seat_ungrab(),
/**
* gtk_container_forall: (virtual forall)
* @container: a #GtkContainer
- * @callback: (scope call) (closure callback_data): a callback
- * @callback_data: callback user data
+ * @callback: (scope call): a callback
+ * @callback_data: (closure): callback user data
*
* Invokes @callback on each direct child of @container, including
* children that are considered “internal” (implementation details
/**
* gtk_drawing_area_set_draw_func:
* @self: a #GtkDrawingArea
- * @draw_func: (closure user_data) (allow-none): callback that lets you draw
+ * @draw_func: (allow-none): callback that lets you draw
* the drawing area's contents
- * @user_data: user data passed to @draw_func
+ * @user_data: (closure): user data passed to @draw_func
* @destroy: destroy notifier for @user_data
*
* Setting a draw function is the main thing you want to do when using a drawing
/**
* gtk_flow_box_set_filter_func:
* @box: a #GtkFlowBox
- * @filter_func: (closure user_data) (allow-none): callback that
+ * @filter_func: (allow-none): callback that
* lets you filter which children to show
- * @user_data: user data passed to @filter_func
+ * @user_data: (closure): user data passed to @filter_func
* @destroy: destroy notifier for @user_data
*
* By setting a filter function on the @box one can decide dynamically
/**
* gtk_flow_box_set_sort_func:
* @box: a #GtkFlowBox
- * @sort_func: (closure user_data) (allow-none): the sort function
- * @user_data: user data passed to @sort_func
+ * @sort_func: (allow-none): the sort function
+ * @user_data: (closure): user data passed to @sort_func
* @destroy: destroy notifier for @user_data
*
* By setting a sort function on the @box, one can dynamically
/**
* gtk_list_box_set_filter_func:
* @box: a #GtkListBox
- * @filter_func: (closure user_data) (allow-none): callback that lets you filter which rows to show
- * @user_data: user data passed to @filter_func
+ * @filter_func: (allow-none): callback that lets you filter which rows to show
+ * @user_data: (closure): user data passed to @filter_func
* @destroy: destroy notifier for @user_data
*
* By setting a filter function on the @box one can decide dynamically which
/**
* gtk_list_box_set_header_func:
* @box: a #GtkListBox
- * @update_header: (closure user_data) (allow-none): callback that lets you add row headers
- * @user_data: user data passed to @update_header
+ * @update_header: (allow-none): callback that lets you add row headers
+ * @user_data: (closure): user data passed to @update_header
* @destroy: destroy notifier for @user_data
*
* By setting a header function on the @box one can dynamically add headers
/**
* gtk_list_box_set_sort_func:
* @box: a #GtkListBox
- * @sort_func: (closure user_data) (allow-none): the sort function
- * @user_data: user data passed to @sort_func
+ * @sort_func: (allow-none): the sort function
+ * @user_data: (closure): user data passed to @sort_func
* @destroy: destroy notifier for @user_data
*
* By setting a sort function on the @box one can dynamically reorder the rows