<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Atk" version="1.0"/>
  <include name="GLib" version="2.0"/>
  <include name="GModule" version="2.0"/>
  <include name="GObject" version="2.0"/>
  <include name="Gdk" version="2.0"/>
  <include name="GdkPixbuf" version="2.0"/>
  <include name="Gio" version="2.0"/>
  <include name="Gtk" version="2.0"/>
  <include name="Pango" version="1.0"/>
  <include name="cairo" version="1.0"/>
  <namespace name="Nautilus"
             version="2.0"
             shared-library="libnautilus-extension.so.2.0"
             c:identifier-prefixes="Nautilus"
             c:symbol-prefixes="nautilus">
    <class name="Column"
           c:symbol-prefix="column"
           c:type="NautilusColumn"
           parent="GObject.Object"
           glib:type-name="NautilusColumn"
           glib:get-type="nautilus_column_get_type"
           glib:type-struct="ColumnClass">
      <constructor name="new" c:identifier="nautilus_column_new">
        <doc xml:whitespace="preserve">Creates a new column</doc>
        <return-value transfer-ownership="full">
          <doc xml:whitespace="preserve">a newly created #NautilusColumn</doc>
          <type name="Column" c:type="NautilusColumn*"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <doc xml:whitespace="preserve">identifier of the column</doc>
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="attribute" transfer-ownership="none">
            <doc xml:whitespace="preserve">the file attribute to be displayed in the column</doc>
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="label" transfer-ownership="none">
            <doc xml:whitespace="preserve">the user-visible label for the column</doc>
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="description" transfer-ownership="none">
            <doc xml:whitespace="preserve">a user-visible description of the column</doc>
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </constructor>
      <property name="attribute" writable="1" transfer-ownership="none">
        <type name="utf8"/>
      </property>
      <property name="attribute-q" transfer-ownership="none">
        <type name="guint"/>
      </property>
      <property name="description" writable="1" transfer-ownership="none">
        <type name="utf8"/>
      </property>
      <property name="label" writable="1" transfer-ownership="none">
        <type name="utf8"/>
      </property>
      <property name="name"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8"/>
      </property>
      <property name="xalign" writable="1" transfer-ownership="none">
        <type name="gfloat"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="details">
        <type name="ColumnDetails" c:type="NautilusColumnDetails*"/>
      </field>
    </class>
    <record name="ColumnClass"
            c:type="NautilusColumnClass"
            glib:is-gtype-struct-for="Column">
      <field name="parent">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="ColumnDetails" c:type="NautilusColumnDetails" disguised="1">
    </record>
    <interface name="ColumnProvider"
               c:symbol-prefix="column_provider"
               c:type="NautilusColumnProvider"
               glib:type-name="NautilusColumnProvider"
               glib:get-type="nautilus_column_provider_get_type"
               glib:type-struct="ColumnProviderIface">
      <virtual-method name="get_columns"
                      invoker="get_columns"
                      introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
      </virtual-method>
      <method name="get_columns"
              c:identifier="nautilus_column_provider_get_columns"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
      </method>
    </interface>
    <record name="ColumnProviderIface"
            c:type="NautilusColumnProviderIface"
            glib:is-gtype-struct-for="ColumnProvider">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_columns" introspectable="0">
        <callback name="get_columns" introspectable="0">
          <return-value>
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="provider" transfer-ownership="none">
              <type name="ColumnProvider" c:type="NautilusColumnProvider*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="File" c:type="NautilusFile" disguised="1">
    </record>
    <interface name="FileInfo"
               c:symbol-prefix="file_info"
               glib:type-name="NautilusFileInfo"
               glib:get-type="nautilus_file_info_get_type"
               glib:type-struct="FileInfoIface">
      <virtual-method name="add_emblem" invoker="add_emblem">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="emblem_name" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="add_string_attribute"
                      invoker="add_string_attribute">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="attribute_name" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="can_write" invoker="can_write">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_activation_uri" invoker="get_activation_uri">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_file_type" invoker="get_file_type">
        <return-value transfer-ownership="none">
          <type name="Gio.FileType" c:type="GFileType"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_location"
                      invoker="get_location"
                      introspectable="0">
        <return-value>
          <type name="Gio.File" c:type="GFile*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_mime_type" invoker="get_mime_type">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_mount" invoker="get_mount" introspectable="0">
        <return-value>
          <type name="Gio.Mount" c:type="GMount*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_name" invoker="get_name">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_parent_info"
                      invoker="get_parent_info"
                      introspectable="0">
        <return-value>
          <type name="FileInfo" c:type="NautilusFileInfo*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_parent_location"
                      invoker="get_parent_location"
                      introspectable="0">
        <return-value>
          <type name="Gio.File" c:type="GFile*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_parent_uri" invoker="get_parent_uri">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_string_attribute"
                      invoker="get_string_attribute">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <parameter name="attribute_name" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_uri" invoker="get_uri">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="get_uri_scheme" invoker="get_uri_scheme">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </virtual-method>
      <virtual-method name="invalidate_extension_info"
                      invoker="invalidate_extension_info">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </virtual-method>
      <virtual-method name="is_directory" invoker="is_directory">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </virtual-method>
      <virtual-method name="is_gone" invoker="is_gone">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </virtual-method>
      <virtual-method name="is_mime_type" invoker="is_mime_type">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="mime_Type" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="add_emblem" c:identifier="nautilus_file_info_add_emblem">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="emblem_name" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_string_attribute"
              c:identifier="nautilus_file_info_add_string_attribute">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="attribute_name" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="can_write" c:identifier="nautilus_file_info_can_write">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </method>
      <method name="get_activation_uri"
              c:identifier="nautilus_file_info_get_activation_uri">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </method>
      <method name="get_file_type"
              c:identifier="nautilus_file_info_get_file_type">
        <return-value transfer-ownership="none">
          <type name="Gio.FileType" c:type="GFileType"/>
        </return-value>
      </method>
      <method name="get_location"
              c:identifier="nautilus_file_info_get_location"
              introspectable="0">
        <return-value>
          <type name="Gio.File" c:type="GFile*"/>
        </return-value>
      </method>
      <method name="get_mime_type"
              c:identifier="nautilus_file_info_get_mime_type">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </method>
      <method name="get_mount"
              c:identifier="nautilus_file_info_get_mount"
              introspectable="0">
        <return-value>
          <type name="Gio.Mount" c:type="GMount*"/>
        </return-value>
      </method>
      <method name="get_name" c:identifier="nautilus_file_info_get_name">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </method>
      <method name="get_parent_info"
              c:identifier="nautilus_file_info_get_parent_info"
              introspectable="0">
        <return-value>
          <type name="FileInfo" c:type="NautilusFileInfo*"/>
        </return-value>
      </method>
      <method name="get_parent_location"
              c:identifier="nautilus_file_info_get_parent_location"
              introspectable="0">
        <return-value>
          <type name="Gio.File" c:type="GFile*"/>
        </return-value>
      </method>
      <method name="get_parent_uri"
              c:identifier="nautilus_file_info_get_parent_uri">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </method>
      <method name="get_string_attribute"
              c:identifier="nautilus_file_info_get_string_attribute">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <parameter name="attribute_name" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_uri" c:identifier="nautilus_file_info_get_uri">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </method>
      <method name="get_uri_scheme"
              c:identifier="nautilus_file_info_get_uri_scheme">
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
      </method>
      <method name="invalidate_extension_info"
              c:identifier="nautilus_file_info_invalidate_extension_info">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </method>
      <method name="is_directory"
              c:identifier="nautilus_file_info_is_directory">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </method>
      <method name="is_gone" c:identifier="nautilus_file_info_is_gone">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
      </method>
      <method name="is_mime_type"
              c:identifier="nautilus_file_info_is_mime_type">
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="mime_type" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="FileInfoIface"
            c:type="NautilusFileInfoIface"
            glib:is-gtype-struct-for="FileInfo">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="is_gone">
        <callback name="is_gone">
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_name">
        <callback name="get_name">
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="char*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_uri">
        <callback name="get_uri">
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="char*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_parent_uri">
        <callback name="get_parent_uri">
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="char*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_uri_scheme">
        <callback name="get_uri_scheme">
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="char*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_mime_type">
        <callback name="get_mime_type">
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="char*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="is_mime_type">
        <callback name="is_mime_type">
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
            <parameter name="mime_Type" transfer-ownership="none">
              <type name="utf8" c:type="char*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="is_directory">
        <callback name="is_directory">
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="add_emblem">
        <callback name="add_emblem">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
            <parameter name="emblem_name" transfer-ownership="none">
              <type name="utf8" c:type="char*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_string_attribute">
        <callback name="get_string_attribute">
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="char*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
            <parameter name="attribute_name" transfer-ownership="none">
              <type name="utf8" c:type="char*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="add_string_attribute">
        <callback name="add_string_attribute">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
            <parameter name="attribute_name" transfer-ownership="none">
              <type name="utf8" c:type="char*"/>
            </parameter>
            <parameter name="value" transfer-ownership="none">
              <type name="utf8" c:type="char*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="invalidate_extension_info">
        <callback name="invalidate_extension_info">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_activation_uri">
        <callback name="get_activation_uri">
          <return-value transfer-ownership="full">
            <type name="utf8" c:type="char*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_file_type">
        <callback name="get_file_type">
          <return-value transfer-ownership="none">
            <type name="Gio.FileType" c:type="GFileType"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_location" introspectable="0">
        <callback name="get_location" introspectable="0">
          <return-value>
            <type name="Gio.File" c:type="GFile*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_parent_location" introspectable="0">
        <callback name="get_parent_location" introspectable="0">
          <return-value>
            <type name="Gio.File" c:type="GFile*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_parent_info" introspectable="0">
        <callback name="get_parent_info" introspectable="0">
          <return-value>
            <type name="FileInfo" c:type="NautilusFileInfo*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_mount" introspectable="0">
        <callback name="get_mount" introspectable="0">
          <return-value>
            <type name="Gio.Mount" c:type="GMount*"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="can_write">
        <callback name="can_write">
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <interface name="InfoProvider"
               c:symbol-prefix="info_provider"
               c:type="NautilusInfoProvider"
               glib:type-name="NautilusInfoProvider"
               glib:get-type="nautilus_info_provider_get_type"
               glib:type-struct="InfoProviderIface">
      <virtual-method name="cancel_update" invoker="cancel_update">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="handle" transfer-ownership="none">
            <type name="OperationHandle" c:type="NautilusOperationHandle*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="update_file_info" invoker="update_file_info">
        <return-value transfer-ownership="none">
          <type name="OperationResult" c:type="NautilusOperationResult"/>
        </return-value>
        <parameters>
          <parameter name="file" transfer-ownership="none">
            <type name="FileInfo" c:type="NautilusFileInfo*"/>
          </parameter>
          <parameter name="update_complete" transfer-ownership="none">
            <type name="GObject.Closure" c:type="GClosure*"/>
          </parameter>
          <parameter name="handle" transfer-ownership="none">
            <type name="OperationHandle" c:type="NautilusOperationHandle**"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="cancel_update"
              c:identifier="nautilus_info_provider_cancel_update">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="handle" transfer-ownership="none">
            <type name="OperationHandle" c:type="NautilusOperationHandle*"/>
          </parameter>
        </parameters>
      </method>
      <method name="update_file_info"
              c:identifier="nautilus_info_provider_update_file_info">
        <return-value transfer-ownership="none">
          <type name="OperationResult" c:type="NautilusOperationResult"/>
        </return-value>
        <parameters>
          <parameter name="file" transfer-ownership="none">
            <type name="FileInfo" c:type="NautilusFileInfo*"/>
          </parameter>
          <parameter name="update_complete" transfer-ownership="none">
            <type name="GObject.Closure" c:type="GClosure*"/>
          </parameter>
          <parameter name="handle" transfer-ownership="none">
            <type name="OperationHandle" c:type="NautilusOperationHandle**"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="InfoProviderIface"
            c:type="NautilusInfoProviderIface"
            glib:is-gtype-struct-for="InfoProvider">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="update_file_info">
        <callback name="update_file_info">
          <return-value transfer-ownership="none">
            <type name="OperationResult" c:type="NautilusOperationResult"/>
          </return-value>
          <parameters>
            <parameter name="provider" transfer-ownership="none">
              <type name="InfoProvider" c:type="NautilusInfoProvider*"/>
            </parameter>
            <parameter name="file" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
            <parameter name="update_complete" transfer-ownership="none">
              <type name="GObject.Closure" c:type="GClosure*"/>
            </parameter>
            <parameter name="handle" transfer-ownership="none">
              <type name="OperationHandle" c:type="NautilusOperationHandle**"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="cancel_update">
        <callback name="cancel_update">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="provider" transfer-ownership="none">
              <type name="InfoProvider" c:type="NautilusInfoProvider*"/>
            </parameter>
            <parameter name="handle" transfer-ownership="none">
              <type name="OperationHandle" c:type="NautilusOperationHandle*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <callback name="InfoProviderUpdateComplete"
              c:type="NautilusInfoProviderUpdateComplete">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="provider" transfer-ownership="none">
          <type name="InfoProvider" c:type="NautilusInfoProvider*"/>
        </parameter>
        <parameter name="handle" transfer-ownership="none">
          <type name="OperationHandle" c:type="NautilusOperationHandle*"/>
        </parameter>
        <parameter name="result" transfer-ownership="none">
          <type name="OperationResult" c:type="NautilusOperationResult"/>
        </parameter>
        <parameter name="user_data" transfer-ownership="none" closure="3">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <interface name="LocationWidgetProvider"
               c:symbol-prefix="location_widget_provider"
               c:type="NautilusLocationWidgetProvider"
               glib:type-name="NautilusLocationWidgetProvider"
               glib:get-type="nautilus_location_widget_provider_get_type"
               glib:type-struct="LocationWidgetProviderIface">
      <virtual-method name="get_widget"
                      invoker="get_widget"
                      introspectable="0">
        <return-value>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="uri" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="window" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_widget"
              c:identifier="nautilus_location_widget_provider_get_widget"
              introspectable="0">
        <return-value>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="uri" transfer-ownership="none">
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="window" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="LocationWidgetProviderIface"
            c:type="NautilusLocationWidgetProviderIface"
            glib:is-gtype-struct-for="LocationWidgetProvider">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_widget" introspectable="0">
        <callback name="get_widget" introspectable="0">
          <return-value>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </return-value>
          <parameters>
            <parameter name="provider" transfer-ownership="none">
              <type name="LocationWidgetProvider"
                    c:type="NautilusLocationWidgetProvider*"/>
            </parameter>
            <parameter name="uri" transfer-ownership="none">
              <type name="utf8" c:type="char*"/>
            </parameter>
            <parameter name="window" transfer-ownership="none">
              <type name="Gtk.Widget" c:type="GtkWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="Menu"
           c:symbol-prefix="menu"
           c:type="NautilusMenu"
           parent="GObject.Object"
           glib:type-name="NautilusMenu"
           glib:get-type="nautilus_menu_get_type"
           glib:type-struct="MenuClass">
      <constructor name="new" c:identifier="nautilus_menu_new">
        <return-value transfer-ownership="full">
          <type name="Menu" c:type="NautilusMenu*"/>
        </return-value>
      </constructor>
      <method name="append_item" c:identifier="nautilus_menu_append_item">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="item" transfer-ownership="none">
            <type name="MenuItem" c:type="NautilusMenuItem*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_items"
              c:identifier="nautilus_menu_get_items"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
      </method>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="MenuPrivate" c:type="NautilusMenuPrivate*"/>
      </field>
    </class>
    <record name="MenuClass"
            c:type="NautilusMenuClass"
            glib:is-gtype-struct-for="Menu">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <class name="MenuItem"
           c:symbol-prefix="menu_item"
           c:type="NautilusMenuItem"
           parent="GObject.Object"
           glib:type-name="NautilusMenuItem"
           glib:get-type="nautilus_menu_item_get_type"
           glib:type-struct="MenuItemClass">
      <constructor name="new" c:identifier="nautilus_menu_item_new">
        <doc xml:whitespace="preserve">Creates a new menu item that can be added to the toolbar or to a contextual menu.</doc>
        <return-value transfer-ownership="full">
          <doc xml:whitespace="preserve">a newly create #NautilusMenuItem</doc>
          <type name="MenuItem" c:type="NautilusMenuItem*"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <doc xml:whitespace="preserve">the identifier for the menu item</doc>
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="label" transfer-ownership="none">
            <doc xml:whitespace="preserve">the user-visible label of the menu item</doc>
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="tip" transfer-ownership="none">
            <doc xml:whitespace="preserve">the tooltip of the menu item</doc>
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="icon" transfer-ownership="none">
            <doc xml:whitespace="preserve">the name of the icon to display in the menu item</doc>
            <type name="utf8" c:type="char*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="list_free" c:identifier="nautilus_menu_item_list_free">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="item_list" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="activate" invoker="activate">
        <doc xml:whitespace="preserve">emits the activate signal.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </virtual-method>
      <method name="activate" c:identifier="nautilus_menu_item_activate">
        <doc xml:whitespace="preserve">emits the activate signal.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </method>
      <method name="set_submenu" c:identifier="nautilus_menu_item_set_submenu">
        <doc xml:whitespace="preserve">Attachs a menu to the given #NautilusMenuItem.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="menu" transfer-ownership="none">
            <doc xml:whitespace="preserve">pointer to a #NautilusMenu to attach to the button</doc>
            <type name="Menu" c:type="NautilusMenu*"/>
          </parameter>
        </parameters>
      </method>
      <property name="icon" writable="1" transfer-ownership="none">
        <type name="utf8"/>
      </property>
      <property name="label" writable="1" transfer-ownership="none">
        <type name="utf8"/>
      </property>
      <property name="menu" writable="1" transfer-ownership="none">
        <type name="Menu"/>
      </property>
      <property name="name"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8"/>
      </property>
      <property name="priority" writable="1" transfer-ownership="none">
        <type name="gboolean"/>
      </property>
      <property name="sensitive" writable="1" transfer-ownership="none">
        <type name="gboolean"/>
      </property>
      <property name="tip" writable="1" transfer-ownership="none">
        <type name="utf8"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="details">
        <type name="MenuItemDetails" c:type="NautilusMenuItemDetails*"/>
      </field>
      <glib:signal name="activate">
        <return-value transfer-ownership="none">
          <type name="none"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="MenuItemClass"
            c:type="NautilusMenuItemClass"
            glib:is-gtype-struct-for="MenuItem">
      <field name="parent">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="activate">
        <callback name="activate">
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="item" transfer-ownership="none">
              <type name="MenuItem" c:type="NautilusMenuItem*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="MenuItemDetails"
            c:type="NautilusMenuItemDetails"
            disguised="1">
    </record>
    <record name="MenuPrivate" c:type="NautilusMenuPrivate" disguised="1">
    </record>
    <interface name="MenuProvider"
               c:symbol-prefix="menu_provider"
               c:type="NautilusMenuProvider"
               glib:type-name="NautilusMenuProvider"
               glib:get-type="nautilus_menu_provider_get_type"
               glib:type-struct="MenuProviderIface">
      <virtual-method name="get_background_items"
                      invoker="get_background_items"
                      introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="current_folder" transfer-ownership="none">
            <type name="FileInfo" c:type="NautilusFileInfo*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_file_items"
                      invoker="get_file_items"
                      introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="files" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_toolbar_items"
                      invoker="get_toolbar_items"
                      introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="current_folder" transfer-ownership="none">
            <type name="FileInfo" c:type="NautilusFileInfo*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="emit_items_updated_signal"
              c:identifier="nautilus_menu_provider_emit_items_updated_signal">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </method>
      <method name="get_background_items"
              c:identifier="nautilus_menu_provider_get_background_items"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="current_folder" transfer-ownership="none">
            <type name="FileInfo" c:type="NautilusFileInfo*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_file_items"
              c:identifier="nautilus_menu_provider_get_file_items"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="files" transfer-ownership="none">
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="get_toolbar_items"
              c:identifier="nautilus_menu_provider_get_toolbar_items"
              introspectable="0">
        <return-value>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <parameter name="window" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="current_folder" transfer-ownership="none">
            <type name="FileInfo" c:type="NautilusFileInfo*"/>
          </parameter>
        </parameters>
      </method>
      <glib:signal name="items-updated">
        <return-value transfer-ownership="none">
          <type name="none"/>
        </return-value>
      </glib:signal>
    </interface>
    <record name="MenuProviderIface"
            c:type="NautilusMenuProviderIface"
            glib:is-gtype-struct-for="MenuProvider">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_file_items" introspectable="0">
        <callback name="get_file_items" introspectable="0">
          <return-value>
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="provider" transfer-ownership="none">
              <type name="MenuProvider" c:type="NautilusMenuProvider*"/>
            </parameter>
            <parameter name="window" transfer-ownership="none">
              <type name="Gtk.Widget" c:type="GtkWidget*"/>
            </parameter>
            <parameter name="files" transfer-ownership="none">
              <type name="GLib.List" c:type="GList*">
                <type name="gpointer" c:type="gpointer"/>
              </type>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_background_items" introspectable="0">
        <callback name="get_background_items" introspectable="0">
          <return-value>
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="provider" transfer-ownership="none">
              <type name="MenuProvider" c:type="NautilusMenuProvider*"/>
            </parameter>
            <parameter name="window" transfer-ownership="none">
              <type name="Gtk.Widget" c:type="GtkWidget*"/>
            </parameter>
            <parameter name="current_folder" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_toolbar_items" introspectable="0">
        <callback name="get_toolbar_items" introspectable="0">
          <return-value>
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="provider" transfer-ownership="none">
              <type name="MenuProvider" c:type="NautilusMenuProvider*"/>
            </parameter>
            <parameter name="window" transfer-ownership="none">
              <type name="Gtk.Widget" c:type="GtkWidget*"/>
            </parameter>
            <parameter name="current_folder" transfer-ownership="none">
              <type name="FileInfo" c:type="NautilusFileInfo*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="OperationHandle"
            c:type="NautilusOperationHandle"
            disguised="1">
    </record>
    <enumeration name="OperationResult"
                 glib:type-name="NautilusOperationResult"
                 glib:get-type="nautilus_operation_result_get_type"
                 c:type="NautilusOperationResult">
      <member name="complete"
              value="0"
              c:identifier="NAUTILUS_OPERATION_COMPLETE"
              glib:nick="complete"/>
      <member name="failed"
              value="1"
              c:identifier="NAUTILUS_OPERATION_FAILED"
              glib:nick="failed"/>
      <member name="in_progress"
              value="2"
              c:identifier="NAUTILUS_OPERATION_IN_PROGRESS"
              glib:nick="in_progress"/>
    </enumeration>
    <class name="PropertyPage"
           c:symbol-prefix="property_page"
           c:type="NautilusPropertyPage"
           parent="GObject.Object"
           glib:type-name="NautilusPropertyPage"
           glib:get-type="nautilus_property_page_get_type"
           glib:type-struct="PropertyPageClass">
      <constructor name="new" c:identifier="nautilus_property_page_new">
        <doc xml:whitespace="preserve">Creates a new #NautilusPropertyPage from page_widget.</doc>
        <return-value transfer-ownership="full">
          <doc xml:whitespace="preserve">a newly created #NautilusPropertyPage</doc>
          <type name="PropertyPage" c:type="NautilusPropertyPage*"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <doc xml:whitespace="preserve">the identifier for the property page</doc>
            <type name="utf8" c:type="char*"/>
          </parameter>
          <parameter name="label" transfer-ownership="none">
            <doc xml:whitespace="preserve">the user-visible label of the property page</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="page" transfer-ownership="none">
            <doc xml:whitespace="preserve">the property page to display</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </constructor>
      <property name="label" writable="1" transfer-ownership="none">
        <type name="Gtk.Widget"/>
      </property>
      <property name="name"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8"/>
      </property>
      <property name="page" writable="1" transfer-ownership="none">
        <type name="Gtk.Widget"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="details">
        <type name="PropertyPageDetails"
              c:type="NautilusPropertyPageDetails*"/>
      </field>
    </class>
    <record name="PropertyPageClass"
            c:type="NautilusPropertyPageClass"
            glib:is-gtype-struct-for="PropertyPage">
      <field name="parent">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="PropertyPageDetails"
            c:type="NautilusPropertyPageDetails"
            disguised="1">
    </record>
    <interface name="PropertyPageProvider"
               c:symbol-prefix="property_page_provider"
               c:type="NautilusPropertyPageProvider"
               glib:type-name="NautilusPropertyPageProvider"
               glib:get-type="nautilus_property_page_provider_get_type"
               glib:type-struct="PropertyPageProviderIface">
      <virtual-method name="get_pages" invoker="get_pages" introspectable="0">
        <doc xml:whitespace="preserve">This function is called by Nautilus when it wants property page
items from the extension.
This function is called in the main thread before a property page
is shown, so it should return quickly.</doc>
        <return-value>
          <doc xml:whitespace="preserve">A #GList of allocated #NautilusPropertyPage items.</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <parameter name="files" transfer-ownership="none">
            <doc xml:whitespace="preserve">a #GList of #NautilusFileInfo</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_pages"
              c:identifier="nautilus_property_page_provider_get_pages"
              introspectable="0">
        <doc xml:whitespace="preserve">This function is called by Nautilus when it wants property page
items from the extension.
This function is called in the main thread before a property page
is shown, so it should return quickly.</doc>
        <return-value>
          <doc xml:whitespace="preserve">A #GList of allocated #NautilusPropertyPage items.</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <parameter name="files" transfer-ownership="none">
            <doc xml:whitespace="preserve">a #GList of #NautilusFileInfo</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </method>
    </interface>
    <record name="PropertyPageProviderIface"
            c:type="NautilusPropertyPageProviderIface"
            glib:is-gtype-struct-for="PropertyPageProvider">
      <field name="g_iface">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="get_pages" introspectable="0">
        <callback name="get_pages" introspectable="0">
          <return-value>
            <doc xml:whitespace="preserve">A #GList of allocated #NautilusPropertyPage items.</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="provider" transfer-ownership="none">
              <type name="PropertyPageProvider"
                    c:type="NautilusPropertyPageProvider*"/>
            </parameter>
            <parameter name="files" transfer-ownership="none">
              <doc xml:whitespace="preserve">a #GList of #NautilusFileInfo</doc>
              <type name="GLib.List" c:type="GList*">
                <type name="gpointer" c:type="gpointer"/>
              </type>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <function name="file_info_create"
              c:identifier="nautilus_file_info_create"
              introspectable="0">
      <return-value>
        <type name="FileInfo" c:type="NautilusFileInfo*"/>
      </return-value>
      <parameters>
        <parameter name="location" transfer-ownership="none">
          <type name="Gio.File" c:type="GFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_info_create_for_uri"
              c:identifier="nautilus_file_info_create_for_uri"
              introspectable="0">
      <return-value>
        <type name="FileInfo" c:type="NautilusFileInfo*"/>
      </return-value>
      <parameters>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_info_list_copy"
              c:identifier="nautilus_file_info_list_copy"
              introspectable="0">
      <return-value>
        <type name="GLib.List" c:type="GList*">
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
      <parameters>
        <parameter name="files" transfer-ownership="none">
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </parameter>
      </parameters>
    </function>
    <function name="file_info_list_free"
              c:identifier="nautilus_file_info_list_free">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="files" transfer-ownership="none">
          <type name="GLib.List" c:type="GList*">
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </parameter>
      </parameters>
    </function>
    <function name="file_info_lookup"
              c:identifier="nautilus_file_info_lookup"
              introspectable="0">
      <return-value>
        <type name="FileInfo" c:type="NautilusFileInfo*"/>
      </return-value>
      <parameters>
        <parameter name="location" transfer-ownership="none">
          <type name="Gio.File" c:type="GFile*"/>
        </parameter>
      </parameters>
    </function>
    <function name="file_info_lookup_for_uri"
              c:identifier="nautilus_file_info_lookup_for_uri"
              introspectable="0">
      <return-value>
        <type name="FileInfo" c:type="NautilusFileInfo*"/>
      </return-value>
      <parameters>
        <parameter name="uri" transfer-ownership="none">
          <type name="utf8" c:type="char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="info_provider_update_complete_invoke"
              c:identifier="nautilus_info_provider_update_complete_invoke">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="update_complete" transfer-ownership="none">
          <type name="GObject.Closure" c:type="GClosure*"/>
        </parameter>
        <parameter name="provider" transfer-ownership="none">
          <type name="InfoProvider" c:type="NautilusInfoProvider*"/>
        </parameter>
        <parameter name="handle" transfer-ownership="none">
          <type name="OperationHandle" c:type="NautilusOperationHandle*"/>
        </parameter>
        <parameter name="result" transfer-ownership="none">
          <type name="OperationResult" c:type="NautilusOperationResult"/>
        </parameter>
      </parameters>
    </function>
    <function name="module_initialize"
              c:identifier="nautilus_module_initialize">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="module" transfer-ownership="none">
          <type name="GObject.TypeModule" c:type="GTypeModule*"/>
        </parameter>
      </parameters>
    </function>
    <function name="module_list_types"
              c:identifier="nautilus_module_list_types">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="types" transfer-ownership="none">
          <type name="GType" c:type="GType**"/>
        </parameter>
        <parameter name="num_types" transfer-ownership="none">
          <type name="gint" c:type="int*"/>
        </parameter>
      </parameters>
    </function>
    <function name="module_shutdown" c:identifier="nautilus_module_shutdown">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
  </namespace>
</repository>
