[gtkmm] Gdk, Gtk: Regenerate docs.xml and .defs files



commit 829122b22ef4a979f3cec5a4412b2fbe1f59fa26
Author: Kjell Ahlstedt <kjellahlstedt gmail com>
Date:   Tue Jun 2 18:42:57 2020 +0200

    Gdk, Gtk: Regenerate docs.xml and .defs files
    
    and update gtk_extra_objects.defs

 gdk/src/gdk_docs.xml           |   79 +-
 gdk/src/gdk_methods.defs       |   51 +-
 gtk/src/gtk_docs.xml           | 4195 ++++++++++++++++++++++++++++++++++++++--
 gtk/src/gtk_enums.defs         |  112 ++
 gtk/src/gtk_extra_objects.defs |    6 +
 gtk/src/gtk_methods.defs       | 1637 +++++++++++++++-
 gtk/src/gtk_signals.defs       |    8 +-
 7 files changed, 5844 insertions(+), 244 deletions(-)
---
diff --git a/gdk/src/gdk_docs.xml b/gdk/src/gdk_docs.xml
index 3b7b7385..867e5969 100644
--- a/gdk/src/gdk_docs.xml
+++ b/gdk/src/gdk_docs.xml
@@ -599,7 +599,7 @@ changes its value.
 
 <property name="GdkDisplay:composited">
 <description>
-%TRUE if the display properly composits the alpha channel.
+%TRUE if the display properly composites the alpha channel.
 See gdk_display_is_composited() for details.
 
 </description>
@@ -2246,7 +2246,7 @@ of physical pixels on an output device are laid out.
 </parameters>
 </enum>
 
-<signal name="GdkSurface::enter-montor">
+<signal name="GdkSurface::enter-monitor">
 <description>
 Emitted when @surface starts being present on the monitor.
 
@@ -2284,7 +2284,7 @@ Emitted when GDK receives an input event for @surface.
 </return>
 </signal>
 
-<signal name="GdkSurface::leave-montor">
+<signal name="GdkSurface::leave-monitor">
 <description>
 Emitted when @surface stops being present on the monitor.
 
@@ -5262,7 +5262,7 @@ system.
 </parameter_description>
 </parameter>
 <parameter name="surface">
-<parameter_description> the surface with respect to which which the event coordinates will be reported
+<parameter_description> the surface with respect to which the event coordinates will be reported
 </parameter_description>
 </parameter>
 <parameter name="start">
@@ -6433,6 +6433,9 @@ event queue
 Appends the given event onto the front of the event
 queue for @display.
 
+This function is only useful in very special situations
+and should not be used by applications.
+
 </description>
 <parameters>
 <parameter name="display">
@@ -6486,6 +6489,68 @@ handled synchronously, this function will do nothing.
 <return></return>
 </function>
 
+<function name="gdk_display_translate_key">
+<description>
+Translates the contents of a #GdkEventKey (ie @keycode, @state, and @group)
+into a keyval, effective group, and level. Modifiers that affected the
+translation and are thus unavailable for application use are returned in
+@consumed_modifiers.
+
+The @effective_group is the group that was actually used for the translation;
+some keys such as Enter are not affected by the active keyboard group.
+The @level is derived from @state.
+
+@consumed_modifiers gives modifiers that should be masked outfrom @state
+when comparing this key press to a keyboard shortcut. For instance, on a US
+keyboard, the `plus` symbol is shifted, so when comparing a key press to a
+`&lt;Control&gt;plus` accelerator `&lt;Shift&gt;` should be masked out.
+
+This function should rarely be needed, since #GdkEventKey already contains
+the translated keyval. It is exported for the benefit of virtualized test
+environments.
+
+
+</description>
+<parameters>
+<parameter name="display">
+<parameter_description> a #GdkDisplay
+</parameter_description>
+</parameter>
+<parameter name="keycode">
+<parameter_description> a keycode
+</parameter_description>
+</parameter>
+<parameter name="state">
+<parameter_description> a modifier state
+</parameter_description>
+</parameter>
+<parameter name="group">
+<parameter_description> active keyboard group
+</parameter_description>
+</parameter>
+<parameter name="keyval">
+<parameter_description> return location for keyval, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="effective_group">
+<parameter_description> return location for effective
+group, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="level">
+<parameter_description> return location for level, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="consumed">
+<parameter_description> return location for modifiers
+that were used to determine the group or level, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if there was a keyval bound to keycode/state/group.
+</return>
+</function>
+
 <function name="gdk_dnd_event_get_drop">
 <description>
 Gets the #GdkDrop from a DND event.
@@ -14691,7 +14756,7 @@ Releases a grab added through gdk_seat_grab().
 <description>
 Sets a list of backends that GDK should try to use.
 
-This can be be useful if your application does not
+This can be useful if your application does not
 work with certain GDK backends.
 
 By default, GDK tries all included backends.
@@ -15077,7 +15142,7 @@ gdk_surface_show_unraised()).
 
 <function name="gdk_surface_get_scale_factor">
 <description>
-Returns the internal scale factor that maps from surface coordiantes
+Returns the internal scale factor that maps from surface coordinates
 to the actual device pixels. On traditional systems this is 1, but
 on very high density outputs this can be a higher value (often 2).
 
@@ -15820,7 +15885,7 @@ actions.
 
 If granted, the rerouting remains active until the default shortcuts
 processing is restored with gdk_toplevel_restore_system_shortcuts(),
-or the request is revoked by the desktop enviroment, windowing system
+or the request is revoked by the desktop environment, windowing system
 or the user.
 
 A typical use case for this API is remote desktop or virtual machine
diff --git a/gdk/src/gdk_methods.defs b/gdk/src/gdk_methods.defs
index 2518302e..95bdeed6 100644
--- a/gdk/src/gdk_methods.defs
+++ b/gdk/src/gdk_methods.defs
@@ -1798,33 +1798,6 @@
   (return-type "gboolean")
 )
 
-(define-method get_event
-  (of-object "GdkDisplay")
-  (c-name "gdk_display_get_event")
-  (return-type "GdkEvent*")
-)
-
-(define-method peek_event
-  (of-object "GdkDisplay")
-  (c-name "gdk_display_peek_event")
-  (return-type "GdkEvent*")
-)
-
-(define-method put_event
-  (of-object "GdkDisplay")
-  (c-name "gdk_display_put_event")
-  (return-type "none")
-  (parameters
-    '("GdkEvent*" "event")
-  )
-)
-
-(define-method has_pending
-  (of-object "GdkDisplay")
-  (c-name "gdk_display_has_pending")
-  (return-type "gboolean")
-)
-
 (define-function gdk_display_get_default
   (c-name "gdk_display_get_default")
   (return-type "GdkDisplay*")
@@ -1896,6 +1869,15 @@
   )
 )
 
+(define-method put_event
+  (of-object "GdkDisplay")
+  (c-name "gdk_display_put_event")
+  (return-type "none")
+  (parameters
+    '("GdkEvent*" "event")
+  )
+)
+
 (define-method map_keyval
   (of-object "GdkDisplay")
   (c-name "gdk_display_map_keyval")
@@ -1919,6 +1901,21 @@
   )
 )
 
+(define-method translate_key
+  (of-object "GdkDisplay")
+  (c-name "gdk_display_translate_key")
+  (return-type "gboolean")
+  (parameters
+    '("guint" "keycode")
+    '("GdkModifierType" "state")
+    '("int" "group")
+    '("guint*" "keyval")
+    '("int*" "effective_group")
+    '("int*" "level")
+    '("GdkModifierType*" "consumed")
+  )
+)
+
 (define-method get_setting
   (of-object "GdkDisplay")
   (c-name "gdk_display_get_setting")
diff --git a/gtk/src/gtk_docs.xml b/gtk/src/gtk_docs.xml
index b96b0cec..7d942a3c 100644
--- a/gtk/src/gtk_docs.xml
+++ b/gtk/src/gtk_docs.xml
@@ -798,10 +798,10 @@ add its own buttons through gtk_assistant_add_action_widget().
 <description>
 Whenever a container has some form of natural row it may align
 children in that row along a common typographical baseline. If
-the amount of verical space in the row is taller than the total
+the amount of vertical space in the row is taller than the total
 requested height of the baseline-aligned children then it can use a
 #GtkBaselinePosition to select where to put the baseline inside the
-extra availible space.
+extra available space.
 
 </description>
 <parameters>
@@ -1021,6 +1021,27 @@ when symbols are set to be kept private. Compiling code with -rdynamic or using
 </parameters>
 </enum>
 
+<property name="GtkBuilderListItemFactory:bytes">
+<description>
+bytes containing the UI definition
+
+</description>
+</property>
+
+<property name="GtkBuilderListItemFactory:resource">
+<description>
+resource containing the UI definition
+
+</description>
+</property>
+
+<property name="GtkBuilderListItemFactory:scope">
+<description>
+scope to use when instantiating listitems
+
+</description>
+</property>
+
 <signal name="GtkButton::activate">
 <description>
 The ::activate signal on GtkButton is an action signal and
@@ -2236,6 +2257,98 @@ the color chooser into single-color editing mode.
 </description>
 </property>
 
+<signal name="GtkColumnView::activate">
+<description>
+The ::activate signal is emitted when a row has been activated by the user,
+usually via activating the GtkListBase|list.activate-item action.
+
+This allows for a convenient way to handle activation in a columnview.
+See gtk_list_item_set_activatable() for details on how to use this signal.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> The #GtkColumnView
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> position of item to activate
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</signal>
+
+<property name="GtkColumnView:columns">
+<description>
+The list of columns
+
+</description>
+</property>
+
+<property name="GtkColumnView:model">
+<description>
+Model for the items displayed
+
+</description>
+</property>
+
+<property name="GtkColumnView:show-separators">
+<description>
+Show separators between rows
+
+</description>
+</property>
+
+<property name="GtkColumnView:single-click-activate">
+<description>
+Activate rows on single click and select them on hover
+
+</description>
+</property>
+
+<property name="GtkColumnView:sorter">
+<description>
+Sorter with the sorting choices of the user
+
+</description>
+</property>
+
+<property name="GtkColumnViewColumn:column-view">
+<description>
+#GtkColumnView this column is a part of
+
+</description>
+</property>
+
+<property name="GtkColumnViewColumn:factory">
+<description>
+Factory for populating list items
+
+</description>
+</property>
+
+<property name="GtkColumnViewColumn:sorter">
+<description>
+Sorter for sorting items according to this column
+
+</description>
+</property>
+
+<property name="GtkColumnViewColumn:title">
+<description>
+Title displayed in the header
+
+</description>
+</property>
+
+<property name="GtkColumnViewColumn:visible">
+<description>
+Whether this column is visible
+
+</description>
+</property>
+
 <signal name="GtkComboBox::changed">
 <description>
 The changed signal is emitted when the active
@@ -2863,7 +2976,7 @@ left/right of cursor if we’re in the middle of a word.
 </parameter>
 <parameter name="GTK_DELETE_DISPLAY_LINES">
 <parameter_description> Delete display-lines. Display-lines
-refers to the visible lines, with respect to to the current line
+refers to the visible lines, with respect to the current line
 breaks. As opposed to paragraphs, which are defined by line
 breaks in the input.
 </parameter_description>
@@ -2993,6 +3106,48 @@ Focus movement types.
 </parameters>
 </enum>
 
+<property name="GtkDirectoryList:attributes">
+<description>
+The attributes to query
+
+</description>
+</property>
+
+<property name="GtkDirectoryList:error">
+<description>
+Error encountered while loading files
+
+</description>
+</property>
+
+<property name="GtkDirectoryList:file">
+<description>
+File to query
+
+</description>
+</property>
+
+<property name="GtkDirectoryList:io-priority">
+<description>
+Priority used when loading
+
+</description>
+</property>
+
+<property name="GtkDirectoryList:item-type">
+<description>
+The #GType for elements of this object
+
+</description>
+</property>
+
+<property name="GtkDirectoryList:loading">
+<description>
+%TRUE if files are being loaded
+
+</description>
+</property>
+
 <property name="GtkDragIcon:child">
 <description>
 The widget to display as drag icon.
@@ -3256,6 +3411,56 @@ before #GtkDropControllerMotion::enter but after
 </description>
 </property>
 
+<property name="GtkDropDown:enable-search">
+<description>
+Whether to show a search entry in the popup.
+
+Note that search requires #GtkDropDown:expression to be set.
+
+</description>
+</property>
+
+<property name="GtkDropDown:expression">
+<description>
+An expression to evaluate to obtain strings to match against the search
+term (see #GtkDropDown:enable-search). If #GtkDropDown:factory is not set,
+the expression is also used to bind strings to labels produced by a
+default factory.
+
+</description>
+</property>
+
+<property name="GtkDropDown:factory">
+<description>
+Factory for populating list items.
+
+</description>
+</property>
+
+<property name="GtkDropDown:list-factory">
+<description>
+The factory for populating list items in the popup.
+
+If this is not set, #GtkDropDown:factory is used.
+
+</description>
+</property>
+
+<property name="GtkDropDown:model">
+<description>
+Model for the displayed items.
+
+</description>
+</property>
+
+<property name="GtkDropDown:selected">
+<description>
+The position of the selected item in #GtkDropDown:model,
+or #GTK_INVALID_LIST_POSITION if no item is selected.
+
+</description>
+</property>
+
 <signal name="GtkDropTarget::accept">
 <description>
 The ::accept signal is emitted on the drop site when a drop operation
@@ -4537,10 +4742,6 @@ Signals that the pointer has entered the widget.
 <parameter_description> coordinates of pointer location
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> crossing mode
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </signal>
@@ -4555,10 +4756,6 @@ Signals that the pointer has left the widget.
 <parameter_description> the object which received the signal
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> crossing mode
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </signal>
@@ -5236,9 +5433,53 @@ display the file in the file chooser
 </parameters>
 </enum>
 
-<property name="GtkFilterListModel:has-filter">
+<property name="GtkFilter:changed">
 <description>
-If a filter is set for this model
+This signal is emitted whenever the filter changed. Users of the filter
+should then check items again via gtk_filter_match().
+
+#GtkFilterListModel handles this signal automatically.
+
+Depending on the @change parameter, not all items need to be changed, but
+only some. Refer to the #GtkFilterChange documentation for details.
+
+</description>
+</property>
+
+<enum name="GtkFilterChange">
+<description>
+Describes changes in a filter in more detail and allows objects
+using the filter to optimize refiltering items.
+
+If you are writing an implementation and are not sure which
+value to pass, @GTK_FILTER_CHANGE_DIFFERENT is always a correct
+choice.
+
+</description>
+<parameters>
+<parameter name="GTK_FILTER_CHANGE_DIFFERENT">
+<parameter_description> The filter change cannot be
+described with any of the other enumeration values.
+</parameter_description>
+</parameter>
+<parameter name="GTK_FILTER_CHANGE_LESS_STRICT">
+<parameter_description> The filter is less strict than
+it was before: All items that it used to return %TRUE for
+still return %TRUE, others now may, too.
+</parameter_description>
+</parameter>
+<parameter name="GTK_FILTER_CHANGE_MORE_STRICT">
+<parameter_description> The filter is more strict than
+it was before: All items that it used to return %FALSE for
+still return %FALSE, others now may, too.
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<property name="GtkFilterListModel:filter">
+<description>
+The filter for this model
 
 </description>
 </property>
@@ -5257,6 +5498,34 @@ The model being filtered
 </description>
 </property>
 
+<enum name="GtkFilterMatch">
+<description>
+Describes the known strictness of a filter.
+
+Note that for filters where the strictness is not known,
+%@GTK_FILTER_MATCH_SOME is always an acceptable value,
+even if a filter does match all or no items.
+
+</description>
+<parameters>
+<parameter name="GTK_FILTER_MATCH_SOME">
+<parameter_description> The filter matches some items,
+gtk_filter_match() may return %TRUE or %FALSE
+</parameter_description>
+</parameter>
+<parameter name="GTK_FILTER_MATCH_NONE">
+<parameter_description> The filter does not match any item,
+gtk_filter_match() will always return %FALSE.
+</parameter_description>
+</parameter>
+<parameter name="GTK_FILTER_MATCH_ALL">
+<parameter_description> The filter matches all items,
+gtk_filter_match() will alays return %TRUE.
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <property name="GtkFlattenListModel:item-type">
 <description>
 The #GType for elements of this object
@@ -6314,6 +6583,66 @@ The row number to attach the top side of the child to.
 </description>
 </property>
 
+<signal name="GtkGridView::activate">
+<description>
+The ::activate signal is emitted when a cell has been activated by the user,
+usually via activating the GtkGridView|list.activate-item action.
+
+This allows for a convenient way to handle activation in a gridview.
+See GtkListItem:activatable for details on how to use this signal.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> The #GtkGridView
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> position of item to activate
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</signal>
+
+<property name="GtkGridView:factory">
+<description>
+Factory for populating list items
+
+</description>
+</property>
+
+<property name="GtkGridView:max-columns">
+<description>
+Maximum number of columns per row
+
+If this number is smaller than GtkGridView:min-columns, that value
+is used instead.
+
+</description>
+</property>
+
+<property name="GtkGridView:min-columns">
+<description>
+Minimum number of columns per row
+
+</description>
+</property>
+
+<property name="GtkGridView:model">
+<description>
+Model for the items displayed
+
+</description>
+</property>
+
+<property name="GtkGridView:single-click-activate">
+<description>
+Activate rows on single click and select them on hover
+
+</description>
+</property>
+
 <property name="GtkHeaderBar:decoration-layout">
 <description>
 The decoration layout for buttons. If this property is
@@ -7712,6 +8041,14 @@ different color.
 </description>
 </property>
 
+<property name="GtkListBase:orientation">
+<description>
+The orientation of the list. See GtkOrientable:orientation
+for details.
+
+</description>
+</property>
+
 <signal name="GtkListBox::row-activated">
 <description>
 The ::row-activated signal is emitted when a row has been activated by the user.
@@ -7832,6 +8169,98 @@ The property determines whether this row can be selected.
 </description>
 </property>
 
+<property name="GtkListItem:activatable">
+<description>
+If the item can be activated by the user
+
+</description>
+</property>
+
+<property name="GtkListItem:child">
+<description>
+Widget used for display
+
+</description>
+</property>
+
+<property name="GtkListItem:item">
+<description>
+Displayed item
+
+</description>
+</property>
+
+<property name="GtkListItem:position">
+<description>
+Position of the item
+
+</description>
+</property>
+
+<property name="GtkListItem:selectable">
+<description>
+If the item can be selected by the user
+
+</description>
+</property>
+
+<property name="GtkListItem:selected">
+<description>
+If the item is currently selected
+
+</description>
+</property>
+
+<signal name="GtkListView::activate">
+<description>
+The ::activate signal is emitted when a row has been activated by the user,
+usually via activating the GtkListView|list.activate-item action.
+
+This allows for a convenient way to handle activation in a listview.
+See gtk_list_item_set_activatable() for details on how to use this signal.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> The #GtkListView
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> position of item to activate
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</signal>
+
+<property name="GtkListView:factory">
+<description>
+Factory for populating list items
+
+</description>
+</property>
+
+<property name="GtkListView:model">
+<description>
+Model for the items displayed
+
+</description>
+</property>
+
+<property name="GtkListView:show-separators">
+<description>
+Show separators between rows
+
+</description>
+</property>
+
+<property name="GtkListView:single-click-activate">
+<description>
+Activate rows on single click and select them on hover
+
+</description>
+</property>
+
 <property name="GtkMapListModel:has-map">
 <description>
 If a map is set for this model
@@ -8273,7 +8702,7 @@ The transient parent of the dialog, or %NULL for none.
 
 <property name="GtkNativeDialog:visible">
 <description>
-Whether the window is currenlty visible.
+Whether the window is currently visible.
 
 </description>
 </property>
@@ -8453,6 +8882,46 @@ multiple pages per sheet.
 </parameters>
 </enum>
 
+<property name="GtkNumericSorter:expression">
+<description>
+The expression to evalute on items to get a number to compare with
+
+</description>
+</property>
+
+<property name="GtkNumericSorter:sort-order">
+<description>
+Whether the sorter will sort smaller numbers first
+
+</description>
+</property>
+
+<enum name="GtkOrdering">
+<description>
+Describes the way two values can be compared.
+
+These values can be used with a #GCompareFunc. However, a
+#GCompareFunc is allowed to return any integer values.  
+For converting such a value to a #GtkOrdering, use
+gtk_ordering_from_cmpfunc().
+
+</description>
+<parameters>
+<parameter name="GTK_ORDERING_SMALLER">
+<parameter_description> the first value is smaller than the second
+</parameter_description>
+</parameter>
+<parameter name="GTK_ORDERING_EQUAL">
+<parameter_description> the two values are equal
+</parameter_description>
+</parameter>
+<parameter name="GTK_ORDERING_LARGER">
+<parameter_description> the first value is larger than the second
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <property name="GtkOrientable:orientation">
 <description>
 The orientation of the orientable.
@@ -8537,6 +9006,21 @@ location for the allocation
 </return>
 </signal>
 
+<property name="GtkOverlayLayoutChild:clip-overlay">
+<description>
+Whether the child should be clipped to fit the parent's size.
+
+</description>
+</property>
+
+<property name="GtkOverlayLayoutChild:measure">
+<description>
+Whether the child size should contribute to the #GtkOverlayLayout's
+measurement.
+
+</description>
+</property>
+
 <enum name="GtkPackType">
 <description>
 Represents the packing location #GtkBox children
@@ -11647,6 +12131,97 @@ The name of the signal to emit.
 </description>
 </property>
 
+<signal name="GtkSignalListItemFactory::bind">
+<description>
+The ::bind signal is emitted when a new GtkListItem:item has been set
+on the @listitem and should be bound for use.
+
+After this signal was emitted, the listitem might be shown in a #GtkListView
+or other list widget.
+
+The GtkSignalListItemFactory::unbind signal is the opposite of this signal
+and can be used to undo everything done in this signal.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> The #GtkSignalListItemFactory
+</parameter_description>
+</parameter>
+<parameter name="listitem">
+<parameter_description> The #GtkListItem to bind
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</signal>
+
+<signal name="GtkSignalListItemFactory::setup">
+<description>
+The ::setup signal is emitted when a new listitem has been created and
+needs to be setup for use. It is the first signal emitted for every listitem.
+
+The GtkSignalListItemFactory::teardown signal is the opposite of this signal
+and can be used to undo everything done in this signal.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> The #GtkSignalListItemFactory
+</parameter_description>
+</parameter>
+<parameter name="listitem">
+<parameter_description> The #GtkListItem to set up
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</signal>
+
+<signal name="GtkSignalListItemFactory::teardown">
+<description>
+The ::teardown signal is emitted when a listitem is about to be destroyed.
+It is the last signal ever emitted for this @listitem.
+
+This signal is the opposite of the GtkSignalListItemFactory::setup signal
+and should be used to undo everything done in that signal.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> The #GtkSignalListItemFactory
+</parameter_description>
+</parameter>
+<parameter name="listitem">
+<parameter_description> The #GtkListItem to teardown
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</signal>
+
+<signal name="GtkSignalListItemFactory::unbind">
+<description>
+The ::unbind signal is emitted when a listitem has been removed from use
+in a list widget and its new GtkListItem:item is about to be unset.
+
+This signal is the opposite of the GtkSignalListItemFactory::bind signal
+and should be used to undo everything done in that signal.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> The #GtkSignalListItemFactory
+</parameter_description>
+</parameter>
+<parameter name="listitem">
+<parameter_description> The #GtkListItem to unbind
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</signal>
+
 <property name="GtkSingleSelection:autoselect">
 <description>
 If the selection will always select an item
@@ -11758,23 +12333,23 @@ Maximum size of slice
 </description>
 </property>
 
-<property name="GtkSortListModel:has-sort">
+<property name="GtkSortListModel:item-type">
 <description>
-If a sort function is set for this model
+The #GType for items of this model
 
 </description>
 </property>
 
-<property name="GtkSortListModel:item-type">
+<property name="GtkSortListModel:model">
 <description>
-The #GType for items of this model
+The model being sorted
 
 </description>
 </property>
 
-<property name="GtkSortListModel:model">
+<property name="GtkSortListModel:sorter">
 <description>
-The model being sorted
+The sorter for this model
 
 </description>
 </property>
@@ -11796,6 +12371,92 @@ Determines the direction of a sort.
 </parameters>
 </enum>
 
+<signal name="GtkSorter::changed">
+<description>
+This signal is emitted whenever the sorter changed. Users of the sorter
+should then update the sort order again via gtk_sorter_compare().
+
+#GtkSortListModel handles this signal automatically.
+
+Depending on the @change parameter, it may be possible to update
+the sort order without a full resorting. Refer to the #GtkSorterChange
+documentation for details.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> The #GtkSorter
+</parameter_description>
+</parameter>
+<parameter name="change">
+<parameter_description> how the sorter changed
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</signal>
+
+<enum name="GtkSorterChange">
+<description>
+Describes changes in a sorter in more detail and allows users
+to optimize resorting.
+
+</description>
+<parameters>
+<parameter name="GTK_SORTER_CHANGE_DIFFERENT">
+<parameter_description> The sorter change cannot be described
+by any of the other enumeration values
+</parameter_description>
+</parameter>
+<parameter name="GTK_SORTER_CHANGE_INVERTED">
+<parameter_description> The sort order was inverted. Comparisons
+that returned %GTK_ORDERING_SMALLER now return %GTK_ORDERING_LARGER
+and vice versa. Other comparisons return the same values as before.
+</parameter_description>
+</parameter>
+<parameter name="GTK_SORTER_CHANGE_LESS_STRICT">
+<parameter_description> The sorter is less strict: Comparisons
+may now return %GTK_ORDERING_EQUAL that did not do so before.
+</parameter_description>
+</parameter>
+<parameter name="GTK_SORTER_CHANGE_MORE_STRICT">
+<parameter_description> The sorter is more strict: Comparisons
+that did return %GTK_ORDERING_EQUAL may not do so anymore.
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GtkSorterOrder">
+<description>
+Describes the type of order that a #GtkSorter may describe.
+
+</description>
+<parameters>
+<parameter name="GTK_SORTER_ORDER_PARTIAL">
+<parameter_description> A partial order. And #GtkOrdering is possible.
+</parameter_description>
+</parameter>
+<parameter name="GTK_SORTER_ORDER_INVALID">
+<parameter_description> An invalid order. gtk_sorter_compare() will
+always return %GTK_ORDERING_INVALID if both items are unequal.
+</parameter_description>
+</parameter>
+<parameter name="GTK_SORTER_ORDER_NONE">
+<parameter_description> No order, all elements are considered equal.
+gtk_sorter_compare() will only return %GTK_ORDERING_EQUAL or
+%GTK_ORDERING_INVALID.
+</parameter_description>
+</parameter>
+<parameter name="GTK_SORTER_ORDER_TOTAL">
+<parameter_description> A total order. gtk_sorter_compare() will only
+return %GTK_ORDERING_EQUAL if an item is compared with itself. Two
+different items will never cause this value to be returned.
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <signal name="GtkSpinButton::change-value">
 <description>
 The ::change-value signal is a [keybinding signal][GtkBindingSignal] 
@@ -12220,6 +12881,72 @@ Is emitted whenever a new message gets pushed onto a statusbar's stack.
 <return></return>
 </signal>
 
+<property name="GtkStringFilter:expression">
+<description>
+The expression to evalute on item to get a string to compare with
+
+</description>
+</property>
+
+<property name="GtkStringFilter:ignore-case">
+<description>
+If matching is case sensitive
+
+</description>
+</property>
+
+<property name="GtkStringFilter:match-mode">
+<description>
+If exact matches are necessary or if substrings are allowed
+
+</description>
+</property>
+
+<property name="GtkStringFilter:search">
+<description>
+The search term
+
+</description>
+</property>
+
+<enum name="GtkStringFilterMatchMode">
+<description>
+Specifies how search strings are matched inside text.
+
+</description>
+<parameters>
+<parameter name="GTK_STRING_FILTER_MATCH_MODE_EXACT">
+<parameter_description> The search string and
+text must match exactly.
+</parameter_description>
+</parameter>
+<parameter name="GTK_STRING_FILTER_MATCH_MODE_SUBSTRING">
+<parameter_description> The search string
+must be contained as a substring inside the text.
+</parameter_description>
+</parameter>
+<parameter name="GTK_STRING_FILTER_MATCH_MODE_PREFIX">
+<parameter_description> The text must begin
+with the search string.
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<property name="GtkStringSorter:expression">
+<description>
+The expression to evalute on item to get a string to compare with
+
+</description>
+</property>
+
+<property name="GtkStringSorter:ignore-case">
+<description>
+If matching is case sensitive
+
+</description>
+</property>
+
 <enum name="GtkStyleContextPrintFlags">
 <description>
 Flags that modify the behavior of gtk_style_context_to_string().
@@ -13498,7 +14225,7 @@ of characters.
 The default bindings for this signal are
 Delete for deleting a character, Ctrl-Delete for 
 deleting a word and Ctrl-Backspace for deleting a word 
-backwords.
+backwards.
 
 </description>
 <parameters>
@@ -13607,7 +14334,7 @@ programmatically.
 
 The default bindings for this signal come in two variants,
 the variant with the Shift modifier extends the selection,
-the variant without the Shift modifer does not.
+the variant without the Shift modifier does not.
 There are too many key combinations to list them all here.
 - Arrow keys move by individual characters/lines
 - Ctrl-arrow key combinations move by words/paragraphs
@@ -13955,6 +14682,27 @@ Should be connected if you wish to perform an action whenever the
 <return></return>
 </signal>
 
+<property name="GtkTreeExpander:child">
+<description>
+The child widget with the actual contents
+
+</description>
+</property>
+
+<property name="GtkTreeExpander:item">
+<description>
+The item held by this expander's row
+
+</description>
+</property>
+
+<property name="GtkTreeExpander:list-row">
+<description>
+The list row to track for expander state
+
+</description>
+</property>
+
 <property name="GtkTreeListModel:autoexpand">
 <description>
 If all rows should be expanded by default
@@ -14013,6 +14761,13 @@ The item held in this row
 </description>
 </property>
 
+<property name="GtkTreeListRowSorter:sorter">
+<description>
+The underlying sorter
+
+</description>
+</property>
+
 <signal name="GtkTreeModel::row-changed">
 <description>
 This signal is emitted when a row in the model has changed.
@@ -17273,6 +18028,24 @@ alternative, create a new alternative trigger for each option.
 </return>
 </function>
 
+<function name="gtk_any_filter_new">
+<description>
+Creates a new empty &quot;any&quot; filter.  
+Use gtk_multi_filter_append() to add filters to it.
+
+This filter matches an item if any of the filters added to it
+matches the item.
+In particular, this means that if no filter has been added to
+it, the filter matches no item.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkFilter
+</return>
+</function>
+
 <function name="gtk_app_chooser_button_append_custom_item">
 <description>
 Appends a custom item to the list of applications that is shown
@@ -20366,8 +21139,8 @@ templates, applications have no need to call this function.
 <parameter_description> a #GtkBuilder
 </parameter_description>
 </parameter>
-<parameter name="widget">
-<parameter_description> the widget that is being extended
+<parameter name="object">
+<parameter_description> the object that is being extended
 </parameter_description>
 </parameter>
 <parameter name="template_type">
@@ -20508,6 +21281,99 @@ if no type was found
 </return>
 </function>
 
+<function name="gtk_builder_list_item_factory_get_bytes">
+<description>
+Gets the data used as the #GtkBuilder UI template for constructing
+listitems.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkBuilderListItemFactory
+</parameter_description>
+</parameter>
+</parameters>
+<return> The GtkBuilder data
+
+</return>
+</function>
+
+<function name="gtk_builder_list_item_factory_get_resource">
+<description>
+If the data references a resource, gets the path of that resource.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkBuilderListItemFactory
+</parameter_description>
+</parameter>
+</parameters>
+<return> The path to the resource or %NULL
+if none
+</return>
+</function>
+
+<function name="gtk_builder_list_item_factory_get_scope">
+<description>
+Gets the scope used when constructing listitems.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkBuilderListItemFactory
+</parameter_description>
+</parameter>
+</parameters>
+<return> The scope used when constructing listitems
+</return>
+</function>
+
+<function name="gtk_builder_list_item_factory_new_from_bytes">
+<description>
+Creates s new #GtkBuilderListItemFactory that instantiates widgets
+using @bytes as the data to pass to #GtkBuilder.
+
+
+</description>
+<parameters>
+<parameter name="scope">
+<parameter_description> A scope to use when instantiating
+</parameter_description>
+</parameter>
+<parameter name="bytes">
+<parameter_description> the bytes containing the ui file to instantiate
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkBuilderListItemFactory
+</return>
+</function>
+
+<function name="gtk_builder_list_item_factory_new_from_resource">
+<description>
+Creates s new #GtkBuilderListItemFactory that instantiates widgets
+using data read from the given @resource_path to pass to #GtkBuilder.
+
+
+</description>
+<parameters>
+<parameter name="scope">
+<parameter_description> A scope to use when instantiating
+</parameter_description>
+</parameter>
+<parameter name="resource_path">
+<parameter_description> valid path to a resource that contains the data
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkBuilderListItemFactory
+</return>
+</function>
+
 <function name="gtk_builder_new">
 <description>
 Creates a new empty builder object.
@@ -21254,6 +22120,48 @@ callback action is finalized
 </return>
 </function>
 
+<function name="gtk_cclosure_expression_new">
+<description>
+This function is a variant of gtk_closure_expression_new() that
+creates a #GClosure by calling gtk_cclosure_new() with the given
+@callback_func, @user_data and @user_destroy.
+
+
+</description>
+<parameters>
+<parameter name="value_type">
+<parameter_description> the type of the value that this expression evaluates to
+</parameter_description>
+</parameter>
+<parameter name="marshal">
+<parameter_description> marshaller used for creating a closure
+</parameter_description>
+</parameter>
+<parameter name="n_params">
+<parameter_description> the number of params needed for evaluating @closure
+</parameter_description>
+</parameter>
+<parameter name="params">
+<parameter_description> expressions for each parameter
+</parameter_description>
+</parameter>
+<parameter name="callback_func">
+<parameter_description> callback used for creating a closure
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data used for creating a closure
+</parameter_description>
+</parameter>
+<parameter name="user_destroy">
+<parameter_description> destroy notify for @user_data
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkExpression
+</return>
+</function>
+
 <function name="gtk_cell_area_activate">
 <description>
 Activates @area, usually by activating the currently focused
@@ -23390,7 +24298,7 @@ the appropriate edit and focus rectangle.
 </parameter>
 <parameter name="aligned_area">
 <parameter_description> the return location for the space inside @cell_area
-that would acually be used to render.
+that would actually be used to render.
 </parameter_description>
 </parameter>
 </parameters>
@@ -24822,7 +25730,7 @@ mnemonic character
 <function name="gtk_check_button_set_draw_indicator">
 <description>
 Sets whether the indicator part of the button is drawn. This is important for
-cases where the check button should have the functinality of a check button,
+cases where the check button should have the functionality of a check button,
 but the visuals of a regular button, like in a #GtkStackSwitcher.
 
 </description>
@@ -24912,6 +25820,36 @@ or freed.
 </return>
 </function>
 
+<function name="gtk_closure_expression_new">
+<description>
+Creates a GtkExpression that calls @closure when it is evaluated.
+@closure is called with the @this object and the results of evaluating
+the @params expressions.
+
+
+</description>
+<parameters>
+<parameter name="value_type">
+<parameter_description> the type of the value that this expression evaluates to
+</parameter_description>
+</parameter>
+<parameter name="closure">
+<parameter_description> closure to call when evaluating this expression. If closure is floating, it is 
adopted
+</parameter_description>
+</parameter>
+<parameter name="n_params">
+<parameter_description> the number of params needed for evaluating @closure
+</parameter_description>
+</parameter>
+<parameter name="params">
+<parameter_description> expressions for each parameter
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkExpression
+</return>
+</function>
+
 <function name="gtk_color_button_get_modal">
 <description>
 Gets whether the dialog is modal.
@@ -25164,6 +26102,475 @@ Creates a new #GtkColorChooserWidget.
 </return>
 </function>
 
+<function name="gtk_column_view_append_column">
+<description>
+Appends the @column to the end of the columns in @self.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+<parameter name="column">
+<parameter_description> a #GtkColumnViewColumn that hasn't been added to a
+#GtkColumnView yet
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_column_get_column_view">
+<description>
+Gets the column view that's currently displaying this column.
+
+If @self has not been added to a column view yet, %NULL is returned.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnViewColumn
+</parameter_description>
+</parameter>
+</parameters>
+<return> The column view displaying @self.
+</return>
+</function>
+
+<function name="gtk_column_view_column_get_factory">
+<description>
+Gets the factory that's currently used to populate list items for
+this column.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnViewColumn
+</parameter_description>
+</parameter>
+</parameters>
+<return> The factory in use
+</return>
+</function>
+
+<function name="gtk_column_view_column_get_sorter">
+<description>
+Returns the sorter that is associated with the column.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnViewColumn
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GtkSorter of @self
+</return>
+</function>
+
+<function name="gtk_column_view_column_get_title">
+<description>
+Returns the title set with gtk_column_view_column_set_title().
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnViewColumn
+</parameter_description>
+</parameter>
+</parameters>
+<return> The column's title
+</return>
+</function>
+
+<function name="gtk_column_view_column_new">
+<description>
+Creates a new #GtkColumnViewColumn.
+
+You most likely want to call gtk_column_add_column() next.
+
+
+</description>
+<parameters>
+<parameter name="title">
+<parameter_description> Title to use for this column
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkColumnViewColumn
+</return>
+</function>
+
+<function name="gtk_column_view_column_new_with_factory">
+<description>
+Creates a new #GtkColumnViewColumn that uses the given @factory for
+mapping items to widgets.
+
+You most likely want to call gtk_column_add_column() next.
+
+The function takes ownership of the
+argument, so you can write code like
+```
+column = gtk_column_view_column_new_with_factory (_(&quot;Name&quot;),
+gtk_builder_list_item_factory_new_from_resource (&quot;/name.ui&quot;));
+```
+
+
+</description>
+<parameters>
+<parameter name="title">
+<parameter_description> Title to use for this column
+</parameter_description>
+</parameter>
+<parameter name="factory">
+<parameter_description> The factory to populate items with
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkColumnViewColumn using the given @factory
+</return>
+</function>
+
+<function name="gtk_column_view_column_set_factory">
+<description>
+Sets the #GtkListItemFactory to use for populating list items for this
+column.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnViewColumn
+</parameter_description>
+</parameter>
+<parameter name="factory">
+<parameter_description> the factory to use or %NULL for none
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_column_set_sorter">
+<description>
+Associates a sorter with the column.
+
+This sorter can be made active by clicking on the column
+header, or by calling gtk_column_view_sort_by_column().
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnViewColumn
+</parameter_description>
+</parameter>
+<parameter name="sorter">
+<parameter_description> the #GtkSorter to associate with @column
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_column_set_title">
+<description>
+Sets the title of this column. The title is displayed in the header of a
+#GtkColumnView for this column and is therefor user-facing text that should
+be translated.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnViewColumn
+</parameter_description>
+</parameter>
+<parameter name="title">
+<parameter_description> Title to use for this column
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_column_set_visible">
+<description>
+Sets whether this column should be visible in views.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnViewColumn
+</parameter_description>
+</parameter>
+<parameter name="visible">
+<parameter_description> whether this column should be visible
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_get_columns">
+<description>
+Gets the list of columns in this column view. This list is constant over
+the lifetime of @self and can be used to monitor changes to the columns
+of @self by connecting to the GListModel:items-changed signal.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+</parameters>
+<return> The list managing the columns
+</return>
+</function>
+
+<function name="gtk_column_view_get_model">
+<description>
+Gets the model that's currently used to read the items displayed.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+</parameters>
+<return> The model in use
+</return>
+</function>
+
+<function name="gtk_column_view_get_show_separators">
+<description>
+Returns whether the list box should show separators
+between rows.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the list box shows separators
+</return>
+</function>
+
+<function name="gtk_column_view_get_single_click_activate">
+<description>
+Returns whether rows will be activated on single click and
+selected on hover.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if rows are activated on single click
+</return>
+</function>
+
+<function name="gtk_column_view_get_sorter">
+<description>
+Returns the sorter associated with users sorting choices in
+the column view.
+
+To allow users to customizable sorting by clicking on column
+headers, this sorter needs to be set on the sort
+model(s) underneath the model that is displayed
+by the view.
+
+See gtk_column_view_column_get_sorter() for setting up
+per-column sorting.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GtkSorter of @self
+</return>
+</function>
+
+<function name="gtk_column_view_get_visible">
+<description>
+Returns whether this column is visible.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnViewColumn
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if this column is visible
+</return>
+</function>
+
+<function name="gtk_column_view_insert_column">
+<description>
+Inserts a column at the given position in the columns of @self.
+
+If @column is already a column of @self, it will be repositioned.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> the position to insert @column at
+</parameter_description>
+</parameter>
+<parameter name="column">
+<parameter_description> the #GtkColumnViewColumn to insert
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_new">
+<description>
+Creates a new empty #GtkColumnView.
+
+You most likely want to call gtk_column_view_set_factory() to
+set up a way to map its items to widgets and gtk_column_view_set_model()
+to set a model to provide items next.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkColumnView
+</return>
+</function>
+
+<function name="gtk_column_view_remove_column">
+<description>
+Removes the @column from the list of columns of @self.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+<parameter name="column">
+<parameter_description> a #GtkColumnViewColumn that's part of @self
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_set_model">
+<description>
+Sets the #GListModel to use.
+
+If the @model is a #GtkSelectionModel, it is used for managing the selection.
+Otherwise, @self creates a #GtkSingleSelection for the selection.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+<parameter name="model">
+<parameter_description> the model to use or %NULL for none
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_set_show_separators">
+<description>
+Sets whether the list should show separators
+between rows.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+<parameter name="show_separators">
+<parameter_description> %TRUE to show separators
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_set_single_click_activate">
+<description>
+Sets whether rows should be activated on single click and
+selected on hover.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+<parameter name="single_click_activate">
+<parameter_description> %TRUE to activate items on single click
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_column_view_sort_by_column">
+<description>
+Sets the sorting of the view.
+
+This function should be used to set up the initial sorting. At runtime,
+users can change the sorting of a column view by clicking on the list headers.
+
+This call only has an effect if the sorter returned by gtk_column_view_get_sorter()
+is set on a sort model, and gtk_column_view_column_set_sorter() has been called
+on @column to associate a sorter with the column.
+
+If @column is %NULL, the view will be unsorted.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkColumnView
+</parameter_description>
+</parameter>
+<parameter name="column">
+<parameter_description> the #GtkColumnViewColumn to sort by, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="direction">
+<parameter_description> the direction to sort in
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_combo_box_get_active">
 <description>
 Returns the index of the currently active item, or -1 if there’s no
@@ -25949,6 +27356,43 @@ Removes all the text entries from the combo box.
 <return></return>
 </function>
 
+<function name="gtk_constant_expression_new">
+<description>
+Creates a GtkExpression that evaluates to the
+object given by the arguments.
+
+
+</description>
+<parameters>
+<parameter name="value_type">
+<parameter_description> The type of the object
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments to create the object from
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkExpression
+</return>
+</function>
+
+<function name="gtk_constant_expression_new_for_value">
+<description>
+Creates an expression that always evaluates to the given @value.
+
+
+</description>
+<parameters>
+<parameter name="value">
+<parameter_description> a #GValue
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkExpression
+</return>
+</function>
+
 <function name="gtk_constraint_get_constant">
 <description>
 Retrieves the constant factor added to the source attributes' value.
@@ -27501,6 +28945,66 @@ Use gtk_css_value_get_dynamic_value() to get the value for a given timestamp.
 </return>
 </function>
 
+<function name="gtk_custom_filter_new">
+<description>
+Creates a new filter using the given @match_func to filter
+items.
+
+If the filter func changes its filtering behavior,
+gtk_filter_changed() needs to be called.
+
+
+</description>
+<parameters>
+<parameter name="match_func">
+<parameter_description> function to filter items
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @match_func
+</parameter_description>
+</parameter>
+<parameter name="user_destroy">
+<parameter_description> destory notify
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkFilter
+</return>
+</function>
+
+<function name="gtk_custom_filter_set_filter_func">
+<description>
+Sets (or unsets) the function used for filtering items.
+
+If the filter func changes its filtering behavior,
+gtk_filter_changed() needs to be called.
+
+If a previous function was set, its @user_destroy will be
+called now.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkCustomFilter
+</parameter_description>
+</parameter>
+<parameter name="match_func">
+<parameter_description> function to filter items
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @match_func
+</parameter_description>
+</parameter>
+<parameter name="user_destroy">
+<parameter_description> destory notify
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_custom_layout_new">
 <description>
 Creates a new legacy layout manager.
@@ -27552,6 +29056,63 @@ Creates a new custom paper dialog.
 </return>
 </function>
 
+<function name="gtk_custom_sorter_new">
+<description>
+Creates a new #GtkSorter that works by calling
+@sort_func to compare items.
+
+
+</description>
+<parameters>
+<parameter name="sort_func">
+<parameter_description> the #GCompareDataFunc to use for sorting
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @sort_func
+</parameter_description>
+</parameter>
+<parameter name="user_destroy">
+<parameter_description> destroy notify for @user_data
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GTkSorter
+</return>
+</function>
+
+<function name="gtk_custom_sorter_set_sort_func">
+<description>
+Sets (or unsets) the function used for sorting items.
+
+If the sort func changes its sorting behavior,
+gtk_sorter_changed() needs to be called.
+
+If a previous function was set, its @user_destroy will be
+called now.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkCustomSorter
+</parameter_description>
+</parameter>
+<parameter name="sort_func">
+<parameter_description> function to sort items
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @match_func
+</parameter_description>
+</parameter>
+<parameter name="user_destroy">
+<parameter_description> destory notify
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_dialog_add_action_widget">
 <description>
 Adds an activatable widget to the action area of a #GtkDialog,
@@ -27852,6 +29413,186 @@ A convenient way to sensitize/desensitize dialog buttons.
 <return></return>
 </function>
 
+<function name="gtk_directory_list_get_attributes">
+<description>
+Gets the attributes queried on the children.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDirectoryList
+</parameter_description>
+</parameter>
+</parameters>
+<return> The queried attributes
+</return>
+</function>
+
+<function name="gtk_directory_list_get_error">
+<description>
+Gets the loading error, if any.
+
+If an error occurs during the loading process, the loading process
+will finish and this property allows querying the error that happened.
+This error will persist until a file is loaded again.
+
+An error being set does not mean that no files were loaded, and all
+successfully queried files will remain in the list.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDirectoryList
+</parameter_description>
+</parameter>
+</parameters>
+<return> The loading error or %NULL if
+loading finished successfully.
+</return>
+</function>
+
+<function name="gtk_directory_list_get_file">
+<description>
+Gets the file whose children are currently enumerated.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDirectoryList
+</parameter_description>
+</parameter>
+</parameters>
+<return> The file whose children are enumerated
+</return>
+</function>
+
+<function name="gtk_directory_list_get_io_priority">
+<description>
+Gets the IO priority set via gtk_directory_list_set_io_priority().
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDirectoryList
+</parameter_description>
+</parameter>
+</parameters>
+<return> The IO priority.
+</return>
+</function>
+
+<function name="gtk_directory_list_is_loading">
+<description>
+Returns %TRUE if the children enumeration is currently in
+progress.
+Files will be added to @self from time to time while loading is
+going on. The order in which are added is undefined and may change
+inbetween runs.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDirectoryList
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if @self is loading
+</return>
+</function>
+
+<function name="gtk_directory_list_new">
+<description>
+Creates a new #GtkDirectoryList querying the given @file with the given
+@attributes.
+
+
+</description>
+<parameters>
+<parameter name="file">
+<parameter_description> The file to query
+</parameter_description>
+</parameter>
+<parameter name="attributes">
+<parameter_description> The attributes to query with
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkDirectoryList
+</return>
+</function>
+
+<function name="gtk_directory_list_set_attributes">
+<description>
+Sets the @attributes to be enumerated and starts the enumeration.
+
+If @attributes is %NULL, no attributes will be queried, but a list
+of #GFileInfos will still be created.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDirectoryList
+</parameter_description>
+</parameter>
+<parameter name="attributes">
+<parameter_description> the attributes to enumerate
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_directory_list_set_file">
+<description>
+Sets the @file to be enumerated and starts the enumeration.
+
+If @file is %NULL, the result will be an empty list.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDirectoryList
+</parameter_description>
+</parameter>
+<parameter name="file">
+<parameter_description> the #GFile to be enumerated
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_directory_list_set_io_priority">
+<description>
+Sets the IO priority to use while loading directories.
+
+Setting the priority while @self is loading will reprioritize the
+ongoing load as soon as possible.
+
+The default IO priority is %G_PRIORITY_DEFAULT, which is higher than
+the GTK redraw priority. If you are loading a lot of directories in
+parrallel, lowering it to something like %G_PRIORITY_DEFAULT_IDLE
+may increase responsiveness.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDirectoryList
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> IO priority to use
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_disable_setlocale">
 <description>
 Prevents gtk_init(), gtk_init_check() and
@@ -28396,6 +30137,248 @@ events during drag and drop.
 </return>
 </function>
 
+<function name="gtk_drop_down_get_enable_search">
+<description>
+Returns whether search is enabled.
+
+
+</description>
+<parameters>
+</parameters>
+<return> %TRUE if the popup includes a search entry
+</return>
+</function>
+
+<function name="gtk_drop_down_get_expression">
+<description>
+Gets the expression set with gtk_drop_down_set_expression().
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkExpression or %NULL
+</return>
+</function>
+
+<function name="gtk_drop_down_get_factory">
+<description>
+Gets the factory that's currently used to populate list items.
+
+The factory returned by this function is always used for the
+item in the button. It is also used for items in the popup
+if #GtkDropDown:list-factory is not set.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+</parameters>
+<return> The factory in use
+</return>
+</function>
+
+<function name="gtk_drop_down_get_list_factory">
+<description>
+Gets the factory that's currently used to populate list items in the popup.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+</parameters>
+<return> The factory in use
+</return>
+</function>
+
+<function name="gtk_drop_down_get_model">
+<description>
+Gets the model that provides the displayed items.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+</parameters>
+<return> The model in use
+</return>
+</function>
+
+<function name="gtk_drop_down_get_selected">
+<description>
+Gets the position of the selected item.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+</parameters>
+<return> the position of the selected item, or #GTK_INVALID_LIST_POSITION
+if not item is selected
+</return>
+</function>
+
+<function name="gtk_drop_down_new">
+<description>
+Creates a new empty #GtkDropDown.
+
+You most likely want to call gtk_drop_down_set_factory() to
+set up a way to map its items to widgets and gtk_drop_down_set_model()
+to set a model to provide items next.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkDropDown
+</return>
+</function>
+
+<function name="gtk_drop_down_set_enable_search">
+<description>
+Sets whether a search entry will be shown in the popup that
+allows to search for items in the list.
+
+Note that #GtkDropDown:expression must be set for search to work.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+<parameter name="enable_search">
+<parameter_description> whether to enable search
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_drop_down_set_expression">
+<description>
+Sets the expression that gets evaluated to obtain strings from items
+when searching in the popup. The expression must have a value type of
+#GTK_TYPE_STRING.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+<parameter name="expression">
+<parameter_description> a #GtkExpression, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_drop_down_set_factory">
+<description>
+Sets the #GtkListItemFactory to use for populating list items.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+<parameter name="factory">
+<parameter_description> the factory to use or %NULL for none
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_drop_down_set_from_strings">
+<description>
+Populates @self with the strings in @text,
+by creating a suitable model and factory.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+text: a %NULL-terminated string array
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_drop_down_set_list_factory">
+<description>
+Sets the #GtkListItemFactory to use for populating list items in the popup.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+<parameter name="factory">
+<parameter_description> the factory to use or %NULL for none
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_drop_down_set_model">
+<description>
+Sets the #GListModel to use.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+<parameter name="model">
+<parameter_description> the model to use or %NULL for none
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_drop_down_set_selected">
+<description>
+Selects the item at the given position.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkDropDown
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> the position of the item to select, or #GTK_INVALID_LIST_POSITION
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_drop_target_async_get_actions">
 <description>
 Gets the actions that this drop target supports.
@@ -31842,6 +33825,24 @@ the events can be managed by calling gtk_event_controller_handle_event().
 <return></return>
 </function>
 
+<function name="gtk_every_filter_new">
+<description>
+Creates a new empty &quot;every&quot; filter.  
+Use gtk_multi_filter_append() to add filters to it.
+
+This filter matches an item if each of the filters added to it
+matches the item.
+In particular, this means that if no filter has been added to
+it, the filter matches every item.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkFilter
+</return>
+</function>
+
 <function name="gtk_expander_get_child">
 <description>
 Gets the child widget of @expander.
@@ -32148,6 +34149,263 @@ the next character should be used for the mnemonic accelerator key.
 <return></return>
 </function>
 
+<function name="gtk_expression_bind">
+<description>
+Bind @target's property named @property to @self.
+
+The value that @self evaluates to is set via g_object_set() on
+@target. This is repeated whenever @self changes to ensure that
+the object's property stays synchronized with @self.
+
+If @self's evaluation fails, @target's @property is not updated.
+You can ensure that this doesn't happen by using a fallback
+expression.
+
+Note that this function takes ownership of @self. If you want
+to keep it around, you should gtk_expression_ref() it beforehand.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+<parameter name="target">
+<parameter_description> the target object to bind to
+</parameter_description>
+</parameter>
+<parameter name="property">
+<parameter_description> name of the property on @target to bind to
+</parameter_description>
+</parameter>
+<parameter name="this_">
+<parameter_description> the this argument for
+the evaluation of @self
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkExpressionWatch
+</return>
+</function>
+
+<function name="gtk_expression_evaluate">
+<description>
+Evaluates the given expression and on success stores the result
+in @value. The #GType of @value will be the type given by
+gtk_expression_get_value_type().
+
+It is possible that expressions cannot be evaluated - for example
+when the expression references objects that have been destroyed or
+set to %NULL. In that case @value will remain empty and %FALSE
+will be returned.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+<parameter name="this_">
+<parameter_description> the this argument for the evaluation
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> an empty #GValue
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the expression could be evaluated
+</return>
+</function>
+
+<function name="gtk_expression_get_value_type">
+<description>
+Gets the #GType that this expression evaluates to. This type
+is constant and will not change over the lifetime of this expression.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+</parameters>
+<return> The type returned from gtk_expression_evaluate()
+</return>
+</function>
+
+<function name="gtk_expression_is_static">
+<description>
+Checks if the expression is static.
+
+A static expression will never change its result when 
+gtk_expression_evaluate() is called on it with the same arguments.
+
+That means a call to gtk_expression_watch() is not necessary because
+it will never trigger a notify.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the expression is static
+</return>
+</function>
+
+<function name="gtk_expression_ref">
+<description>
+Acquires a reference on the given #GtkExpression.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GtkExpression with an additional reference
+</return>
+</function>
+
+<function name="gtk_expression_unref">
+<description>
+Releases a reference on the given #GtkExpression.
+
+If the reference was the last, the resources associated to the @self are
+freed.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_expression_watch">
+<description>
+Installs a watch for the given @expression that calls the @notify function
+whenever the evaluation of @self may have changed.
+
+GTK cannot guarantee that the evaluation did indeed change when the @notify
+gets invoked, but it guarantees the opposite: When it did in fact change,
+the @notify will be invoked.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+<parameter name="this_">
+<parameter_description> the `this` argument to
+watch
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> callback to invoke when the
+expression changes
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @notify callback
+</parameter_description>
+</parameter>
+<parameter name="user_destroy">
+<parameter_description> destroy notify for @user_data
+</parameter_description>
+</parameter>
+</parameters>
+<return> The newly installed watch. Note that the only
+reference held to the watch will be released when the watch is unwatched
+which can happen automatically, and not just via
+gtk_expression_watch_unwatch(). You should call gtk_expression_watch_ref()
+if you want to keep the watch around.
+</return>
+</function>
+
+<function name="gtk_expression_watch_evaluate">
+<description>
+Evaluates the watched expression and on success stores the result
+in @value.
+
+This is equivalent to calling gtk_expression_evaluate() with the
+expression and this pointer originally used to create @watch.
+
+
+</description>
+<parameters>
+<parameter name="watch">
+<parameter_description> a #GtkExpressionWatch
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> an empty #GValue to be set
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the expression could be evaluated and @value was set
+</return>
+</function>
+
+<function name="gtk_expression_watch_ref">
+<description>
+Acquires a reference on the given #GtkExpressionWatch.
+
+
+</description>
+<parameters>
+<parameter name="watch">
+<parameter_description> a #GtkExpressionWatch
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GtkExpression with an additional reference
+</return>
+</function>
+
+<function name="gtk_expression_watch_unref">
+<description>
+Releases a reference on the given #GtkExpressionWatch.
+
+If the reference was the last, the resources associated to @self are
+freed.
+
+</description>
+<parameters>
+<parameter name="watch">
+<parameter_description> a #GtkExpressionWatch
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_expression_watch_unwatch">
+<description>
+Stops watching an expression that was established via gtk_expression_watch().
+
+</description>
+<parameters>
+<parameter name="watch">
+<parameter_description> watch to release
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_file_chooser_add_choice">
 <description>
 Adds a 'choice' to the file chooser. This is typically implemented
@@ -32456,7 +34714,7 @@ Gets the currently selected option in the 'choice' with the given ID.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID of the currenly selected option
+<return> the ID of the currently selected option
 </return>
 </function>
 
@@ -33340,9 +35598,57 @@ Serialize a file filter to an a{sv} variant.
 </return>
 </function>
 
-<function name="gtk_filter_list_model_get_model">
+<function name="gtk_filter_changed">
 <description>
-Gets the model currently filtered or %NULL if none.
+Emits the #GtkFilter:changed signal to notify all users of the filter that
+the filter changed. Users of the filter should then check items again via
+gtk_filter_match().
+
+Depending on the @change parameter, not all items need to be changed, but
+only some. Refer to the #GtkFilterChange documentation for details.
+
+This function is intended for implementors of #GtkFilter subclasses and
+should not be called from other functions.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkFilter
+</parameter_description>
+</parameter>
+<parameter name="change">
+<parameter_description> How the filter changed
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_filter_get_strictness">
+<description>
+Gets the known strictness of @filters. If the strictness is not known,
+%GTK_FILTER_MATCH_SOME is returned.
+
+This value may change after emission of the GtkFilter:changed signal.
+
+This function is meant purely for optimization purposes, filters can
+choose to omit implementing it, but #GtkFilterListModel uses it.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkFilter
+</parameter_description>
+</parameter>
+</parameters>
+<return> the strictness of @self
+</return>
+</function>
+
+<function name="gtk_filter_list_model_get_filter">
+<description>
+Gets the #GtkFilter currently set on @self.
 
 
 </description>
@@ -33352,13 +35658,14 @@ Gets the model currently filtered or %NULL if none.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The model that gets filtered
+<return> The filter currently in use
+or %NULL if the list isn't filtered
 </return>
 </function>
 
-<function name="gtk_filter_list_model_has_filter">
+<function name="gtk_filter_list_model_get_model">
 <description>
-Checks if a filter function is currently set on @self
+Gets the model currently filtered or %NULL if none.
 
 
 </description>
@@ -33368,14 +35675,14 @@ Checks if a filter function is currently set on @self
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a filter function is set
+<return> The model that gets filtered
 </return>
 </function>
 
 <function name="gtk_filter_list_model_new">
 <description>
 Creates a new #GtkFilterListModel that will filter @model using the given
-@filter_func.
+@filter.
 
 
 </description>
@@ -33384,16 +35691,8 @@ Creates a new #GtkFilterListModel that will filter @model using the given
 <parameter_description> the model to sort
 </parameter_description>
 </parameter>
-<parameter name="filter_func">
-<parameter_description> filter function or %NULL to not filter items
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @filter_func
-</parameter_description>
-</parameter>
-<parameter name="user_destroy">
-<parameter_description> destroy notifier for @user_data
+<parameter name="filter">
+<parameter_description> filter or %NULL to not filter items
 </parameter_description>
 </parameter>
 </parameters>
@@ -33404,7 +35703,7 @@ Creates a new #GtkFilterListModel that will filter @model using the given
 <function name="gtk_filter_list_model_new_for_type">
 <description>
 Creates a new empty filter list model set up to return items of type @item_type.
-It is up to the application to set a proper filter function and model to ensure
+It is up to the application to set a proper filter and model to ensure
 the item type is matched.
 
 
@@ -33419,12 +35718,9 @@ the item type is matched.
 </return>
 </function>
 
-<function name="gtk_filter_list_model_refilter">
+<function name="gtk_filter_list_model_set_filter">
 <description>
-Causes @self to refilter all items in the model.
-
-Calling this function is necessary when data used by the filter
-function has changed.
+Sets the filter used to filter items.
 
 </description>
 <parameters>
@@ -33432,14 +35728,22 @@ function has changed.
 <parameter_description> a #GtkFilterListModel
 </parameter_description>
 </parameter>
+<parameter name="filter">
+<parameter_description> filter to use or %NULL to not filter items
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gtk_filter_list_model_set_filter_func">
+<function name="gtk_filter_list_model_set_model">
 <description>
-Sets the function used to filter items. The function will be called for every
-item and if it returns %TRUE the item is considered visible.
+Sets the model to be filtered.
+
+Note that GTK makes no effort to ensure that @model conforms to
+the item type of @self. It assumes that the caller knows what they
+are doing and have set up an appropriate filter to ensure that item
+types match.
 
 </description>
 <parameters>
@@ -33447,43 +35751,33 @@ item and if it returns %TRUE the item is considered visible.
 <parameter_description> a #GtkFilterListModel
 </parameter_description>
 </parameter>
-<parameter name="filter_func">
-<parameter_description> filter function or %NULL to not filter items
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @filter_func
-</parameter_description>
-</parameter>
-<parameter name="user_destroy">
-<parameter_description> destroy notifier for @user_data
+<parameter name="model">
+<parameter_description> The model to be filtered
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gtk_filter_list_model_set_model">
+<function name="gtk_filter_match">
 <description>
-Sets the model to be filtered.
+Checks if the given @item is matched by the filter or not. 
 
-Note that GTK makes no effort to ensure that @model conforms to
-the item type of @self. It assumes that the caller knows what they
-are doing and have set up an appropriate filter function to ensure
-that item types match.
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> a #GtkFilterListModel
+<parameter_description> a #GtkFilter
 </parameter_description>
 </parameter>
-<parameter name="model">
-<parameter_description> The model to be filtered
+<parameter name="item">
+<parameter_description> The item to check
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the filter matches the item and a filter model should
+keep it, %FALSE if not.
+</return>
 </function>
 
 <function name="gtk_fixed_get_child_position">
@@ -35313,6 +37607,34 @@ will appear embedded in the top edge of the frame as a title.
 <return></return>
 </function>
 
+<function name="gtk_functions_list_item_factory_new">
+<description>
+Creates a new #GtkListItemFactory with the given functions.
+
+
+</description>
+<parameters>
+<parameter name="setup_func">
+<parameter_description> the setup function for the list item factory
+</parameter_description>
+</parameter>
+<parameter name="bind_func">
+<parameter_description> the bind function for the list item factory
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data for the @setup_func and @bind_func functions
+</parameter_description>
+</parameter>
+<parameter name="user_destroy">
+<parameter_description> a function called to destroy @user_data
+</parameter_description>
+</parameter>
+</parameters>
+<return> the newly created list item factory object
+</return>
+</function>
+
 <function name="gtk_gesture_click_new">
 <description>
 Returns a newly created #GtkGesture that recognizes single and multiple
@@ -36360,7 +38682,7 @@ direction otherwise. %GTK_TEXT_DIR_NONE will never be returned.
 GTK sets the default text direction according to the locale
 during gtk_init(), and you should normally use
 gtk_widget_get_direction() or gtk_widget_get_default_direction()
-to obtain the current direcion.
+to obtain the current direction.
 
 This function is only needed rare cases when the locale is
 changed after GTK has already been initialized. In this case,
@@ -37670,6 +39992,227 @@ Sets the amount of space between rows of @grid.
 <return></return>
 </function>
 
+<function name="gtk_grid_view_get_factory">
+<description>
+Gets the factory that's currently used to populate list items.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkGridView
+</parameter_description>
+</parameter>
+</parameters>
+<return> The factory in use
+</return>
+</function>
+
+<function name="gtk_grid_view_get_max_columns">
+<description>
+Gets the maximum number of columns that the grid will use.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkGridView
+</parameter_description>
+</parameter>
+</parameters>
+<return> The maximum number of columns
+</return>
+</function>
+
+<function name="gtk_grid_view_get_min_columns">
+<description>
+Gets the minimum number of columns that the grid will use.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkGridView
+</parameter_description>
+</parameter>
+</parameters>
+<return> The minimum number of columns
+</return>
+</function>
+
+<function name="gtk_grid_view_get_model">
+<description>
+Gets the model that's currently used to read the items displayed.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkGridView
+</parameter_description>
+</parameter>
+</parameters>
+<return> The model in use
+</return>
+</function>
+
+<function name="gtk_grid_view_get_single_click_activate">
+<description>
+Returns whether items will be activated on single click and
+selected on hover.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListView
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if items are activated on single click
+</return>
+</function>
+
+<function name="gtk_grid_view_new">
+<description>
+Creates a new empty #GtkGridView.
+
+You most likely want to call gtk_grid_view_set_factory() to
+set up a way to map its items to widgets and gtk_grid_view_set_model()
+to set a model to provide items next.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkGridView
+</return>
+</function>
+
+<function name="gtk_grid_view_new_with_factory">
+<description>
+Creates a new #GtkGridView that uses the given @factory for
+mapping items to widgets.
+
+You most likely want to call gtk_grid_view_set_model() to set
+a model next.
+
+The function takes ownership of the
+argument, so you can write code like
+```
+grid_view = gtk_grid_view_new_with_factory (
+gtk_builder_list_item_factory_newfrom_resource (&quot;/resource.ui&quot;));
+```
+
+
+</description>
+<parameters>
+<parameter name="factory">
+<parameter_description> The factory to populate items with
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkGridView using the given @factory
+</return>
+</function>
+
+<function name="gtk_grid_view_set_factory">
+<description>
+Sets the #GtkListItemFactory to use for populating list items.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkGridView
+</parameter_description>
+</parameter>
+<parameter name="factory">
+<parameter_description> the factory to use or %NULL for none
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_grid_view_set_max_columns">
+<description>
+Sets the maximum number of columns to use. This number must be at least 1.
+
+If @max_columns is smaller than the minimum set via
+gtk_grid_view_set_min_columns(), that value is used instead.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkGridView
+</parameter_description>
+</parameter>
+<parameter name="max_columns">
+<parameter_description> The maximum number of columns
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_grid_view_set_min_columns">
+<description>
+Sets the minimum number of columns to use. This number must be at least 1.
+
+If @min_columns is smaller than the minimum set via
+gtk_grid_view_set_max_columns(), that value is ignored.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkGridView
+</parameter_description>
+</parameter>
+<parameter name="min_columns">
+<parameter_description> The minimum number of columns
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_grid_view_set_model">
+<description>
+Sets the #GListModel to use for
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkGridView
+</parameter_description>
+</parameter>
+<parameter name="model">
+<parameter_description> the model to use or %NULL for none
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_grid_view_set_single_click_activate">
+<description>
+Sets whether items should be activated on single click and
+selected on hover.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkGridView
+</parameter_description>
+</parameter>
+<parameter name="single_click_activate">
+<parameter_description> %TRUE to activate items on single click
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_header_bar_get_decoration_layout">
 <description>
 Gets the decoration layout set with
@@ -39755,7 +42298,7 @@ method sets #GtkIconView:reorderable to %FALSE.
 
 <function name="gtk_im_context_delete_surrounding">
 <description>
-Asks the widget that the input context is attached to to delete
+Asks the widget that the input context is attached to delete
 characters around the cursor position by emitting the
 GtkIMContext::delete_surrounding signal. Note that @offset and @n_chars
 are in characters not in bytes which differs from the usage other
@@ -39793,6 +42336,52 @@ a negative value means start before the cursor.
 </return>
 </function>
 
+<function name="gtk_im_context_filter_key">
+<description>
+Allow an input method to forward key press and release events
+to another input method, without necessarily having a GdkEvent
+available.
+
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GtkIMContext
+</parameter_description>
+</parameter>
+<parameter name="press">
+<parameter_description> whether to forward a key press or release event
+</parameter_description>
+</parameter>
+<parameter name="surface">
+<parameter_description> the surface the event is for
+</parameter_description>
+</parameter>
+<parameter name="device">
+<parameter_description> the device that the event is for
+</parameter_description>
+</parameter>
+<parameter name="time">
+<parameter_description> the timestamp for the event
+</parameter_description>
+</parameter>
+<parameter name="keycode">
+<parameter_description> the keycode for the event
+</parameter_description>
+</parameter>
+<parameter name="state">
+<parameter_description> modifier state for the event
+</parameter_description>
+</parameter>
+<parameter name="group">
+<parameter_description> the active keyboard group for the event
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the input method handled the key event.
+</return>
+</function>
+
 <function name="gtk_im_context_filter_keypress">
 <description>
 Allow an input method to internally handle key press and release 
@@ -42646,6 +45235,42 @@ points.  See gtk_link_button_get_visited() for more details.
 <return></return>
 </function>
 
+<function name="gtk_list_base_set_anchor_max_widgets">
+<description>
+Sets how many widgets should be kept alive around the anchor.
+The number of these widgets determines how many items can be
+displayed and must be chosen to be large enough to cover the
+allocation but should be kept as small as possible for
+performance reasons.
+
+There will be @center widgets allocated around the anchor
+evenly distributed according to the anchor's alignment - if
+the anchor is at the start, all these widgets will be allocated
+behind it, if it's at the end, all the widgets will be allocated
+in front of it.
+
+Addditionally, there will be @above_below widgets allocated both
+before and after the sencter widgets, so the total number of
+widgets kept alive is 2 * above_below + center + 1.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListBase
+</parameter_description>
+</parameter>
+<parameter name="center">
+<parameter_description> the number of widgets in the middle
+</parameter_description>
+</parameter>
+<parameter name="above_below">
+<parameter_description> extra widgets above and below
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_list_box_bind_model">
 <description>
 Binds @model to @box.
@@ -43521,6 +46146,269 @@ Unselects a single row of @box, if the selection mode allows it.
 <return></return>
 </function>
 
+<function name="gtk_list_item_get_activatable">
+<description>
+Checks if a list item has been set to be activatable via
+gtk_list_item_set_activatable().
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItem
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the item is activatable
+</return>
+</function>
+
+<function name="gtk_list_item_get_child">
+<description>
+Gets the child previously set via gtk_list_item_set_child() or
+%NULL if none was set.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItem
+</parameter_description>
+</parameter>
+</parameters>
+<return> The child
+</return>
+</function>
+
+<function name="gtk_list_item_get_item">
+<description>
+Gets the item that is currently displayed in model that @self is
+currently bound to or %NULL if @self is unbound.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItem
+</parameter_description>
+</parameter>
+</parameters>
+<return> The item displayed
+</return>
+</function>
+
+<function name="gtk_list_item_get_position">
+<description>
+Gets the position in the model that @self currently displays.
+If @self is unbound, 0 is returned.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItem
+</parameter_description>
+</parameter>
+</parameters>
+<return> The position of this item
+</return>
+</function>
+
+<function name="gtk_list_item_get_selectable">
+<description>
+Checks if a list item has been set to be selectable via
+gtk_list_item_set_selectable().
+
+Do not confuse this function with gtk_list_item_get_selected().
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItem
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the item is selectable
+</return>
+</function>
+
+<function name="gtk_list_item_get_selected">
+<description>
+Checks if the item is displayed as selected. The selected state is
+maintained by the container and its list model and cannot be set
+otherwise.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItem
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the item is selected.
+</return>
+</function>
+
+<function name="gtk_list_item_manager_move_list_item">
+<description>
+Moves the widget to represent a new position in the listmodel without
+releasing the item.
+
+This is most useful when scrolling.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItemManager
+</parameter_description>
+</parameter>
+<parameter name="list_item">
+<parameter_description> an acquired #GtkListItem that should be moved to represent
+a different row
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> the new position of that list item
+</parameter_description>
+</parameter>
+<parameter name="prev_sibling">
+<parameter_description> the new previous sibling
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_list_item_manager_try_acquire_list_item_from_change">
+<description>
+Like gtk_list_item_manager_acquire_list_item(), but only tries to acquire list
+items from those previously released as part of @change.
+If no matching list item is found, %NULL is returned and the caller should use
+gtk_list_item_manager_acquire_list_item().
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItemManager
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> the row in the model to create a list item for
+</parameter_description>
+</parameter>
+<parameter name="prev_sibling">
+<parameter_description> the widget this widget should be inserted after or %NULL
+if it should be the first widget
+</parameter_description>
+</parameter>
+</parameters>
+<return> a properly setup widget to use in @position or %NULL if
+no item for reuse existed
+</return>
+</function>
+
+<function name="gtk_list_item_manager_update_list_item">
+<description>
+Updates the position of the given @item. This function must be called whenever
+the position of an item changes, like when new items are added before it.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItemManager
+</parameter_description>
+</parameter>
+<parameter name="item">
+<parameter_description> a #GtkListItem that has been acquired
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> the new position of that list item
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_list_item_set_activatable">
+<description>
+Sets @self to be activatable.
+
+If an item is activatable, double-clicking on the item, using
+the &lt;Return&gt; key or calling gtk_widget_activate() will activate
+the item. Activating instructs the containing view to handle
+activation. #GtkListView for example will be emitting the
+GtkListView::activate signal.
+
+By default, list items are activatable
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItem
+</parameter_description>
+</parameter>
+<parameter name="activatable">
+<parameter_description> if the item should be activatable
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_list_item_set_child">
+<description>
+Sets the child to be used for this listitem.
+
+This function is typically called by applications when
+setting up a listitem so that the widget can be reused when
+binding it multiple times.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItem
+</parameter_description>
+</parameter>
+<parameter name="child">
+<parameter_description> The list item's child or %NULL to unset
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_list_item_set_selectable">
+<description>
+Sets @self to be selectable. If an item is selectable, clicking
+on the item or using the keyboard will try to select or unselect
+the item. If this succeeds is up to the model to determine, as
+it is managing the selected state.
+
+Note that this means that making an item non-selectable has no
+influence on the selected state at all. A non-selectable item 
+may still be selected.
+
+By default, list items are selectable. When rebinding them to
+a new item, they will also be reset to be selectable by GTK.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListItem
+</parameter_description>
+</parameter>
+<parameter name="selectable">
+<parameter_description> if the item should be selectable
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_list_store_append">
 <description>
 Appends a new row to @list_store.  @iter will be changed to point to this new
@@ -44073,6 +46961,192 @@ unsorted stores.
 <return></return>
 </function>
 
+<function name="gtk_list_view_get_factory">
+<description>
+Gets the factory that's currently used to populate list items.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListView
+</parameter_description>
+</parameter>
+</parameters>
+<return> The factory in use
+</return>
+</function>
+
+<function name="gtk_list_view_get_model">
+<description>
+Gets the model that's currently used to read the items displayed.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListView
+</parameter_description>
+</parameter>
+</parameters>
+<return> The model in use
+</return>
+</function>
+
+<function name="gtk_list_view_get_show_separators">
+<description>
+Returns whether the list box should show separators
+between rows.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListView
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the list box shows separators
+</return>
+</function>
+
+<function name="gtk_list_view_get_single_click_activate">
+<description>
+Returns whether rows will be activated on single click and
+selected on hover.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListView
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if rows are activated on single click
+</return>
+</function>
+
+<function name="gtk_list_view_new">
+<description>
+Creates a new empty #GtkListView.
+
+You most likely want to call gtk_list_view_set_factory() to
+set up a way to map its items to widgets and gtk_list_view_set_model()
+to set a model to provide items next.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkListView
+</return>
+</function>
+
+<function name="gtk_list_view_new_with_factory">
+<description>
+Creates a new #GtkListView that uses the given @factory for
+mapping items to widgets.
+
+You most likely want to call gtk_list_view_set_model() to set
+a model next.
+
+The function takes ownership of the
+argument, so you can write code like
+```
+list_view = gtk_list_view_new_with_factory (
+gtk_builder_list_item_factory_newfrom_resource (&quot;/resource.ui&quot;));
+```
+
+
+</description>
+<parameters>
+<parameter name="factory">
+<parameter_description> The factory to populate items with
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkListView using the given @factory
+</return>
+</function>
+
+<function name="gtk_list_view_set_factory">
+<description>
+Sets the #GtkListItemFactory to use for populating list items.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListView
+</parameter_description>
+</parameter>
+<parameter name="factory">
+<parameter_description> the factory to use or %NULL for none
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_list_view_set_model">
+<description>
+Sets the #GListModel to use.
+
+If the @model is a #GtkSelectionModel, it is used for managing the selection.
+Otherwise, @self creates a #GtkSingleSelection for the selection.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListView
+</parameter_description>
+</parameter>
+<parameter name="model">
+<parameter_description> the model to use or %NULL for none
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_list_view_set_show_separators">
+<description>
+Sets whether the list box should show separators
+between rows.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListView
+</parameter_description>
+</parameter>
+<parameter name="show_separators">
+<parameter_description> %TRUE to show separators
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_list_view_set_single_click_activate">
+<description>
+Sets whether rows should be activated on single click and
+selected on hover.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkListView
+</parameter_description>
+</parameter>
+<parameter name="single_click_activate">
+<parameter_description> %TRUE to activate items on single click
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_lock_button_get_permission">
 <description>
 Obtains the #GPermission object that controls @button.
@@ -44125,7 +47199,7 @@ Sets the #GPermission object that controls @button.
 
 <function name="gtk_map_list_model_get_model">
 <description>
-Gets the model that is curently being mapped or %NULL if none.
+Gets the model that is currently being mapped or %NULL if none.
 
 
 </description>
@@ -45939,6 +49013,103 @@ Sets the transient parent for windows shown by the
 <return></return>
 </function>
 
+<function name="gtk_multi_filter_append">
+<description>
+Adds a @filter to @self to use for matching.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkMultiFilter
+</parameter_description>
+</parameter>
+<parameter name="filter">
+<parameter_description> A new filter to use
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_multi_filter_remove">
+<description>
+Removes the filter at the given @position from the list of filters used
+by @self.
+If @position is larger than the number of filters, nothing happens and
+the function returns.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkMultiFilter
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> position of filter to remove
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_multi_sorter_append">
+<description>
+Add @sorter to @self to use for sorting at the end. @self
+will consult all existing sorters before it will sort with
+the given @sorter.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkMultiSorter
+</parameter_description>
+</parameter>
+<parameter name="sorter">
+<parameter_description> a sorter to add
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_multi_sorter_new">
+<description>
+Creates a new multi sorter.
+
+This sorter compares items by trying each of the sorters
+in turn, until one returns non-zero. In particular, if
+no sorter has been added to it, it will always compare
+items as equal.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkSorter
+</return>
+</function>
+
+<function name="gtk_multi_sorter_remove">
+<description>
+Removes the sorter at the given @position from the list of sorter
+used by @self.
+
+If @position is larger than the number of sorters, nothing happens.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkMultiSorter
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> position of sorter to remove
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_named_action_get_action_name">
 <description>
 Returns the name of the action that will be activated.
@@ -47349,6 +50520,135 @@ activating it always fails.
 </return>
 </function>
 
+<function name="gtk_numeric_sorter_get_expression">
+<description>
+Gets the expression that is evaluated to obtain numbers from items.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkNumericSorter
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkExpression, or %NULL
+</return>
+</function>
+
+<function name="gtk_numeric_sorter_get_sort_order">
+<description>
+Gets whether this sorter will sort smaller numbers first.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkNumericSorter
+</parameter_description>
+</parameter>
+</parameters>
+<return> the order of the numbers
+</return>
+</function>
+
+<function name="gtk_numeric_sorter_new">
+<description>
+Creates a new numeric sorter using the given @expression.
+
+Smaller numbers will be sorted first. You can call
+gtk_numeric_sorter_set_sort_order() to change this.
+
+
+</description>
+<parameters>
+<parameter name="expression">
+<parameter_description> The expression to evaluate
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkSorter
+</return>
+</function>
+
+<function name="gtk_numeric_sorter_set_expression">
+<description>
+Sets the expression that is evaluated to obtain numbers from items.
+
+Unless an expression is set on @self, the sorter will always
+compare items as invalid.
+
+The expression must have a return type that can be compared
+numerically, such as #G_TYPE_INT or #G_TYPE_DOUBLE.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkNumericSorter
+</parameter_description>
+</parameter>
+<parameter name="expression">
+<parameter_description> a #GtkExpression, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_numeric_sorter_set_sort_order">
+<description>
+Sets whether to sort smaller numbers before larger ones.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkNumericSorter
+</parameter_description>
+</parameter>
+<parameter name="sort_order">
+<parameter_description> whether to sort smaller numbers first
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_object_expression_new">
+<description>
+Creates an expression evaluating to the given @object with a weak reference.
+Once the @object is disposed, it will fail to evaluate.
+This expression is meant to break reference cycles.
+
+If you want to keep a reference to @object, use gtk_constant_expression_new().
+
+
+</description>
+<parameters>
+<parameter name="object">
+<parameter_description> object to watch
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkExpression
+</return>
+</function>
+
+<function name="gtk_ordering_from_cmpfunc">
+<description>
+Converts the result of a #GCompareFunc like strcmp() to a #GtkOrdering.
+
+
+</description>
+<parameters>
+<parameter name="cmpfunc_result">
+<parameter_description> Result of a comparison function
+</parameter_description>
+</parameter>
+</parameters>
+<return> the corresponding #GtkOrdering
+</return>
+</function>
+
 <function name="gtk_orientable_get_orientation">
 <description>
 Retrieves the orientation of the @orientable.
@@ -47532,6 +50832,18 @@ Sets whether to measure this child.
 <return></return>
 </function>
 
+<function name="gtk_overlay_layout_new">
+<description>
+Creates a new #GtkOverlayLayout instance.
+
+
+</description>
+<parameters>
+</parameters>
+<return> the newly created instance
+</return>
+</function>
+
 <function name="gtk_overlay_new">
 <description>
 Creates a new #GtkOverlay.
@@ -49014,6 +52326,36 @@ This function adds the paper size from @size to @key_file.
 <return></return>
 </function>
 
+<function name="gtk_param_spec_expression">
+<description>
+Creates a new #GParamSpec instance for a property holding a #GtkExpression.
+
+See g_param_spec_internal() for details on the property strings.
+
+
+</description>
+<parameters>
+<parameter name="name">
+<parameter_description> canonical name of the property
+</parameter_description>
+</parameter>
+<parameter name="nick">
+<parameter_description> a user-readable name for the property
+</parameter_description>
+</parameter>
+<parameter name="blurb">
+<parameter_description> a user-readable description of the property
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags for the property
+</parameter_description>
+</parameter>
+</parameters>
+<return> a newly created property specification
+</return>
+</function>
+
 <function name="gtk_password_entry_get_extra_menu">
 <description>
 Gets the menu model set with gtk_password_entry_set_extra_menu().
@@ -54359,6 +57701,68 @@ of making up expose events.
 </return>
 </function>
 
+<function name="gtk_property_expression_new">
+<description>
+Creates an expression that looks up a property via the
+given @expression or the `this` argument when @expression
+is %NULL.
+
+If the resulting object conforms to @this_type, its property
+named @property_name will be queried.
+Otherwise, this expression's evaluation will fail.
+
+The given @this_type must have a property with @property_name.
+
+
+</description>
+<parameters>
+<parameter name="this_type">
+<parameter_description> The type to expect for the this type
+</parameter_description>
+</parameter>
+<parameter name="expression">
+<parameter_description> Expression to
+evaluate to get the object to query or %NULL to
+query the `this` object
+</parameter_description>
+</parameter>
+<parameter name="property_name">
+<parameter_description> name of the property
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkExpression
+</return>
+</function>
+
+<function name="gtk_property_expression_new_for_pspec">
+<description>
+Creates an expression that looks up a property via the
+given @expression or the `this` argument when @expression
+is %NULL.
+
+If the resulting object conforms to @this_type, its
+property specified by @pspec will be queried.
+Otherwise, this expression's evaluation will fail.
+
+
+</description>
+<parameters>
+<parameter name="expression">
+<parameter_description> Expression to
+evaluate to get the object to query or %NULL to
+query the `this` object
+</parameter_description>
+</parameter>
+<parameter name="pspec">
+<parameter_description> the #GParamSpec for the property to query
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkExpression
+</return>
+</function>
+
 <function name="gtk_radio_button_get_group">
 <description>
 Retrieves the group assigned to a radio button.
@@ -59346,6 +62750,19 @@ to the signal.
 </return>
 </function>
 
+<function name="gtk_signal_list_item_factory_new">
+<description>
+Creates a new #GtkSignalListItemFactory. You need to connect signal
+handlers before you use it.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkSignalListItemFactory
+</return>
+</function>
+
 <function name="gtk_single_selection_get_autoselect">
 <description>
 Checks if autoselect has been enabled or disabled via
@@ -59627,7 +63044,7 @@ or should all have the same requisition in both directions
 
 <function name="gtk_slice_list_model_get_model">
 <description>
-Gets the model that is curently being used or %NULL if none.
+Gets the model that is currently being used or %NULL if none.
 
 
 </description>
@@ -60836,25 +64253,25 @@ Gets the model currently sorted or %NULL if none.
 </return>
 </function>
 
-<function name="gtk_sort_list_model_has_sort">
+<function name="gtk_sort_list_model_get_sorter">
 <description>
-Checks if a sort function is currently set on @self
+Gets the sorter that is used to sort @self.
 
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> a #GtkSortListModel
+<parameter_description> a #GtkSortLisTModel
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a sort function is set
+<return> the sorter of #self
 </return>
 </function>
 
 <function name="gtk_sort_list_model_new">
 <description>
-Creates a new sort list model that uses the @sort_func to sort @model.
+Creates a new sort list model that uses the @sorter to sort @model.
 
 
 </description>
@@ -60863,16 +64280,8 @@ Creates a new sort list model that uses the @sort_func to sort @model.
 <parameter_description> the model to sort
 </parameter_description>
 </parameter>
-<parameter name="sort_func">
-<parameter_description> sort function or %NULL to not sort items
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @sort_func
-</parameter_description>
-</parameter>
-<parameter name="user_destroy">
-<parameter_description> destroy notifier for @user_data
+<parameter name="sorter">
+<parameter_description> the #GtkSorter to sort @model with
 </parameter_description>
 </parameter>
 </parameters>
@@ -60898,12 +64307,10 @@ the item type is matched.
 </return>
 </function>
 
-<function name="gtk_sort_list_model_resort">
+<function name="gtk_sort_list_model_set_model">
 <description>
-Causes @self to resort all items in the model.
-
-Calling this function is necessary when data used by the sort
-function has changed.
+Sets the model to be sorted. The @model's item type must conform to
+the item type of @self.
 
 </description>
 <parameters>
@@ -60911,14 +64318,17 @@ function has changed.
 <parameter_description> a #GtkSortListModel
 </parameter_description>
 </parameter>
+<parameter name="model">
+<parameter_description> The model to be sorted
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gtk_sort_list_model_set_model">
+<function name="gtk_sort_list_model_set_sorter">
 <description>
-Sets the model to be sorted. The @model's item type must conform to
-the item type of @self.
+Sets a new sorter on @self.
 
 </description>
 <parameters>
@@ -60926,41 +64336,94 @@ the item type of @self.
 <parameter_description> a #GtkSortListModel
 </parameter_description>
 </parameter>
-<parameter name="model">
-<parameter_description> The model to be sorted
+<parameter name="sorter">
+<parameter_description> the #GtkSorter to sort @model with
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gtk_sort_list_model_set_sort_func">
+<function name="gtk_sorter_changed">
 <description>
-Sets the function used to sort items. The function will be called for every
-item and must return an integer less than, equal to, or greater than zero if
-for two items from the model if the first item is considered to be respectively
-less than, equal to, or greater than the second.
+Emits the #GtkSorter::changed signal to notify all users of the sorter
+that it has changed. Users of the sorter should then update the sort
+order via gtk_sorter_compare().
+
+Depending on the @change parameter, it may be possible to update
+the sort order without a full resorting. Refer to the #GtkSorterChange
+documentation for details.
+
+This function is intended for implementors of #GtkSorter subclasses and
+should not be called from other functions.
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> a #GtkSortListModel
+<parameter_description> a #GtkSorter
 </parameter_description>
 </parameter>
-<parameter name="sort_func">
-<parameter_description> sort function or %NULL to not sort items
+<parameter name="change">
+<parameter_description> How the sorter changed
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data passed to @sort_func
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_sorter_compare">
+<description>
+Compares two given items according to the sort order implemented
+by the sorter.
+
+Sorters implement a partial order:
+* It is reflexive, ie a = a
+* It is antisymmetric, ie if a &lt; b and b &lt; a, then a = b
+* It is transitive, ie given any 3 items with a ≤ b and b ≤ c,
+then a ≤ c
+
+The sorter  may signal it conforms to additional constraints
+via the return value of gtk_sorter_get_order().
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkSorter
 </parameter_description>
 </parameter>
-<parameter name="user_destroy">
-<parameter_description> destroy notifier for @user_data
+<parameter name="item1">
+<parameter_description> first item to compare
+</parameter_description>
+</parameter>
+<parameter name="item2">
+<parameter_description> second item to compare
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %GTK_ORDERING_EQUAL if @item1 == @item2,
+%GTK_ORDERING_SMALLER if @item1 &lt; @item2,
+%GTK_ORDERING_LARGER if @item1 &gt; @item2
+</return>
+</function>
+
+<function name="gtk_sorter_get_order">
+<description>
+Gets the order that @self conforms to. See #GtkSorterOrder for details
+of the possible return values.
+
+This function is intended to allow optimizations.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkSorter
+</parameter_description>
+</parameter>
+</parameters>
+<return> The order
+</return>
 </function>
 
 <function name="gtk_spin_button_configure">
@@ -62267,6 +65730,247 @@ stack with the exact @context_id.
 <return></return>
 </function>
 
+<function name="gtk_string_filter_get_expression">
+<description>
+Gets the expression that the string filter uses to
+obtain strings from items.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringFilter
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkExpression
+</return>
+</function>
+
+<function name="gtk_string_filter_get_ignore_case">
+<description>
+Returns whether the filter ignores case differences.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringFilter
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the filter ignores case
+</return>
+</function>
+
+<function name="gtk_string_filter_get_match_mode">
+<description>
+Returns the match mode that the filter is using.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringFilter
+</parameter_description>
+</parameter>
+</parameters>
+<return> the match mode of the filter
+</return>
+</function>
+
+<function name="gtk_string_filter_get_search">
+<description>
+Gets the search string set via gtk_string_filter_set_search().
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringFilter
+</parameter_description>
+</parameter>
+</parameters>
+<return> The search string
+</return>
+</function>
+
+<function name="gtk_string_filter_new">
+<description>
+Creates a new string filter.
+
+You will want to set up the filter by providing a string to search for
+and by providing a property to look up on the item.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkStringFilter
+</return>
+</function>
+
+<function name="gtk_string_filter_set_expression">
+<description>
+Sets the expression that the string filter uses to
+obtain strings from items. The expression must have
+a value type of #G_TYPE_STRING.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringFilter
+</parameter_description>
+</parameter>
+<parameter name="expression">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_string_filter_set_ignore_case">
+<description>
+Sets whether the filter ignores case differences.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringFilter
+</parameter_description>
+</parameter>
+<parameter name="ignore_case">
+<parameter_description> %TRUE to ignore case
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_string_filter_set_match_mode">
+<description>
+Sets the match mode fot the filter.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringFilter
+</parameter_description>
+</parameter>
+<parameter name="mode">
+<parameter_description> the new match mode
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_string_filter_set_search">
+<description>
+Sets the string to search for.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringFilter
+</parameter_description>
+</parameter>
+<parameter name="search">
+<parameter_description> The string to search for
+or %NULL to clear the search
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_string_sorter_get_expression">
+<description>
+Gets the expression that is evaluated to obtain strings from items.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringSorter
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkExpression, or %NULL
+</return>
+</function>
+
+<function name="gtk_string_sorter_get_ignore_case">
+<description>
+Gets whether the sorter ignores case differences.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringSorter
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if @self is ignoring case differences
+</return>
+</function>
+
+<function name="gtk_string_sorter_new">
+<description>
+Creates a new string sorter that compares items using the given
+@expression.
+
+Unless an expression is set on it, this sorter will always
+compare items as invalid.
+
+
+</description>
+<parameters>
+<parameter name="expression">
+<parameter_description> The expression to evaluate
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkSorter
+</return>
+</function>
+
+<function name="gtk_string_sorter_set_expression">
+<description>
+Sets the expression that is evaluated to obtain strings from items.
+
+The expression must have the type G_TYPE_STRING.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringSorter
+</parameter_description>
+</parameter>
+<parameter name="expression">
+<parameter_description> a #GtkExpression, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_string_sorter_set_ignore_case">
+<description>
+Sets whether the sorter will ignore case differences.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkStringSorter
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_style_context_add_class">
 <description>
 Adds a style class to @context, so posterior calls to
@@ -70252,6 +73956,105 @@ this interface, the row is assumed draggable.
 </return>
 </function>
 
+<function name="gtk_tree_expander_get_child">
+<description>
+Gets the child widget displayed by @self.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkTreeExpander
+</parameter_description>
+</parameter>
+</parameters>
+<return> The child displayed by @self
+</return>
+</function>
+
+<function name="gtk_tree_expander_get_item">
+<description>
+Forwards the item set on the #GtkTreeListRow that @self is managing.
+
+This call is essentially equivalent to calling
+`gtk_tree_list_row_get_item (gtk_tree_expander_get_list_row (@self))`.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkTreeExpander
+</parameter_description>
+</parameter>
+</parameters>
+<return> The item of the row
+</return>
+</function>
+
+<function name="gtk_tree_expander_get_list_row">
+<description>
+Gets the list row managed by @self.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkTreeExpander
+</parameter_description>
+</parameter>
+</parameters>
+<return> The list row displayed by @self
+</return>
+</function>
+
+<function name="gtk_tree_expander_new">
+<description>
+Creates a new #GtkTreeExpander
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GtkTreeExpander
+</return>
+</function>
+
+<function name="gtk_tree_expander_set_child">
+<description>
+Sets the content widget to display.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkTreeExpander widget
+</parameter_description>
+</parameter>
+<parameter name="child">
+<parameter_description> a #GtkWidget, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_tree_expander_set_list_row">
+<description>
+Sets the tree list row that this expander should manage.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkTreeExpander widget
+</parameter_description>
+</parameter>
+<parameter name="list_row">
+<parameter_description> a #GtkTreeListRow, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_tree_get_row_drag_data">
 <description>
 Obtains a @tree_model and @path from value of target type
@@ -70672,6 +74475,63 @@ If the row is not expandable, this function does nothing.
 <return></return>
 </function>
 
+<function name="gtk_tree_list_row_sorter_get_sorter">
+<description>
+Returns the sorter used by @self.
+
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkTreeListRowSorter
+</parameter_description>
+</parameter>
+</parameters>
+<return> the sorter used
+</return>
+</function>
+
+<function name="gtk_tree_list_row_sorter_new">
+<description>
+Create a special-purpose sorter that applies the sorting
+of @sorter to the levels of a #GtkTreeListModel.
+
+Note that this sorter relies on #GtkTreeListModel:passthrough
+being %FALSE as it can only sort #GtkTreeListRows.
+
+
+</description>
+<parameters>
+<parameter name="sorter">
+<parameter_description> a #GtkSorter, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GtkSorter
+</return>
+</function>
+
+<function name="gtk_tree_list_row_sorter_set_sorter">
+<description>
+Sets the sorter to use for items with the same parent.
+
+This sorter will be passed the #GtkTreeListRow:item of the tree
+list rows passed to @self.
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #GtkTreeListRowSorter
+</parameter_description>
+</parameter>
+<parameter name="sorter">
+<parameter_description> The sorter to use, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_tree_model_filter_clear_cache">
 <description>
 This function should almost never be called. It clears the @filter
@@ -73879,11 +77739,11 @@ renderer.  This is used primarily by the #GtkTreeView.
 </parameter_description>
 </parameter>
 <parameter name="tree_model">
-<parameter_description> The #GtkTreeModel to to get the cell renderers attributes from.
+<parameter_description> The #GtkTreeModel to get the cell renderers attributes from.
 </parameter_description>
 </parameter>
 <parameter name="iter">
-<parameter_description> The #GtkTreeIter to to get the cell renderer’s attributes from.
+<parameter_description> The #GtkTreeIter to get the cell renderer’s attributes from.
 </parameter_description>
 </parameter>
 <parameter name="is_expander">
@@ -75225,7 +79085,7 @@ itself, excluding surrounding borders and the tree expander area.
 </parameter_description>
 </parameter>
 <parameter name="column">
-<parameter_description> a #GtkTreeViewColumn for the column, or %NULL to get only vertical coordiantes
+<parameter_description> a #GtkTreeViewColumn for the column, or %NULL to get only vertical coordinates
 </parameter_description>
 </parameter>
 <parameter name="rect">
@@ -76989,6 +80849,79 @@ gtk_tree_view_enable_model_drag_source(). Calling this method sets
 <return></return>
 </function>
 
+<function name="gtk_value_dup_expression">
+<description>
+Retrieves the #GtkExpression stored inside the given @value, and acquires
+a reference to it.
+
+
+</description>
+<parameters>
+<parameter name="value">
+<parameter_description> a #GValue initialized with type %GTK_TYPE_EXPRESSION
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkExpression
+</return>
+</function>
+
+<function name="gtk_value_get_expression">
+<description>
+Retrieves the #GtkExpression stored inside the given @value.
+
+
+</description>
+<parameters>
+<parameter name="value">
+<parameter_description> a #GValue initialized with type %GTK_TYPE_EXPRESSION
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GtkExpression
+</return>
+</function>
+
+<function name="gtk_value_set_expression">
+<description>
+Stores the given #GtkExpression inside @value.
+
+The #GValue will acquire a reference to the @expression.
+
+</description>
+<parameters>
+<parameter name="value">
+<parameter_description> a #GValue initialized with type %GTK_TYPE_EXPRESSION
+</parameter_description>
+</parameter>
+<parameter name="expression">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gtk_value_take_expression">
+<description>
+Stores the given #GtkExpression inside @value.
+
+This function transfers the ownership of the @expression to the #GValue.
+
+</description>
+<parameters>
+<parameter name="value">
+<parameter_description> a #GValue initialized with type %GTK_TYPE_EXPRESSION
+</parameter_description>
+</parameter>
+<parameter name="expression">
+<parameter_description> a #GtkExpression
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gtk_video_get_autoplay">
 <description>
 Returns %TRUE if videos have been set to loop via gtk_video_set_loop().
@@ -78466,7 +82399,7 @@ the widget may expand if some of its children do.
 <function name="gtk_widget_compute_point">
 <description>
 Translates the given @point in @widget's coordinates to coordinates
-relative to @target’s coodinate system. In order to perform this
+relative to @target’s coordinate system. In order to perform this
 operation, both widgets must share a common root.
 
 
@@ -79644,6 +83577,30 @@ changes in its settings, connect to notify::display.
 </return>
 </function>
 
+<function name="gtk_widget_get_size">
+<description>
+Returns the content width or height of the widget, depending on @orientation.
+This is equivalent to calling gtk_widget_get_width() for %GTK_ORIENTATION_HORIZONTAL
+or gtk_widget_get_height() for %GTK_ORIENTATION_VERTICAL, but can be used when
+writing orientation-independent code, such as when implementing #GtkOrientable
+widgets.
+
+
+</description>
+<parameters>
+<parameter name="widget">
+<parameter_description> a #GtkWidget
+</parameter_description>
+</parameter>
+<parameter name="orientation">
+<parameter_description> the orientation to query
+</parameter_description>
+</parameter>
+</parameters>
+<return> The size of @widget in @orientation.
+</return>
+</function>
+
 <function name="gtk_widget_get_size_request">
 <description>
 Gets the size request that was explicitly set for the widget using
diff --git a/gtk/src/gtk_enums.defs b/gtk/src/gtk_enums.defs
index 355e1596..82e9bd74 100644
--- a/gtk/src/gtk_enums.defs
+++ b/gtk/src/gtk_enums.defs
@@ -260,6 +260,7 @@
 ;;   GTK_DEBUG_BUILDER         = 1 <<  7,
 ;;   GTK_DEBUG_SIZE_REQUEST    = 1 <<  8,
 ;;   GTK_DEBUG_NO_CSS_CACHE    = 1 <<  9,
+;;   GTK_DEBUG_SHORTCUTS       = 1 << 10,
 ;;   GTK_DEBUG_INTERACTIVE     = 1 << 11,
 ;;   GTK_DEBUG_TOUCHSCREEN     = 1 << 12,
 ;;   GTK_DEBUG_ACTIONS         = 1 << 13,
@@ -283,6 +284,7 @@
     '("builder" "GTK_DEBUG_BUILDER" "1 << 7")
     '("size-request" "GTK_DEBUG_SIZE_REQUEST" "1 << 8")
     '("no-css-cache" "GTK_DEBUG_NO_CSS_CACHE" "1 << 9")
+    '("shortcuts" "GTK_DEBUG_SHORTCUTS" "1 << 10")
     '("interactive" "GTK_DEBUG_INTERACTIVE" "1 << 11")
     '("touchscreen" "GTK_DEBUG_TOUCHSCREEN" "1 << 12")
     '("actions" "GTK_DEBUG_ACTIONS" "1 << 13")
@@ -918,6 +920,23 @@
   )
 )
 
+;; Original typedef:
+;; typedef enum {
+;;   GTK_ORDERING_SMALLER = -1,
+;;   GTK_ORDERING_EQUAL = 0,
+;;   GTK_ORDERING_LARGER = 1
+;; } GtkOrdering;
+
+(define-enum-extended GtkOrdering
+  (in-module "Gsk")
+  (c-name "GtkOrdering")
+  (values
+    '("smaller" "GTK_ORDERING_SMALLER" "-1")
+    '("equal" "GTK_ORDERING_EQUAL" "0")
+    '("larger" "GTK_ORDERING_LARGER" "1")
+  )
+)
+
 ;; Original typedef:
 ;; typedef enum
 ;; {
@@ -1596,6 +1615,42 @@
   )
 )
 
+;; From gtkfilter.h
+
+;; Original typedef:
+;; typedef enum {
+;;   GTK_FILTER_MATCH_SOME = 0,
+;;   GTK_FILTER_MATCH_NONE,
+;;   GTK_FILTER_MATCH_ALL
+;; } GtkFilterMatch;
+
+(define-enum-extended GtkFilterMatch
+  (in-module "Gsk")
+  (c-name "GtkFilterMatch")
+  (values
+    '("some" "GTK_FILTER_MATCH_SOME" "0")
+    '("none" "GTK_FILTER_MATCH_NONE" "1")
+    '("all" "GTK_FILTER_MATCH_ALL" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GTK_FILTER_CHANGE_DIFFERENT = 0,
+;;   GTK_FILTER_CHANGE_LESS_STRICT,
+;;   GTK_FILTER_CHANGE_MORE_STRICT,
+;; } GtkFilterChange;
+
+(define-enum-extended GtkFilterChange
+  (in-module "Gsk")
+  (c-name "GtkFilterChange")
+  (values
+    '("different" "GTK_FILTER_CHANGE_DIFFERENT" "0")
+    '("less-strict" "GTK_FILTER_CHANGE_LESS_STRICT" "1")
+    '("more-strict" "GTK_FILTER_CHANGE_MORE_STRICT" "2")
+  )
+)
+
 ;; From gtkfontchooser.h
 
 ;; Original typedef:
@@ -2120,6 +2175,44 @@
   )
 )
 
+;; From gtksorter.h
+
+;; Original typedef:
+;; typedef enum {
+;;   GTK_SORTER_ORDER_PARTIAL,
+;;   GTK_SORTER_ORDER_NONE,
+;;   GTK_SORTER_ORDER_TOTAL
+;; } GtkSorterOrder;
+
+(define-enum-extended GtkSorterOrder
+  (in-module "Gsk")
+  (c-name "GtkSorterOrder")
+  (values
+    '("partial" "GTK_SORTER_ORDER_PARTIAL" "0")
+    '("none" "GTK_SORTER_ORDER_NONE" "1")
+    '("total" "GTK_SORTER_ORDER_TOTAL" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GTK_SORTER_CHANGE_DIFFERENT,
+;;   GTK_SORTER_CHANGE_INVERTED,
+;;   GTK_SORTER_CHANGE_LESS_STRICT,
+;;   GTK_SORTER_CHANGE_MORE_STRICT
+;; } GtkSorterChange;
+
+(define-enum-extended GtkSorterChange
+  (in-module "Gsk")
+  (c-name "GtkSorterChange")
+  (values
+    '("different" "GTK_SORTER_CHANGE_DIFFERENT" "0")
+    '("inverted" "GTK_SORTER_CHANGE_INVERTED" "1")
+    '("less-strict" "GTK_SORTER_CHANGE_LESS_STRICT" "2")
+    '("more-strict" "GTK_SORTER_CHANGE_MORE_STRICT" "3")
+  )
+)
+
 ;; From gtkspinbutton.h
 
 ;; Original typedef:
@@ -2223,6 +2316,25 @@
   )
 )
 
+;; From gtkstringfilter.h
+
+;; Original typedef:
+;; typedef enum {
+;;   GTK_STRING_FILTER_MATCH_MODE_EXACT,
+;;   GTK_STRING_FILTER_MATCH_MODE_SUBSTRING,
+;;   GTK_STRING_FILTER_MATCH_MODE_PREFIX
+;; } GtkStringFilterMatchMode;
+
+(define-enum-extended GtkStringFilterMatchMode
+  (in-module "Gsk")
+  (c-name "GtkStringFilterMatchMode")
+  (values
+    '("exact" "GTK_STRING_FILTER_MATCH_MODE_EXACT" "0")
+    '("substring" "GTK_STRING_FILTER_MATCH_MODE_SUBSTRING" "1")
+    '("prefix" "GTK_STRING_FILTER_MATCH_MODE_PREFIX" "2")
+  )
+)
+
 ;; From gtkstylecontext.h
 
 ;; Original typedef:
diff --git a/gtk/src/gtk_extra_objects.defs b/gtk/src/gtk_extra_objects.defs
index 97d9223b..a109c8f3 100644
--- a/gtk/src/gtk_extra_objects.defs
+++ b/gtk/src/gtk_extra_objects.defs
@@ -573,3 +573,9 @@
   (c-name "GtkViewport")
   (gtype-id "GTK_TYPE_VIEWPORT")
 )
+
+(define-object WindowControls
+  (in-module "Gtk")
+  (c-name "GtkWindowControls")
+  (gtype-id "GTK_TYPE_WINDOW_CONTROLS")
+)
diff --git a/gtk/src/gtk_methods.defs b/gtk/src/gtk_methods.defs
index bd8c31a2..e279645c 100644
--- a/gtk/src/gtk_methods.defs
+++ b/gtk/src/gtk_methods.defs
@@ -606,6 +606,7 @@
     '("builder" "GTK_DEBUG_BUILDER")
     '("size-request" "GTK_DEBUG_SIZE_REQUEST")
     '("no-css-cache" "GTK_DEBUG_NO_CSS_CACHE")
+    '("shortcuts" "GTK_DEBUG_SHORTCUTS")
     '("interactive" "GTK_DEBUG_INTERACTIVE")
     '("touchscreen" "GTK_DEBUG_TOUCHSCREEN")
     '("actions" "GTK_DEBUG_ACTIONS")
@@ -981,6 +982,17 @@
   )
 )
 
+(define-enum Ordering
+  (in-module "Gtk")
+  (c-name "GtkOrdering")
+  (gtype-id "GTK_TYPE_ORDERING")
+  (values
+    '("smaller" "GTK_ORDERING_SMALLER")
+    '("equal" "GTK_ORDERING_EQUAL")
+    '("larger" "GTK_ORDERING_LARGER")
+  )
+)
+
 (define-enum PageOrientation
   (in-module "Gtk")
   (c-name "GtkPageOrientation")
@@ -1385,6 +1397,28 @@
   )
 )
 
+(define-enum FilterMatch
+  (in-module "Gtk")
+  (c-name "GtkFilterMatch")
+  (gtype-id "GTK_TYPE_FILTER_MATCH")
+  (values
+    '("some" "GTK_FILTER_MATCH_SOME")
+    '("none" "GTK_FILTER_MATCH_NONE")
+    '("all" "GTK_FILTER_MATCH_ALL")
+  )
+)
+
+(define-enum FilterChange
+  (in-module "Gtk")
+  (c-name "GtkFilterChange")
+  (gtype-id "GTK_TYPE_FILTER_CHANGE")
+  (values
+    '("different" "GTK_FILTER_CHANGE_DIFFERENT")
+    '("less-strict" "GTK_FILTER_CHANGE_LESS_STRICT")
+    '("more-strict" "GTK_FILTER_CHANGE_MORE_STRICT")
+  )
+)
+
 (define-flags FontChooserLevel
   (in-module "Gtk")
   (c-name "GtkFontChooserLevel")
@@ -1680,6 +1714,29 @@
   )
 )
 
+(define-enum SorterOrder
+  (in-module "Gtk")
+  (c-name "GtkSorterOrder")
+  (gtype-id "GTK_TYPE_SORTER_ORDER")
+  (values
+    '("partial" "GTK_SORTER_ORDER_PARTIAL")
+    '("none" "GTK_SORTER_ORDER_NONE")
+    '("total" "GTK_SORTER_ORDER_TOTAL")
+  )
+)
+
+(define-enum SorterChange
+  (in-module "Gtk")
+  (c-name "GtkSorterChange")
+  (gtype-id "GTK_TYPE_SORTER_CHANGE")
+  (values
+    '("different" "GTK_SORTER_CHANGE_DIFFERENT")
+    '("inverted" "GTK_SORTER_CHANGE_INVERTED")
+    '("less-strict" "GTK_SORTER_CHANGE_LESS_STRICT")
+    '("more-strict" "GTK_SORTER_CHANGE_MORE_STRICT")
+  )
+)
+
 (define-enum SpinButtonUpdatePolicy
   (in-module "Gtk")
   (c-name "GtkSpinButtonUpdatePolicy")
@@ -1736,6 +1793,17 @@
   )
 )
 
+(define-enum StringFilterMatchMode
+  (in-module "Gtk")
+  (c-name "GtkStringFilterMatchMode")
+  (gtype-id "GTK_TYPE_STRING_FILTER_MATCH_MODE")
+  (values
+    '("exact" "GTK_STRING_FILTER_MATCH_MODE_EXACT")
+    '("substring" "GTK_STRING_FILTER_MATCH_MODE_SUBSTRING")
+    '("prefix" "GTK_STRING_FILTER_MATCH_MODE_PREFIX")
+  )
+)
+
 (define-flags StyleContextPrintFlags
   (in-module "Gtk")
   (c-name "GtkStyleContextPrintFlags")
@@ -4052,7 +4120,7 @@
   (c-name "gtk_builder_extend_with_template")
   (return-type "gboolean")
   (parameters
-    '("GtkWidget*" "widget")
+    '("GObject*" "object")
     '("GType" "template_type")
     '("const-gchar*" "buffer")
     '("gssize" "length")
@@ -4062,6 +4130,51 @@
 
 
 
+;; From gtkbuilderlistitemfactory.h
+
+(define-function gtk_builder_list_item_factory_get_type
+  (c-name "gtk_builder_list_item_factory_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_builder_list_item_factory_new_from_bytes
+  (c-name "gtk_builder_list_item_factory_new_from_bytes")
+  (return-type "GtkListItemFactory*")
+  (parameters
+    '("GtkBuilderScope*" "scope")
+    '("GBytes*" "bytes")
+  )
+)
+
+(define-function gtk_builder_list_item_factory_new_from_resource
+  (c-name "gtk_builder_list_item_factory_new_from_resource")
+  (return-type "GtkListItemFactory*")
+  (parameters
+    '("GtkBuilderScope*" "scope")
+    '("const-char*" "resource_path")
+  )
+)
+
+(define-method get_bytes
+  (of-object "GtkBuilderListItemFactory")
+  (c-name "gtk_builder_list_item_factory_get_bytes")
+  (return-type "GBytes*")
+)
+
+(define-method get_resource
+  (of-object "GtkBuilderListItemFactory")
+  (c-name "gtk_builder_list_item_factory_get_resource")
+  (return-type "const-char*")
+)
+
+(define-method get_scope
+  (of-object "GtkBuilderListItemFactory")
+  (c-name "gtk_builder_list_item_factory_get_scope")
+  (return-type "GtkBuilderScope*")
+)
+
+
+
 ;; From gtkbuilderscope.h
 
 (define-method add_callback_symbol
@@ -6047,6 +6160,209 @@
 
 
 
+;; From gtkcolumnviewcolumn.h
+
+(define-function gtk_column_view_column_get_type
+  (c-name "gtk_column_view_column_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_column_view_column_new
+  (c-name "gtk_column_view_column_new")
+  (is-constructor-of "GtkColumnViewColumn")
+  (return-type "GtkColumnViewColumn*")
+  (parameters
+    '("const-char*" "title")
+  )
+)
+
+(define-function gtk_column_view_column_new_with_factory
+  (c-name "gtk_column_view_column_new_with_factory")
+  (return-type "GtkColumnViewColumn*")
+  (parameters
+    '("const-char*" "title")
+    '("GtkListItemFactory*" "factory")
+  )
+)
+
+(define-method get_column_view
+  (of-object "GtkColumnViewColumn")
+  (c-name "gtk_column_view_column_get_column_view")
+  (return-type "GtkColumnView*")
+)
+
+(define-method set_factory
+  (of-object "GtkColumnViewColumn")
+  (c-name "gtk_column_view_column_set_factory")
+  (return-type "none")
+  (parameters
+    '("GtkListItemFactory*" "factory")
+  )
+)
+
+(define-method get_factory
+  (of-object "GtkColumnViewColumn")
+  (c-name "gtk_column_view_column_get_factory")
+  (return-type "GtkListItemFactory*")
+)
+
+(define-method set_title
+  (of-object "GtkColumnViewColumn")
+  (c-name "gtk_column_view_column_set_title")
+  (return-type "none")
+  (parameters
+    '("const-char*" "title")
+  )
+)
+
+(define-method get_title
+  (of-object "GtkColumnViewColumn")
+  (c-name "gtk_column_view_column_get_title")
+  (return-type "const-char*")
+)
+
+(define-method set_sorter
+  (of-object "GtkColumnViewColumn")
+  (c-name "gtk_column_view_column_set_sorter")
+  (return-type "none")
+  (parameters
+    '("GtkSorter*" "sorter")
+  )
+)
+
+(define-method get_sorter
+  (of-object "GtkColumnViewColumn")
+  (c-name "gtk_column_view_column_get_sorter")
+  (return-type "GtkSorter*")
+)
+
+(define-method set_visible
+  (of-object "GtkColumnViewColumn")
+  (c-name "gtk_column_view_column_set_visible")
+  (return-type "none")
+  (parameters
+    '("gboolean" "visible")
+  )
+)
+
+(define-method get_visible
+  (of-object "GtkColumnViewColumn")
+  (c-name "gtk_column_view_column_get_visible")
+  (return-type "gboolean")
+)
+
+
+
+;; From gtkcolumnview.h
+
+(define-function gtk_column_view_get_type
+  (c-name "gtk_column_view_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_column_view_new
+  (c-name "gtk_column_view_new")
+  (is-constructor-of "GtkColumnView")
+  (return-type "GtkWidget*")
+)
+
+(define-method get_columns
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_get_columns")
+  (return-type "GListModel*")
+)
+
+(define-method append_column
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_append_column")
+  (return-type "none")
+  (parameters
+    '("GtkColumnViewColumn*" "column")
+  )
+)
+
+(define-method remove_column
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_remove_column")
+  (return-type "none")
+  (parameters
+    '("GtkColumnViewColumn*" "column")
+  )
+)
+
+(define-method insert_column
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_insert_column")
+  (return-type "none")
+  (parameters
+    '("guint" "position")
+    '("GtkColumnViewColumn*" "column")
+  )
+)
+
+(define-method get_model
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_get_model")
+  (return-type "GListModel*")
+)
+
+(define-method set_model
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_set_model")
+  (return-type "none")
+  (parameters
+    '("GListModel*" "model")
+  )
+)
+
+(define-method get_show_separators
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_get_show_separators")
+  (return-type "gboolean")
+)
+
+(define-method set_show_separators
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_set_show_separators")
+  (return-type "none")
+  (parameters
+    '("gboolean" "show_separators")
+  )
+)
+
+(define-method get_sorter
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_get_sorter")
+  (return-type "GtkSorter*")
+)
+
+(define-method sort_by_column
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_sort_by_column")
+  (return-type "none")
+  (parameters
+    '("GtkColumnViewColumn*" "column")
+    '("GtkSortType" "direction")
+  )
+)
+
+(define-method set_single_click_activate
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_set_single_click_activate")
+  (return-type "none")
+  (parameters
+    '("gboolean" "single_click_activate")
+  )
+)
+
+(define-method get_single_click_activate
+  (of-object "GtkColumnView")
+  (c-name "gtk_column_view_get_single_click_activate")
+  (return-type "gboolean")
+)
+
+
+
 ;; From gtkcombobox.h
 
 (define-function gtk_combo_box_get_type
@@ -6767,6 +7083,32 @@
 
 
 
+;; From gtkcustomfilter.h
+
+(define-function gtk_custom_filter_new
+  (c-name "gtk_custom_filter_new")
+  (is-constructor-of "GtkCustomFilter")
+  (return-type "GtkFilter*")
+  (parameters
+    '("GtkCustomFilterFunc" "match_func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "user_destroy")
+  )
+)
+
+(define-method set_filter_func
+  (of-object "GtkCustomFilter")
+  (c-name "gtk_custom_filter_set_filter_func")
+  (return-type "none")
+  (parameters
+    '("GtkCustomFilterFunc" "match_func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "user_destroy")
+  )
+)
+
+
+
 ;; From gtkcustomlayout.h
 
 (define-function gtk_custom_layout_new
@@ -6791,6 +7133,32 @@
 
 
 
+;; From gtkcustomsorter.h
+
+(define-function gtk_custom_sorter_new
+  (c-name "gtk_custom_sorter_new")
+  (is-constructor-of "GtkCustomSorter")
+  (return-type "GtkSorter*")
+  (parameters
+    '("GCompareDataFunc" "sort_func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "user_destroy")
+  )
+)
+
+(define-method set_sort_func
+  (of-object "GtkCustomSorter")
+  (c-name "gtk_custom_sorter_set_sort_func")
+  (return-type "none")
+  (parameters
+    '("GCompareDataFunc" "sort_func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "user_destroy")
+  )
+)
+
+
+
 ;; From gtkdebug.h
 
 (define-function gtk_get_debug_flags
@@ -6923,47 +7291,118 @@
 
 
 
-;; From gtkdragicon.h
+;; From gtkdirectorylist.h
 
-(define-function gtk_drag_icon_get_for_drag
-  (c-name "gtk_drag_icon_get_for_drag")
-  (return-type "GtkWidget*")
+(define-function gtk_directory_list_new
+  (c-name "gtk_directory_list_new")
+  (is-constructor-of "GtkDirectoryList")
+  (return-type "GtkDirectoryList*")
   (parameters
-    '("GdkDrag*" "drag")
+    '("const-char*" "attributes")
+    '("GFile*" "file")
   )
 )
 
-(define-method set_child
-  (of-object "GtkDragIcon")
-  (c-name "gtk_drag_icon_set_child")
+(define-method set_file
+  (of-object "GtkDirectoryList")
+  (c-name "gtk_directory_list_set_file")
   (return-type "none")
   (parameters
-    '("GtkWidget*" "child")
+    '("GFile*" "file")
   )
 )
 
-(define-method get_child
-  (of-object "GtkDragIcon")
-  (c-name "gtk_drag_icon_get_child")
-  (return-type "GtkWidget*")
+(define-method get_file
+  (of-object "GtkDirectoryList")
+  (c-name "gtk_directory_list_get_file")
+  (return-type "GFile*")
 )
 
-(define-function gtk_drag_icon_set_from_paintable
-  (c-name "gtk_drag_icon_set_from_paintable")
+(define-method set_attributes
+  (of-object "GtkDirectoryList")
+  (c-name "gtk_directory_list_set_attributes")
   (return-type "none")
   (parameters
-    '("GdkDrag*" "drag")
-    '("GdkPaintable*" "paintable")
-    '("int" "hot_x")
-    '("int" "hot_y")
+    '("const-char*" "attributes")
   )
 )
 
-(define-function gtk_drag_icon_create_widget_for_value
-  (c-name "gtk_drag_icon_create_widget_for_value")
-  (return-type "GtkWidget*")
+(define-method get_attributes
+  (of-object "GtkDirectoryList")
+  (c-name "gtk_directory_list_get_attributes")
+  (return-type "const-char*")
+)
+
+(define-method set_io_priority
+  (of-object "GtkDirectoryList")
+  (c-name "gtk_directory_list_set_io_priority")
+  (return-type "none")
   (parameters
-    '("const-GValue*" "value")
+    '("int" "io_priority")
+  )
+)
+
+(define-method get_io_priority
+  (of-object "GtkDirectoryList")
+  (c-name "gtk_directory_list_get_io_priority")
+  (return-type "int")
+)
+
+(define-method is_loading
+  (of-object "GtkDirectoryList")
+  (c-name "gtk_directory_list_is_loading")
+  (return-type "gboolean")
+)
+
+(define-method get_error
+  (of-object "GtkDirectoryList")
+  (c-name "gtk_directory_list_get_error")
+  (return-type "const-GError*")
+)
+
+
+
+;; From gtkdragicon.h
+
+(define-function gtk_drag_icon_get_for_drag
+  (c-name "gtk_drag_icon_get_for_drag")
+  (return-type "GtkWidget*")
+  (parameters
+    '("GdkDrag*" "drag")
+  )
+)
+
+(define-method set_child
+  (of-object "GtkDragIcon")
+  (c-name "gtk_drag_icon_set_child")
+  (return-type "none")
+  (parameters
+    '("GtkWidget*" "child")
+  )
+)
+
+(define-method get_child
+  (of-object "GtkDragIcon")
+  (c-name "gtk_drag_icon_get_child")
+  (return-type "GtkWidget*")
+)
+
+(define-function gtk_drag_icon_set_from_paintable
+  (c-name "gtk_drag_icon_set_from_paintable")
+  (return-type "none")
+  (parameters
+    '("GdkDrag*" "drag")
+    '("GdkPaintable*" "paintable")
+    '("int" "hot_x")
+    '("int" "hot_y")
+  )
+)
+
+(define-function gtk_drag_icon_create_widget_for_value
+  (c-name "gtk_drag_icon_create_widget_for_value")
+  (return-type "GtkWidget*")
+  (parameters
+    '("const-GValue*" "value")
   )
 )
 
@@ -7138,6 +7577,115 @@
 
 
 
+;; From gtkdropdown.h
+
+(define-function gtk_drop_down_new
+  (c-name "gtk_drop_down_new")
+  (is-constructor-of "GtkDropDown")
+  (return-type "GtkWidget*")
+)
+
+(define-method set_from_strings
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_set_from_strings")
+  (return-type "none")
+  (parameters
+    '("const-char*-const*" "texts")
+  )
+)
+
+(define-method set_model
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_set_model")
+  (return-type "none")
+  (parameters
+    '("GListModel*" "model")
+  )
+)
+
+(define-method get_model
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_get_model")
+  (return-type "GListModel*")
+)
+
+(define-method set_selected
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_set_selected")
+  (return-type "none")
+  (parameters
+    '("guint" "position")
+  )
+)
+
+(define-method get_selected
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_get_selected")
+  (return-type "guint")
+)
+
+(define-method set_factory
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_set_factory")
+  (return-type "none")
+  (parameters
+    '("GtkListItemFactory*" "factory")
+  )
+)
+
+(define-method get_factory
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_get_factory")
+  (return-type "GtkListItemFactory*")
+)
+
+(define-method set_list_factory
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_set_list_factory")
+  (return-type "none")
+  (parameters
+    '("GtkListItemFactory*" "factory")
+  )
+)
+
+(define-method get_list_factory
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_get_list_factory")
+  (return-type "GtkListItemFactory*")
+)
+
+(define-method set_expression
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_set_expression")
+  (return-type "none")
+  (parameters
+    '("GtkExpression*" "expression")
+  )
+)
+
+(define-method get_expression
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_get_expression")
+  (return-type "GtkExpression*")
+)
+
+(define-method set_enable_search
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_set_enable_search")
+  (return-type "none")
+  (parameters
+    '("gboolean" "enable_search")
+  )
+)
+
+(define-method get_enable_search
+  (of-object "GtkDropDown")
+  (c-name "gtk_drop_down_get_enable_search")
+  (return-type "gboolean")
+)
+
+
+
 ;; From gtkdroptargetasync.h
 
 (define-function gtk_drop_target_async_get_type
@@ -8344,6 +8892,14 @@
 
 ;; From gtkenums.h
 
+(define-function gtk_ordering_from_cmpfunc
+  (c-name "gtk_ordering_from_cmpfunc")
+  (return-type "GtkOrdering")
+  (parameters
+    '("int" "cmpfunc_result")
+  )
+)
+
 
 
 ;; From gtkeventcontrollerfocus.h
@@ -8719,6 +9275,248 @@
 
 
 
+;; From gtkexpression.h
+
+(define-function gtk_expression_get_type
+  (c-name "gtk_expression_get_type")
+  (return-type "GType")
+)
+
+(define-method ref
+  (of-object "GtkExpression")
+  (c-name "gtk_expression_ref")
+  (return-type "GtkExpression*")
+)
+
+(define-method unref
+  (of-object "GtkExpression")
+  (c-name "gtk_expression_unref")
+  (return-type "none")
+)
+
+(define-method get_value_type
+  (of-object "GtkExpression")
+  (c-name "gtk_expression_get_value_type")
+  (return-type "GType")
+)
+
+(define-method is_static
+  (of-object "GtkExpression")
+  (c-name "gtk_expression_is_static")
+  (return-type "gboolean")
+)
+
+(define-method evaluate
+  (of-object "GtkExpression")
+  (c-name "gtk_expression_evaluate")
+  (return-type "gboolean")
+  (parameters
+    '("gpointer" "this_")
+    '("GValue*" "value")
+  )
+)
+
+(define-method watch
+  (of-object "GtkExpression")
+  (c-name "gtk_expression_watch")
+  (return-type "GtkExpressionWatch*")
+  (parameters
+    '("gpointer" "this_")
+    '("GtkExpressionNotify" "notify")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "user_destroy")
+  )
+)
+
+(define-method bind
+  (of-object "GtkExpression")
+  (c-name "gtk_expression_bind")
+  (return-type "GtkExpressionWatch*")
+  (parameters
+    '("gpointer" "target")
+    '("const-char*" "property")
+    '("gpointer" "this_")
+  )
+)
+
+(define-method ref
+  (of-object "GtkExpressionWatch")
+  (c-name "gtk_expression_watch_ref")
+  (return-type "GtkExpressionWatch*")
+)
+
+(define-method unref
+  (of-object "GtkExpressionWatch")
+  (c-name "gtk_expression_watch_unref")
+  (return-type "none")
+)
+
+(define-method evaluate
+  (of-object "GtkExpressionWatch")
+  (c-name "gtk_expression_watch_evaluate")
+  (return-type "gboolean")
+  (parameters
+    '("GValue*" "value")
+  )
+)
+
+(define-method unwatch
+  (of-object "GtkExpressionWatch")
+  (c-name "gtk_expression_watch_unwatch")
+  (return-type "none")
+)
+
+(define-function gtk_property_expression_get_type
+  (c-name "gtk_property_expression_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_property_expression_new
+  (c-name "gtk_property_expression_new")
+  (is-constructor-of "GtkPropertyExpression")
+  (return-type "GtkExpression*")
+  (parameters
+    '("GType" "this_type")
+    '("GtkExpression*" "expression")
+    '("const-char*" "property_name")
+  )
+)
+
+(define-function gtk_property_expression_new_for_pspec
+  (c-name "gtk_property_expression_new_for_pspec")
+  (return-type "GtkExpression*")
+  (parameters
+    '("GtkExpression*" "expression")
+    '("GParamSpec*" "pspec")
+  )
+)
+
+(define-function gtk_constant_expression_get_type
+  (c-name "gtk_constant_expression_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_constant_expression_new
+  (c-name "gtk_constant_expression_new")
+  (is-constructor-of "GtkConstantExpression")
+  (return-type "GtkExpression*")
+  (parameters
+    '("GType" "value_type")
+  )
+  (varargs #t)
+)
+
+(define-function gtk_constant_expression_new_for_value
+  (c-name "gtk_constant_expression_new_for_value")
+  (return-type "GtkExpression*")
+  (parameters
+    '("const-GValue*" "value")
+  )
+)
+
+(define-function gtk_object_expression_get_type
+  (c-name "gtk_object_expression_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_object_expression_new
+  (c-name "gtk_object_expression_new")
+  (is-constructor-of "GtkObjectExpression")
+  (return-type "GtkExpression*")
+  (parameters
+    '("GObject*" "object")
+  )
+)
+
+(define-function gtk_closure_expression_get_type
+  (c-name "gtk_closure_expression_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_closure_expression_new
+  (c-name "gtk_closure_expression_new")
+  (is-constructor-of "GtkClosureExpression")
+  (return-type "GtkExpression*")
+  (parameters
+    '("GType" "value_type")
+    '("GClosure*" "closure")
+    '("guint" "n_params")
+    '("GtkExpression**" "params")
+  )
+)
+
+(define-function gtk_cclosure_expression_get_type
+  (c-name "gtk_cclosure_expression_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_cclosure_expression_new
+  (c-name "gtk_cclosure_expression_new")
+  (is-constructor-of "GtkCclosureExpression")
+  (return-type "GtkExpression*")
+  (parameters
+    '("GType" "value_type")
+    '("GClosureMarshal" "marshal")
+    '("guint" "n_params")
+    '("GtkExpression**" "params")
+    '("GCallback" "callback_func")
+    '("gpointer" "user_data")
+    '("GClosureNotify" "user_destroy")
+  )
+)
+
+(define-function gtk_value_set_expression
+  (c-name "gtk_value_set_expression")
+  (return-type "none")
+  (parameters
+    '("GValue*" "value")
+    '("GtkExpression*" "expression")
+  )
+)
+
+(define-function gtk_value_take_expression
+  (c-name "gtk_value_take_expression")
+  (return-type "none")
+  (parameters
+    '("GValue*" "value")
+    '("GtkExpression*" "expression")
+  )
+)
+
+(define-function gtk_value_get_expression
+  (c-name "gtk_value_get_expression")
+  (return-type "GtkExpression*")
+  (parameters
+    '("const-GValue*" "value")
+  )
+)
+
+(define-function gtk_value_dup_expression
+  (c-name "gtk_value_dup_expression")
+  (return-type "GtkExpression*")
+  (parameters
+    '("const-GValue*" "value")
+  )
+)
+
+(define-function gtk_param_expression_get_type
+  (c-name "gtk_param_expression_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_param_spec_expression
+  (c-name "gtk_param_spec_expression")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-char*" "name")
+    '("const-char*" "nick")
+    '("const-char*" "blurb")
+    '("GParamFlags" "flags")
+  )
+)
+
+
+
 ;; From gtkfilechooserbutton.h
 
 (define-function gtk_file_chooser_button_get_type
@@ -9241,6 +10039,34 @@
 
 
 
+;; From gtkfilter.h
+
+(define-method match
+  (of-object "GtkFilter")
+  (c-name "gtk_filter_match")
+  (return-type "gboolean")
+  (parameters
+    '("gpointer" "item")
+  )
+)
+
+(define-method get_strictness
+  (of-object "GtkFilter")
+  (c-name "gtk_filter_get_strictness")
+  (return-type "GtkFilterMatch")
+)
+
+(define-method changed
+  (of-object "GtkFilter")
+  (c-name "gtk_filter_changed")
+  (return-type "none")
+  (parameters
+    '("GtkFilterChange" "change")
+  )
+)
+
+
+
 ;; From gtkfilterlistmodel.h
 
 (define-function gtk_filter_list_model_new
@@ -9249,9 +10075,7 @@
   (return-type "GtkFilterListModel*")
   (parameters
     '("GListModel*" "model")
-    '("GtkFilterListModelFilterFunc" "filter_func")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "user_destroy")
+    '("GtkFilter*" "filter")
   )
 )
 
@@ -9263,17 +10087,21 @@
   )
 )
 
-(define-method set_filter_func
+(define-method set_filter
   (of-object "GtkFilterListModel")
-  (c-name "gtk_filter_list_model_set_filter_func")
+  (c-name "gtk_filter_list_model_set_filter")
   (return-type "none")
   (parameters
-    '("GtkFilterListModelFilterFunc" "filter_func")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "user_destroy")
+    '("GtkFilter*" "filter")
   )
 )
 
+(define-method get_filter
+  (of-object "GtkFilterListModel")
+  (c-name "gtk_filter_list_model_get_filter")
+  (return-type "GtkFilter*")
+)
+
 (define-method set_model
   (of-object "GtkFilterListModel")
   (c-name "gtk_filter_list_model_set_model")
@@ -9289,18 +10117,6 @@
   (return-type "GListModel*")
 )
 
-(define-method has_filter
-  (of-object "GtkFilterListModel")
-  (c-name "gtk_filter_list_model_has_filter")
-  (return-type "gboolean")
-)
-
-(define-method refilter
-  (of-object "GtkFilterListModel")
-  (c-name "gtk_filter_list_model_refilter")
-  (return-type "none")
-)
-
 
 
 ;; From gtkfixed.h
@@ -10102,6 +10918,27 @@
 
 
 
+;; From gtkfunctionslistitemfactory.h
+
+(define-function gtk_functions_list_item_factory_get_type
+  (c-name "gtk_functions_list_item_factory_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_functions_list_item_factory_new
+  (c-name "gtk_functions_list_item_factory_new")
+  (is-constructor-of "GtkFunctionsListItemFactory")
+  (return-type "GtkListItemFactory*")
+  (parameters
+    '("GtkListItemSetupFunc" "setup_func")
+    '("GtkListItemBindFunc" "bind_func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "user_destroy")
+  )
+)
+
+
+
 ;; From gtkgestureclick.h
 
 (define-function gtk_gesture_click_get_type
@@ -11055,6 +11892,104 @@
 
 
 
+;; From gtkgridview.h
+
+(define-function gtk_grid_view_get_type
+  (c-name "gtk_grid_view_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_grid_view_new
+  (c-name "gtk_grid_view_new")
+  (is-constructor-of "GtkGridView")
+  (return-type "GtkWidget*")
+)
+
+(define-function gtk_grid_view_new_with_factory
+  (c-name "gtk_grid_view_new_with_factory")
+  (return-type "GtkWidget*")
+  (parameters
+    '("GtkListItemFactory*" "factory")
+  )
+)
+
+(define-method get_model
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_get_model")
+  (return-type "GListModel*")
+)
+
+(define-method set_model
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_set_model")
+  (return-type "none")
+  (parameters
+    '("GListModel*" "model")
+  )
+)
+
+(define-method set_factory
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_set_factory")
+  (return-type "none")
+  (parameters
+    '("GtkListItemFactory*" "factory")
+  )
+)
+
+(define-method get_factory
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_get_factory")
+  (return-type "GtkListItemFactory*")
+)
+
+(define-method get_min_columns
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_get_min_columns")
+  (return-type "guint")
+)
+
+(define-method set_min_columns
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_set_min_columns")
+  (return-type "none")
+  (parameters
+    '("guint" "min_columns")
+  )
+)
+
+(define-method get_max_columns
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_get_max_columns")
+  (return-type "guint")
+)
+
+(define-method set_max_columns
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_set_max_columns")
+  (return-type "none")
+  (parameters
+    '("guint" "max_columns")
+  )
+)
+
+(define-method set_single_click_activate
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_set_single_click_activate")
+  (return-type "none")
+  (parameters
+    '("gboolean" "single_click_activate")
+  )
+)
+
+(define-method get_single_click_activate
+  (of-object "GtkGridView")
+  (c-name "gtk_grid_view_get_single_click_activate")
+  (return-type "gboolean")
+)
+
+
+
 ;; From gtk.h
 
 
@@ -12081,6 +13016,21 @@
   )
 )
 
+(define-method filter_key
+  (of-object "GtkIMContext")
+  (c-name "gtk_im_context_filter_key")
+  (return-type "gboolean")
+  (parameters
+    '("gboolean" "press")
+    '("GdkSurface*" "surface")
+    '("GdkDevice*" "device")
+    '("guint32" "time")
+    '("guint" "keycode")
+    '("GdkModifierType" "state")
+    '("int" "group")
+  )
+)
+
 (define-method focus_in
   (of-object "GtkIMContext")
   (c-name "gtk_im_context_focus_in")
@@ -13057,6 +14007,15 @@
 
 
 
+;; From gtklistbase.h
+
+(define-function gtk_list_base_get_type
+  (c-name "gtk_list_base_get_type")
+  (return-type "GType")
+)
+
+
+
 ;; From gtklistbox.h
 
 (define-function gtk_list_box_row_get_type
@@ -13406,6 +14365,87 @@
 
 
 
+;; From gtklistitemfactory.h
+
+(define-function gtk_list_item_factory_get_type
+  (c-name "gtk_list_item_factory_get_type")
+  (return-type "GType")
+)
+
+
+
+;; From gtklistitem.h
+
+(define-function gtk_list_item_get_type
+  (c-name "gtk_list_item_get_type")
+  (return-type "GType")
+)
+
+(define-method get_item
+  (of-object "GtkListItem")
+  (c-name "gtk_list_item_get_item")
+  (return-type "gpointer")
+)
+
+(define-method get_position
+  (of-object "GtkListItem")
+  (c-name "gtk_list_item_get_position")
+  (return-type "guint")
+)
+
+(define-method get_selected
+  (of-object "GtkListItem")
+  (c-name "gtk_list_item_get_selected")
+  (return-type "gboolean")
+)
+
+(define-method get_selectable
+  (of-object "GtkListItem")
+  (c-name "gtk_list_item_get_selectable")
+  (return-type "gboolean")
+)
+
+(define-method set_selectable
+  (of-object "GtkListItem")
+  (c-name "gtk_list_item_set_selectable")
+  (return-type "none")
+  (parameters
+    '("gboolean" "selectable")
+  )
+)
+
+(define-method get_activatable
+  (of-object "GtkListItem")
+  (c-name "gtk_list_item_get_activatable")
+  (return-type "gboolean")
+)
+
+(define-method set_activatable
+  (of-object "GtkListItem")
+  (c-name "gtk_list_item_set_activatable")
+  (return-type "none")
+  (parameters
+    '("gboolean" "activatable")
+  )
+)
+
+(define-method set_child
+  (of-object "GtkListItem")
+  (c-name "gtk_list_item_set_child")
+  (return-type "none")
+  (parameters
+    '("GtkWidget*" "child")
+  )
+)
+
+(define-method get_child
+  (of-object "GtkListItem")
+  (c-name "gtk_list_item_get_child")
+  (return-type "GtkWidget*")
+)
+
+
+
 ;; From gtkliststore.h
 
 (define-function gtk_list_store_get_type
@@ -13572,54 +14612,137 @@
   (return-type "none")
 )
 
-(define-method iter_is_valid
-  (of-object "GtkListStore")
-  (c-name "gtk_list_store_iter_is_valid")
-  (return-type "gboolean")
+(define-method iter_is_valid
+  (of-object "GtkListStore")
+  (c-name "gtk_list_store_iter_is_valid")
+  (return-type "gboolean")
+  (parameters
+    '("GtkTreeIter*" "iter")
+  )
+)
+
+(define-method reorder
+  (of-object "GtkListStore")
+  (c-name "gtk_list_store_reorder")
+  (return-type "none")
+  (parameters
+    '("gint*" "new_order")
+  )
+)
+
+(define-method swap
+  (of-object "GtkListStore")
+  (c-name "gtk_list_store_swap")
+  (return-type "none")
+  (parameters
+    '("GtkTreeIter*" "a")
+    '("GtkTreeIter*" "b")
+  )
+)
+
+(define-method move_after
+  (of-object "GtkListStore")
+  (c-name "gtk_list_store_move_after")
+  (return-type "none")
+  (parameters
+    '("GtkTreeIter*" "iter")
+    '("GtkTreeIter*" "position")
+  )
+)
+
+(define-method move_before
+  (of-object "GtkListStore")
+  (c-name "gtk_list_store_move_before")
+  (return-type "none")
+  (parameters
+    '("GtkTreeIter*" "iter")
+    '("GtkTreeIter*" "position")
+  )
+)
+
+
+
+;; From gtklistview.h
+
+(define-function gtk_list_view_get_type
+  (c-name "gtk_list_view_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_list_view_new
+  (c-name "gtk_list_view_new")
+  (is-constructor-of "GtkListView")
+  (return-type "GtkWidget*")
+)
+
+(define-function gtk_list_view_new_with_factory
+  (c-name "gtk_list_view_new_with_factory")
+  (return-type "GtkWidget*")
   (parameters
-    '("GtkTreeIter*" "iter")
+    '("GtkListItemFactory*" "factory")
   )
 )
 
-(define-method reorder
-  (of-object "GtkListStore")
-  (c-name "gtk_list_store_reorder")
+(define-method get_model
+  (of-object "GtkListView")
+  (c-name "gtk_list_view_get_model")
+  (return-type "GListModel*")
+)
+
+(define-method set_model
+  (of-object "GtkListView")
+  (c-name "gtk_list_view_set_model")
   (return-type "none")
   (parameters
-    '("gint*" "new_order")
+    '("GListModel*" "model")
   )
 )
 
-(define-method swap
-  (of-object "GtkListStore")
-  (c-name "gtk_list_store_swap")
+(define-method set_factory
+  (of-object "GtkListView")
+  (c-name "gtk_list_view_set_factory")
   (return-type "none")
   (parameters
-    '("GtkTreeIter*" "a")
-    '("GtkTreeIter*" "b")
+    '("GtkListItemFactory*" "factory")
   )
 )
 
-(define-method move_after
-  (of-object "GtkListStore")
-  (c-name "gtk_list_store_move_after")
+(define-method get_factory
+  (of-object "GtkListView")
+  (c-name "gtk_list_view_get_factory")
+  (return-type "GtkListItemFactory*")
+)
+
+(define-method set_show_separators
+  (of-object "GtkListView")
+  (c-name "gtk_list_view_set_show_separators")
   (return-type "none")
   (parameters
-    '("GtkTreeIter*" "iter")
-    '("GtkTreeIter*" "position")
+    '("gboolean" "show_separators")
   )
 )
 
-(define-method move_before
-  (of-object "GtkListStore")
-  (c-name "gtk_list_store_move_before")
+(define-method get_show_separators
+  (of-object "GtkListView")
+  (c-name "gtk_list_view_get_show_separators")
+  (return-type "gboolean")
+)
+
+(define-method set_single_click_activate
+  (of-object "GtkListView")
+  (c-name "gtk_list_view_set_single_click_activate")
   (return-type "none")
   (parameters
-    '("GtkTreeIter*" "iter")
-    '("GtkTreeIter*" "position")
+    '("gboolean" "single_click_activate")
   )
 )
 
+(define-method get_single_click_activate
+  (of-object "GtkListView")
+  (c-name "gtk_list_view_get_single_click_activate")
+  (return-type "gboolean")
+)
+
 
 
 ;; From gtklockbutton.h
@@ -14435,6 +15558,47 @@
 
 
 
+;; From gtkmultifilter.h
+
+(define-method remove
+  (of-object "GtkMultiFilter")
+  (c-name "gtk_multi_filter_remove")
+  (return-type "none")
+  (parameters
+    '("guint" "position")
+  )
+)
+
+
+
+;; From gtkmultisorter.h
+
+(define-function gtk_multi_sorter_new
+  (c-name "gtk_multi_sorter_new")
+  (is-constructor-of "GtkMultiSorter")
+  (return-type "GtkSorter*")
+)
+
+(define-method append
+  (of-object "GtkMultiSorter")
+  (c-name "gtk_multi_sorter_append")
+  (return-type "none")
+  (parameters
+    '("GtkSorter*" "sorter")
+  )
+)
+
+(define-method remove
+  (of-object "GtkMultiSorter")
+  (c-name "gtk_multi_sorter_remove")
+  (return-type "none")
+  (parameters
+    '("guint" "position")
+  )
+)
+
+
+
 ;; From gtknativedialog.h
 
 (define-method show
@@ -14972,6 +16136,49 @@
 
 
 
+;; From gtknumericsorter.h
+
+(define-function gtk_numeric_sorter_new
+  (c-name "gtk_numeric_sorter_new")
+  (is-constructor-of "GtkNumericSorter")
+  (return-type "GtkSorter*")
+  (parameters
+    '("GtkExpression*" "expression")
+  )
+)
+
+(define-method get_expression
+  (of-object "GtkNumericSorter")
+  (c-name "gtk_numeric_sorter_get_expression")
+  (return-type "GtkExpression*")
+)
+
+(define-method set_expression
+  (of-object "GtkNumericSorter")
+  (c-name "gtk_numeric_sorter_set_expression")
+  (return-type "none")
+  (parameters
+    '("GtkExpression*" "expression")
+  )
+)
+
+(define-method get_sort_order
+  (of-object "GtkNumericSorter")
+  (c-name "gtk_numeric_sorter_get_sort_order")
+  (return-type "GtkSortType")
+)
+
+(define-method set_sort_order
+  (of-object "GtkNumericSorter")
+  (c-name "gtk_numeric_sorter_set_sort_order")
+  (return-type "none")
+  (parameters
+    '("GtkSortType" "sort_order")
+  )
+)
+
+
+
 ;; From gtkorientable.h
 
 (define-function gtk_orientable_get_type
@@ -20408,6 +21615,21 @@
 
 
 
+;; From gtksignallistitemfactory.h
+
+(define-function gtk_signal_list_item_factory_get_type
+  (c-name "gtk_signal_list_item_factory_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_signal_list_item_factory_new
+  (c-name "gtk_signal_list_item_factory_new")
+  (is-constructor-of "GtkSignalListItemFactory")
+  (return-type "GtkListItemFactory*")
+)
+
+
+
 ;; From gtksingleselection.h
 
 (define-function gtk_single_selection_new
@@ -21032,6 +22254,35 @@
 
 
 
+;; From gtksorter.h
+
+(define-method compare
+  (of-object "GtkSorter")
+  (c-name "gtk_sorter_compare")
+  (return-type "GtkOrdering")
+  (parameters
+    '("gpointer" "item1")
+    '("gpointer" "item2")
+  )
+)
+
+(define-method get_order
+  (of-object "GtkSorter")
+  (c-name "gtk_sorter_get_order")
+  (return-type "GtkSorterOrder")
+)
+
+(define-method changed
+  (of-object "GtkSorter")
+  (c-name "gtk_sorter_changed")
+  (return-type "none")
+  (parameters
+    '("GtkSorterChange" "change")
+  )
+)
+
+
+
 ;; From gtksortlistmodel.h
 
 (define-function gtk_sort_list_model_new
@@ -21040,9 +22291,7 @@
   (return-type "GtkSortListModel*")
   (parameters
     '("GListModel*" "model")
-    '("GCompareDataFunc" "sort_func")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "user_destroy")
+    '("GtkSorter*" "sorter")
   )
 )
 
@@ -21054,21 +22303,19 @@
   )
 )
 
-(define-method set_sort_func
+(define-method set_sorter
   (of-object "GtkSortListModel")
-  (c-name "gtk_sort_list_model_set_sort_func")
+  (c-name "gtk_sort_list_model_set_sorter")
   (return-type "none")
   (parameters
-    '("GCompareDataFunc" "sort_func")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "user_destroy")
+    '("GtkSorter*" "sorter")
   )
 )
 
-(define-method has_sort
+(define-method get_sorter
   (of-object "GtkSortListModel")
-  (c-name "gtk_sort_list_model_has_sort")
-  (return-type "gboolean")
+  (c-name "gtk_sort_list_model_get_sorter")
+  (return-type "GtkSorter*")
 )
 
 (define-method set_model
@@ -21086,12 +22333,6 @@
   (return-type "GListModel*")
 )
 
-(define-method resort
-  (of-object "GtkSortListModel")
-  (c-name "gtk_sort_list_model_resort")
-  (return-type "none")
-)
-
 
 
 ;; From gtkspinbutton.h
@@ -21697,6 +22938,119 @@
 
 
 
+;; From gtkstringfilter.h
+
+(define-function gtk_string_filter_new
+  (c-name "gtk_string_filter_new")
+  (is-constructor-of "GtkStringFilter")
+  (return-type "GtkFilter*")
+)
+
+(define-method get_search
+  (of-object "GtkStringFilter")
+  (c-name "gtk_string_filter_get_search")
+  (return-type "const-char*")
+)
+
+(define-method set_search
+  (of-object "GtkStringFilter")
+  (c-name "gtk_string_filter_set_search")
+  (return-type "none")
+  (parameters
+    '("const-char*" "search")
+  )
+)
+
+(define-method get_expression
+  (of-object "GtkStringFilter")
+  (c-name "gtk_string_filter_get_expression")
+  (return-type "GtkExpression*")
+)
+
+(define-method set_expression
+  (of-object "GtkStringFilter")
+  (c-name "gtk_string_filter_set_expression")
+  (return-type "none")
+  (parameters
+    '("GtkExpression*" "expression")
+  )
+)
+
+(define-method get_ignore_case
+  (of-object "GtkStringFilter")
+  (c-name "gtk_string_filter_get_ignore_case")
+  (return-type "gboolean")
+)
+
+(define-method set_ignore_case
+  (of-object "GtkStringFilter")
+  (c-name "gtk_string_filter_set_ignore_case")
+  (return-type "none")
+  (parameters
+    '("gboolean" "ignore_case")
+  )
+)
+
+(define-method get_match_mode
+  (of-object "GtkStringFilter")
+  (c-name "gtk_string_filter_get_match_mode")
+  (return-type "GtkStringFilterMatchMode")
+)
+
+(define-method set_match_mode
+  (of-object "GtkStringFilter")
+  (c-name "gtk_string_filter_set_match_mode")
+  (return-type "none")
+  (parameters
+    '("GtkStringFilterMatchMode" "mode")
+  )
+)
+
+
+
+;; From gtkstringsorter.h
+
+(define-function gtk_string_sorter_new
+  (c-name "gtk_string_sorter_new")
+  (is-constructor-of "GtkStringSorter")
+  (return-type "GtkSorter*")
+  (parameters
+    '("GtkExpression*" "expression")
+  )
+)
+
+(define-method get_expression
+  (of-object "GtkStringSorter")
+  (c-name "gtk_string_sorter_get_expression")
+  (return-type "GtkExpression*")
+)
+
+(define-method set_expression
+  (of-object "GtkStringSorter")
+  (c-name "gtk_string_sorter_set_expression")
+  (return-type "none")
+  (parameters
+    '("GtkExpression*" "expression")
+  )
+)
+
+(define-method get_ignore_case
+  (of-object "GtkStringSorter")
+  (c-name "gtk_string_sorter_get_ignore_case")
+  (return-type "gboolean")
+)
+
+(define-method set_ignore_case
+  (of-object "GtkStringSorter")
+  (c-name "gtk_string_sorter_set_ignore_case")
+  (return-type "none")
+  (parameters
+    '("gboolean" "ignore_case")
+  )
+)
+
+
+
 ;; From gtkstylecontext.h
 
 (define-function gtk_style_context_get_type
@@ -24676,6 +26030,52 @@
 
 
 
+;; From gtktreeexpander.h
+
+(define-function gtk_tree_expander_new
+  (c-name "gtk_tree_expander_new")
+  (is-constructor-of "GtkTreeExpander")
+  (return-type "GtkWidget*")
+)
+
+(define-method get_child
+  (of-object "GtkTreeExpander")
+  (c-name "gtk_tree_expander_get_child")
+  (return-type "GtkWidget*")
+)
+
+(define-method set_child
+  (of-object "GtkTreeExpander")
+  (c-name "gtk_tree_expander_set_child")
+  (return-type "none")
+  (parameters
+    '("GtkWidget*" "child")
+  )
+)
+
+(define-method get_item
+  (of-object "GtkTreeExpander")
+  (c-name "gtk_tree_expander_get_item")
+  (return-type "gpointer")
+)
+
+(define-method get_list_row
+  (of-object "GtkTreeExpander")
+  (c-name "gtk_tree_expander_get_list_row")
+  (return-type "GtkTreeListRow*")
+)
+
+(define-method set_list_row
+  (of-object "GtkTreeExpander")
+  (c-name "gtk_tree_expander_set_list_row")
+  (return-type "none")
+  (parameters
+    '("GtkTreeListRow*" "list_row")
+  )
+)
+
+
+
 ;; From gtktreelistmodel.h
 
 (define-function gtk_tree_list_model_new
@@ -24799,6 +26199,34 @@
 
 
 
+;; From gtktreelistrowsorter.h
+
+(define-function gtk_tree_list_row_sorter_new
+  (c-name "gtk_tree_list_row_sorter_new")
+  (is-constructor-of "GtkTreeListRowSorter")
+  (return-type "GtkSorter*")
+  (parameters
+    '("GtkSorter*" "sorter")
+  )
+)
+
+(define-method get_sorter
+  (of-object "GtkTreeListRowSorter")
+  (c-name "gtk_tree_list_row_sorter_get_sorter")
+  (return-type "GtkSorter*")
+)
+
+(define-method set_sorter
+  (of-object "GtkTreeListRowSorter")
+  (c-name "gtk_tree_list_row_sorter_set_sorter")
+  (return-type "none")
+  (parameters
+    '("GtkSorter*" "sorter")
+  )
+)
+
+
+
 ;; From gtktreemodelfilter.h
 
 (define-function gtk_tree_model_filter_get_type
@@ -27978,6 +29406,15 @@
   (return-type "int")
 )
 
+(define-method get_size
+  (of-object "GtkWidget")
+  (c-name "gtk_widget_get_size")
+  (return-type "int")
+  (parameters
+    '("GtkOrientation" "orientation")
+  )
+)
+
 (define-method child_focus
   (of-object "GtkWidget")
   (c-name "gtk_widget_child_focus")
@@ -29814,6 +31251,11 @@
   (return-type "GType")
 )
 
+(define-function gtk_ordering_get_type
+  (c-name "gtk_ordering_get_type")
+  (return-type "GType")
+)
+
 (define-function gtk_page_orientation_get_type
   (c-name "gtk_page_orientation_get_type")
   (return-type "GType")
@@ -29964,6 +31406,16 @@
   (return-type "GType")
 )
 
+(define-function gtk_filter_match_get_type
+  (c-name "gtk_filter_match_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_filter_change_get_type
+  (c-name "gtk_filter_change_get_type")
+  (return-type "GType")
+)
+
 (define-function gtk_font_chooser_level_get_type
   (c-name "gtk_font_chooser_level_get_type")
   (return-type "GType")
@@ -30059,6 +31511,16 @@
   (return-type "GType")
 )
 
+(define-function gtk_sorter_order_get_type
+  (c-name "gtk_sorter_order_get_type")
+  (return-type "GType")
+)
+
+(define-function gtk_sorter_change_get_type
+  (c-name "gtk_sorter_change_get_type")
+  (return-type "GType")
+)
+
 (define-function gtk_spin_button_update_policy_get_type
   (c-name "gtk_spin_button_update_policy_get_type")
   (return-type "GType")
@@ -30074,6 +31536,11 @@
   (return-type "GType")
 )
 
+(define-function gtk_string_filter_match_mode_get_type
+  (c-name "gtk_string_filter_match_mode_get_type")
+  (return-type "GType")
+)
+
 (define-function gtk_style_context_print_flags_get_type
   (c-name "gtk_style_context_print_flags_get_type")
   (return-type "GType")
diff --git a/gtk/src/gtk_signals.defs b/gtk/src/gtk_signals.defs
index eb2b295a..61c4c526 100644
--- a/gtk/src/gtk_signals.defs
+++ b/gtk/src/gtk_signals.defs
@@ -3835,7 +3835,6 @@
   (parameters
     '("gdouble" "p0")
     '("gdouble" "p1")
-    '("GdkCrossingMode" "p2")
   )
 )
 
@@ -3843,9 +3842,6 @@
   (of-object "GtkEventControllerMotion")
   (return-type "void")
   (flags "Run Last")
-  (parameters
-    '("GdkCrossingMode" "p0")
-  )
 )
 
 (define-signal motion
@@ -5268,7 +5264,7 @@
 (define-property icon-name
   (of-object "GtkIconPaintable")
   (prop-type "GParamString")
-  (docs "The icon name choosen during lookup")
+  (docs "The icon name chosen during lookup")
   (readable #t)
   (writable #t)
   (construct-only #t)
@@ -7216,7 +7212,7 @@
   (readable #t)
   (writable #f)
   (construct-only #f)
-  (default-value "")
+  (default-value "printer")
 )
 
 (define-property job-count


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]