<?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="GLib" version="2.0"/>
  <include name="GdkPixbuf" version="2.0"/>
  <package name="libnotify"/>
  <c:include name="libnotify/notify.h"/>
  <namespace name="Notify"
             version="0.7"
             shared-library="libnotify.so.4"
             c:identifier-prefixes="Notify"
             c:symbol-prefixes="notify">
    <function-macro name="ACTION_CALLBACK"
                    c:identifier="NOTIFY_ACTION_CALLBACK"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="libnotify/notification.h"
           line="124">A convenience macro for casting a function to a [callback@ActionCallback].

This is much like [func@GObject.CALLBACK].</doc>
      <source-position filename="libnotify/notification.h" line="132"/>
      <parameters>
        <parameter name="func">
          <doc xml:space="preserve"
               filename="libnotify/notification.h"
               line="126">The function to cast.</doc>
        </parameter>
      </parameters>
    </function-macro>
    <callback name="ActionCallback" c:type="NotifyActionCallback">
      <doc xml:space="preserve"
           filename="libnotify/notification.h"
           line="112">An action callback function.</doc>
      <source-position filename="libnotify/notification.h" line="120"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="notification" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libnotify/notification.h"
               line="114">a #NotifyActionCallback notification</doc>
          <type name="Notification" c:type="NotifyNotification*"/>
        </parameter>
        <parameter name="action" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libnotify/notification.h"
               line="115">The activated action name</doc>
          <type name="utf8" c:type="char*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1"
                   closure="2">
          <doc xml:space="preserve"
               filename="libnotify/notification.h"
               line="116">User provided data</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <function-macro name="CHECK_VERSION"
                    c:identifier="NOTIFY_CHECK_VERSION"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="libnotify/notify-features.h"
           line="46">check whether a version equal to or greater than
`major.minor.micro` is present.</doc>
      <source-position filename="libnotify/notify-features.h" line="55"/>
      <parameters>
        <parameter name="major">
          <doc xml:space="preserve"
               filename="libnotify/notify-features.h"
               line="48">required major version</doc>
        </parameter>
        <parameter name="minor">
          <doc xml:space="preserve"
               filename="libnotify/notify-features.h"
               line="49">required minor version</doc>
        </parameter>
        <parameter name="micro">
          <doc xml:space="preserve"
               filename="libnotify/notify-features.h"
               line="50">required micro version</doc>
        </parameter>
      </parameters>
    </function-macro>
    <enumeration name="ClosedReason"
                 version="0.8.0"
                 glib:type-name="NotifyClosedReason"
                 glib:get-type="notify_closed_reason_get_type"
                 c:type="NotifyClosedReason">
      <doc xml:space="preserve"
           filename="libnotify/notification.h"
           line="90">The reason for which the notification has been closed.</doc>
      <member name="unset"
              value="-1"
              c:identifier="NOTIFY_CLOSED_REASON_UNSET"
              glib:nick="unset"
              glib:name="NOTIFY_CLOSED_REASON_UNSET">
        <doc xml:space="preserve"
             filename="libnotify/notification.h"
             line="92">Notification not closed.</doc>
      </member>
      <member name="expired"
              value="1"
              c:identifier="NOTIFY_CLOSED_REASON_EXPIRED"
              glib:nick="expired"
              glib:name="NOTIFY_CLOSED_REASON_EXPIRED">
        <doc xml:space="preserve"
             filename="libnotify/notification.h"
             line="93">Timeout has expired.</doc>
      </member>
      <member name="dismissed"
              value="2"
              c:identifier="NOTIFY_CLOSED_REASON_DISMISSED"
              glib:nick="dismissed"
              glib:name="NOTIFY_CLOSED_REASON_DISMISSED">
        <doc xml:space="preserve"
             filename="libnotify/notification.h"
             line="94">It has been dismissed by the user.</doc>
      </member>
      <member name="api_request"
              value="3"
              c:identifier="NOTIFY_CLOSED_REASON_API_REQUEST"
              glib:nick="api-request"
              glib:name="NOTIFY_CLOSED_REASON_API_REQUEST">
        <doc xml:space="preserve"
             filename="libnotify/notification.h"
             line="95">It has been closed by a call to
  [method@NotifyNotification.close].</doc>
      </member>
      <member name="undefiend"
              value="4"
              c:identifier="NOTIFY_CLOSED_REASON_UNDEFIEND"
              glib:nick="undefiend"
              glib:name="NOTIFY_CLOSED_REASON_UNDEFIEND">
        <doc xml:space="preserve"
             filename="libnotify/notification.h"
             line="97">Closed by undefined/reserved reasons.</doc>
      </member>
    </enumeration>
    <constant name="EXPIRES_DEFAULT"
              value="-1"
              c:type="NOTIFY_EXPIRES_DEFAULT">
      <doc xml:space="preserve"
           filename="libnotify/notification.h"
           line="31">The default expiration time on a notification.</doc>
      <source-position filename="libnotify/notification.h" line="36"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="EXPIRES_NEVER" value="0" c:type="NOTIFY_EXPIRES_NEVER">
      <doc xml:space="preserve"
           filename="libnotify/notification.h"
           line="38">The notification never expires.

It stays open until closed by the calling API or the user.</doc>
      <source-position filename="libnotify/notification.h" line="45"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <class name="Notification"
           c:symbol-prefix="notification"
           c:type="NotifyNotification"
           parent="GObject.Object"
           glib:type-name="NotifyNotification"
           glib:get-type="notify_notification_get_type"
           glib:type-struct="NotificationClass">
      <doc xml:space="preserve"
           filename="libnotify/notification.h"
           line="51">A passive pop-up notification.

#NotifyNotification represents a passive pop-up notification. It can
contain summary text, body text, and an icon, as well as hints specifying
how the notification should be presented. The notification is rendered
by a notification daemon, and may present the notification in any number
of ways. As such, there is a clear separation of content and presentation,
and this API enforces that.</doc>
      <source-position filename="libnotify/notification.h" line="70"/>
      <constructor name="new" c:identifier="notify_notification_new">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="478">Creates a new #NotifyNotification.

The summary text is required, but all other parameters are optional.</doc>
        <source-position filename="libnotify/notification.h" line="134"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libnotify/notification.c"
               line="488">The new #NotifyNotification.</doc>
          <type name="Notification" c:type="NotifyNotification*"/>
        </return-value>
        <parameters>
          <parameter name="summary" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="480">The required summary text.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="body"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="481">The optional body text.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="icon"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="482">The optional icon theme icon name or filename.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="closed">
        <source-position filename="libnotify/notification.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="add_action" c:identifier="notify_notification_add_action">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1747">Adds an action to a notification.

When the action is invoked, the specified callback function will be called,
along with the value passed to @user_data.</doc>
        <source-position filename="libnotify/notification.h" line="199"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1749">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="action" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1750">The action ID.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="label" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1751">The human-readable action label.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     scope="notified"
                     closure="3"
                     destroy="4">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1752">The action's callback function.</doc>
            <type name="ActionCallback" c:type="NotifyActionCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1753">Optional custom data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="free_func" transfer-ownership="none" scope="async">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1754">An optional function to free @user_data when the notification
  is destroyed.</doc>
            <type name="GLib.DestroyNotify" c:type="GFreeFunc"/>
          </parameter>
        </parameters>
      </method>
      <method name="clear_actions"
              c:identifier="notify_notification_clear_actions">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1723">Clears all actions from the notification.</doc>
        <source-position filename="libnotify/notification.h" line="208"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1725">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="clear_hints"
              c:identifier="notify_notification_clear_hints">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1704">Clears all hints from the notification.</doc>
        <source-position filename="libnotify/notification.h" line="197"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1706">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="close" c:identifier="notify_notification_close" throws="1">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1833">Synchronously tells the notification server to hide the notification on the screen.</doc>
        <source-position filename="libnotify/notification.h" line="209"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libnotify/notification.c"
               line="1840">%TRUE on success, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1835">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_activation_token"
              c:identifier="notify_notification_get_activation_token"
              version="0.7.10">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1795">Gets the activation token of the notification.

If an an action is currently being activated, return the activation token.
This function is intended to be used in a [callback@ActionCallback] to get
the activation token for the activated action, if the notification daemon
supports it.</doc>
        <source-position filename="libnotify/notification.h" line="206"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="libnotify/notification.c"
               line="1806">The current activation token, or %NULL if none</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1797">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_closed_reason"
              c:identifier="notify_notification_get_closed_reason"
              glib:get-property="closed-reason">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1883">Returns the closed reason code for the notification.

This is valid only after the [signal@Notification::closed] signal is emitted.

Since version 0.8.0 the returned value is of type [enum@ClosedReason].</doc>
        <source-position filename="libnotify/notification.h" line="212"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libnotify/notification.c"
               line="1893">An integer representing the closed reason code
  (Since 0.8.0 it's also a [enum@ClosedReason]).</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1885">The notification.</doc>
            <type name="Notification" c:type="const NotifyNotification*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_app_icon"
              c:identifier="notify_notification_set_app_icon"
              glib:set-property="app-icon"
              version="0.8.4">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1531">Sets the application icon for the notification.

If this function is not called or if @app_icon is %NULL, the application icon
will be set from the value set via [func@set_app_icon].</doc>
        <source-position filename="libnotify/notification.h" line="194"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1533">a #NotifyNotification</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="app_icon"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1534">The optional icon theme icon name or filename.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_app_name"
              c:identifier="notify_notification_set_app_name"
              glib:set-property="app-name"
              version="0.7.3">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1499">Sets the application name for the notification.

If this function is not called or if @app_name is %NULL, the application name
will be set from the value used in [func@init] or overridden with
[func@set_app_name].</doc>
        <source-position filename="libnotify/notification.h" line="191"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1501">a #NotifyNotification</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="app_name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1502">the localised application name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_category"
              c:identifier="notify_notification_set_category">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1281">Sets the category of this notification.

This can be used by the notification server to filter or display the data in
a certain way.</doc>
        <source-position filename="libnotify/notification.h" line="149"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1283">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="category" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1284">The category.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_hint"
              c:identifier="notify_notification_set_hint"
              version="0.6">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1464">Sets a hint for @key with value @value.

If @value is %NULL, a previously set hint for @key is unset.

If @value is floating, it is consumed.</doc>
        <source-position filename="libnotify/notification.h" line="187"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1466">a #NotifyNotification</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1467">the hint key</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="value"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1468">the hint value</doc>
            <type name="GLib.Variant" c:type="GVariant*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_hint_byte"
              c:identifier="notify_notification_set_hint_byte"
              deprecated="1"
              deprecated-version="0.6.">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1620">Sets a hint with a byte value.</doc>
        <doc-deprecated xml:space="preserve">Use [method@Notification.set_hint] instead</doc-deprecated>
        <source-position filename="libnotify/notification.h" line="177"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1622">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1623">The hint.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1624">The hint's value.</doc>
            <type name="guint8" c:type="guchar"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_hint_byte_array"
              c:identifier="notify_notification_set_hint_byte_array"
              deprecated="1"
              deprecated-version="0.6.">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1639">Sets a hint with a byte array value.

The length of @value must be passed as @len.</doc>
        <doc-deprecated xml:space="preserve">Use [method@Notification.set_hint] instead</doc-deprecated>
        <source-position filename="libnotify/notification.h" line="181"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1641">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1642">The hint.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1643">The hint's value.</doc>
            <array length="2" zero-terminated="0" c:type="const guchar*">
              <type name="guint8" c:type="guchar"/>
            </array>
          </parameter>
          <parameter name="len" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1644">The length of the byte array.</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_hint_double"
              c:identifier="notify_notification_set_hint_double"
              deprecated="1"
              deprecated-version="0.6.">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1601">Sets a hint with a double value.</doc>
        <doc-deprecated xml:space="preserve">Use [method@Notification.set_hint] instead</doc-deprecated>
        <source-position filename="libnotify/notification.h" line="169"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1603">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1604">The hint.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1605">The hint's value.</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_hint_int32"
              c:identifier="notify_notification_set_hint_int32"
              deprecated="1"
              deprecated-version="0.6.">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1562">Sets a hint with a 32-bit integer value.</doc>
        <doc-deprecated xml:space="preserve">Use [method@Notification.set_hint] instead</doc-deprecated>
        <source-position filename="libnotify/notification.h" line="162"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1564">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1565">The hint.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1566">The hint's value.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_hint_string"
              c:identifier="notify_notification_set_hint_string"
              deprecated="1"
              deprecated-version="0.6.">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1676">Sets a hint with a string value.</doc>
        <doc-deprecated xml:space="preserve">Use [method@Notification.set_hint] instead</doc-deprecated>
        <source-position filename="libnotify/notification.h" line="173"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1678">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1679">The hint.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1680">The hint's value.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_hint_uint32"
              c:identifier="notify_notification_set_hint_uint32"
              deprecated="1"
              deprecated-version="0.6.">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1582">Sets a hint with an unsigned 32-bit integer value.</doc>
        <doc-deprecated xml:space="preserve">Use [method@Notification.set_hint] instead</doc-deprecated>
        <source-position filename="libnotify/notification.h" line="165"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1584">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1585">The hint.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1586">The hint's value.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon_from_pixbuf"
              c:identifier="notify_notification_set_icon_from_pixbuf"
              deprecated="1"
              deprecated-version="0.5.">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1326">Sets the icon in the notification from a #GdkPixbuf.</doc>
        <doc-deprecated xml:space="preserve">Use [method@Notification.set_image_from_pixbuf] instead.</doc-deprecated>
        <source-position filename="libnotify/notification.h" line="159"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1328">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1329">The icon.</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_image_from_pixbuf"
              c:identifier="notify_notification_set_image_from_pixbuf"
              version="0.5">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1342">Sets the image in the notification from a [class@GdkPixbuf.Pixbuf].</doc>
        <source-position filename="libnotify/notification.h" line="155"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1344">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="pixbuf" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1345">The image.</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_timeout"
              c:identifier="notify_notification_set_timeout">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1246">Sets the timeout of the notification.

To set the default time, pass %NOTIFY_EXPIRES_DEFAULT as @timeout. To set the
notification to never expire, pass %NOTIFY_EXPIRES_NEVER.

Note that the timeout may be ignored by the server.</doc>
        <source-position filename="libnotify/notification.h" line="146"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1248">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1249">The timeout in milliseconds.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_urgency"
              c:identifier="notify_notification_set_urgency">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1308">Sets the urgency level of this notification.</doc>
        <source-position filename="libnotify/notification.h" line="152"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1310">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="urgency" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1311">The urgency level.</doc>
            <type name="Urgency" c:type="NotifyUrgency"/>
          </parameter>
        </parameters>
      </method>
      <method name="show" c:identifier="notify_notification_show" throws="1">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="1111">Tells the notification server to display the notification on the screen.</doc>
        <source-position filename="libnotify/notification.h" line="143"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libnotify/notification.c"
               line="1118">%TRUE if successful. On error, this will return %FALSE and set
  @error.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="1113">The notification.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="update" c:identifier="notify_notification_update">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="652">Updates the notification text and icon.

This won't send the update out and display it on the screen. For that, you
will need to call [method@Notification.show].</doc>
        <source-position filename="libnotify/notification.h" line="138"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libnotify/notification.c"
               line="664">%TRUE, unless an invalid parameter was passed.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="notification" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="654">The notification to update.</doc>
            <type name="Notification" c:type="NotifyNotification*"/>
          </instance-parameter>
          <parameter name="summary" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="655">The new required summary text.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="body"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="656">The optional body text.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="icon"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libnotify/notification.c"
                 line="657">The optional icon theme icon name or filename.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <property name="app-icon"
                version="0.8.4"
                writable="1"
                transfer-ownership="none"
                setter="set_app_icon"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="196">The icon of the application for the notification.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="app-name"
                version="0.7.3"
                writable="1"
                transfer-ownership="none"
                setter="set_app_name"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="178">The name of the application for the notification.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="body"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="232">The body of the notification.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="closed-reason"
                transfer-ownership="none"
                getter="get_closed_reason"
                default-value="-1">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="266">The closed reason of the notification.

See [signal@Notification::closed].</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <property name="icon-name"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="249">The icon-name of the icon to be displayed on the notification.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="id"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="160">The Id of the notification.</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <property name="summary"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="215">The summary of the notification.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <glib:signal name="closed" when="first">
        <doc xml:space="preserve"
             filename="libnotify/notification.c"
             line="143">Emitted when the notification is closed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="NotificationClass"
            c:type="NotifyNotificationClass"
            glib:is-gtype-struct-for="Notification">
      <source-position filename="libnotify/notification.h" line="70"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="closed">
        <callback name="closed">
          <source-position filename="libnotify/notification.h" line="69"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="notification" transfer-ownership="none">
              <type name="Notification" c:type="NotifyNotification*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <enumeration name="Urgency"
                 glib:type-name="NotifyUrgency"
                 glib:get-type="notify_urgency_get_type"
                 c:type="NotifyUrgency">
      <doc xml:space="preserve"
           filename="libnotify/notification.h"
           line="73">The urgency level of the notification.</doc>
      <member name="low"
              value="0"
              c:identifier="NOTIFY_URGENCY_LOW"
              glib:nick="low"
              glib:name="NOTIFY_URGENCY_LOW">
        <doc xml:space="preserve"
             filename="libnotify/notification.h"
             line="75">Low urgency. Used for unimportant notifications.</doc>
      </member>
      <member name="normal"
              value="1"
              c:identifier="NOTIFY_URGENCY_NORMAL"
              glib:nick="normal"
              glib:name="NOTIFY_URGENCY_NORMAL">
        <doc xml:space="preserve"
             filename="libnotify/notification.h"
             line="76">Normal urgency. Used for most standard notifications.</doc>
      </member>
      <member name="critical"
              value="2"
              c:identifier="NOTIFY_URGENCY_CRITICAL"
              glib:nick="critical"
              glib:name="NOTIFY_URGENCY_CRITICAL">
        <doc xml:space="preserve"
             filename="libnotify/notification.h"
             line="77">Critical urgency. Used for very important notifications.</doc>
      </member>
    </enumeration>
    <constant name="VERSION_MAJOR" value="0" c:type="NOTIFY_VERSION_MAJOR">
      <doc xml:space="preserve"
           filename="libnotify/notify-features.h"
           line="27">Adwaita major version component (e.g. 1 if the version is 1.2.3).</doc>
      <source-position filename="libnotify/notify-features.h" line="32"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="VERSION_MICRO" value="4" c:type="NOTIFY_VERSION_MICRO">
      <doc xml:space="preserve"
           filename="libnotify/notify-features.h"
           line="39">Adwaita micro version component (e.g. 3 if the version is 1.2.3).</doc>
      <source-position filename="libnotify/notify-features.h" line="44"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="VERSION_MINOR" value="8" c:type="NOTIFY_VERSION_MINOR">
      <doc xml:space="preserve"
           filename="libnotify/notify-features.h"
           line="33">Adwaita minor version component (e.g. 2 if the version is 1.2.3).</doc>
      <source-position filename="libnotify/notify-features.h" line="38"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <function name="get_app_icon"
              c:identifier="notify_get_app_icon"
              version="0.8.4">
      <doc xml:space="preserve"
           filename="libnotify/notify.c"
           line="453">Gets the application icon registered.</doc>
      <source-position filename="libnotify/notify.h" line="40"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libnotify/notify.c"
             line="458">The registered application icon, set via [func@set_app_icon].</doc>
        <type name="utf8" c:type="const char*"/>
      </return-value>
    </function>
    <function name="get_app_name" c:identifier="notify_get_app_name">
      <doc xml:space="preserve"
           filename="libnotify/notify.c"
           line="440">Gets the application name registered.</doc>
      <source-position filename="libnotify/notify.h" line="37"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libnotify/notify.c"
             line="445">The registered application name, passed to [func@init].</doc>
        <type name="utf8" c:type="const char*"/>
      </return-value>
    </function>
    <function name="get_server_caps" c:identifier="notify_get_server_caps">
      <doc xml:space="preserve"
           filename="libnotify/notify.c"
           line="606">Queries the server capabilities.

Synchronously queries the server for its capabilities and returns them in a
list.</doc>
      <source-position filename="libnotify/notify.h" line="43"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libnotify/notify.c"
             line="614">a list of server capability strings.</doc>
        <type name="GLib.List" c:type="GList*">
          <type name="utf8"/>
        </type>
      </return-value>
    </function>
    <function name="get_server_info" c:identifier="notify_get_server_info">
      <doc xml:space="preserve"
           filename="libnotify/notify.c"
           line="666">Queries the server for information.

Synchronously queries the server for its information, specifically, the name,
vendor, server version, and the version of the notifications specification
that it is compliant with.</doc>
      <source-position filename="libnotify/notify.h" line="45"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libnotify/notify.c"
             line="679">%TRUE if successful, and the variables passed will be set, %FALSE
  on error. The returned strings must be freed with g_free</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="ret_name"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="libnotify/notify.c"
               line="668">a location to store the server name, or %NULL</doc>
          <type name="utf8" c:type="char**"/>
        </parameter>
        <parameter name="ret_vendor"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="libnotify/notify.c"
               line="669">a location to store the server vendor, or %NULL</doc>
          <type name="utf8" c:type="char**"/>
        </parameter>
        <parameter name="ret_version"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="libnotify/notify.c"
               line="670">a location to store the server version, or %NULL</doc>
          <type name="utf8" c:type="char**"/>
        </parameter>
        <parameter name="ret_spec_version"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="libnotify/notify.c"
               line="671">a location to store the version the service is compliant with, or %NULL</doc>
          <type name="utf8" c:type="char**"/>
        </parameter>
      </parameters>
    </function>
    <function name="init" c:identifier="notify_init">
      <doc xml:space="preserve"
           filename="libnotify/notify.c"
           line="182">Initialized libnotify. This must be called before any other functions.

Starting from 0.8, if the provided @app_name is %NULL, libnotify will
try to figure it out from the running application.
Before it was not allowed, and was causing libnotify not to be initialized.</doc>
      <source-position filename="libnotify/notify.h" line="33"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libnotify/notify.c"
             line="192">%TRUE if successful, or %FALSE on error.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="app_name"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="libnotify/notify.c"
               line="184">The name of the application initializing libnotify.</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="is_initted" c:identifier="notify_is_initted">
      <doc xml:space="preserve"
           filename="libnotify/notify.c"
           line="506">Gets whether or not libnotify is initialized.</doc>
      <source-position filename="libnotify/notify.h" line="35"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libnotify/notify.c"
             line="511">%TRUE if libnotify is initialized, or %FALSE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="set_app_icon"
              c:identifier="notify_set_app_icon"
              version="0.8.4">
      <doc xml:space="preserve"
           filename="libnotify/notify.c"
           line="167">Sets the application icon.</doc>
      <source-position filename="libnotify/notify.h" line="41"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="app_icon"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="libnotify/notify.c"
               line="169">The optional icon theme icon name or filename.</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="set_app_name" c:identifier="notify_set_app_name">
      <doc xml:space="preserve"
           filename="libnotify/notify.c"
           line="154">Sets the application name.</doc>
      <source-position filename="libnotify/notify.h" line="38"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="app_name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libnotify/notify.c"
               line="156">The name of the application</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="uninit" c:identifier="notify_uninit">
      <doc xml:space="preserve"
           filename="libnotify/notify.c"
           line="468">Uninitializes libnotify.

This should be called when the program no longer needs libnotify for
the rest of its lifecycle, typically just before exitting.</doc>
      <source-position filename="libnotify/notify.h" line="34"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
  </namespace>
</repository>
