2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
4
<!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
5
<!ENTITY version SYSTEM "version.xml">
7
<refentry id="GAppInfo">
9
<refentrytitle role="top_of_page" id="GAppInfo.top_of_page">GAppInfo</refentrytitle>
10
<manvolnum>3</manvolnum>
11
<refmiscinfo>GIO Library</refmiscinfo>
15
<refname>GAppInfo</refname>
16
<refpurpose>Application information and launch contexts</refpurpose>
19
<refsynopsisdiv id="GAppInfo.synopsis" role="synopsis">
20
<title role="synopsis.title">Synopsis</title>
21
<anchor id="GAppLaunchContext"/>
24
#include <gio/gio.h>
26
enum <link linkend="GAppInfoCreateFlags">GAppInfoCreateFlags</link>;
27
<link linkend="GAppInfo-struct">GAppInfo</link>;
28
<link linkend="GAppInfoIface">GAppInfoIface</link>;
29
<link linkend="GAppLaunchContext-struct">GAppLaunchContext</link>;
30
<link linkend="GAppInfo">GAppInfo</link> * <link linkend="g-app-info-create-from-commandline">g_app_info_create_from_commandline</link> (const <link linkend="char">char</link> *commandline,
31
const <link linkend="char">char</link> *application_name,
32
<link linkend="GAppInfoCreateFlags">GAppInfoCreateFlags</link> flags,
33
<link linkend="GError">GError</link> **error);
34
<link linkend="GAppInfo">GAppInfo</link> * <link linkend="g-app-info-dup">g_app_info_dup</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
35
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-equal">g_app_info_equal</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo1,
36
<link linkend="GAppInfo">GAppInfo</link> *appinfo2);
37
const <link linkend="char">char</link> * <link linkend="g-app-info-get-id">g_app_info_get_id</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
38
const <link linkend="char">char</link> * <link linkend="g-app-info-get-name">g_app_info_get_name</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
39
const <link linkend="char">char</link> * <link linkend="g-app-info-get-display-name">g_app_info_get_display_name</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
40
const <link linkend="char">char</link> * <link linkend="g-app-info-get-description">g_app_info_get_description</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
41
const <link linkend="char">char</link> * <link linkend="g-app-info-get-executable">g_app_info_get_executable</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
42
const <link linkend="char">char</link> * <link linkend="g-app-info-get-commandline">g_app_info_get_commandline</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
43
<link linkend="GIcon">GIcon</link> * <link linkend="g-app-info-get-icon">g_app_info_get_icon</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
44
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-launch">g_app_info_launch</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
45
<link linkend="GList">GList</link> *files,
46
<link linkend="GAppLaunchContext">GAppLaunchContext</link> *launch_context,
47
<link linkend="GError">GError</link> **error);
48
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-supports-files">g_app_info_supports_files</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
49
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-supports-uris">g_app_info_supports_uris</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
50
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-launch-uris">g_app_info_launch_uris</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
51
<link linkend="GList">GList</link> *uris,
52
<link linkend="GAppLaunchContext">GAppLaunchContext</link> *launch_context,
53
<link linkend="GError">GError</link> **error);
54
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-should-show">g_app_info_should_show</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
55
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-can-delete">g_app_info_can_delete</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
56
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-delete">g_app_info_delete</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
57
<link linkend="void">void</link> <link linkend="g-app-info-reset-type-associations">g_app_info_reset_type_associations</link> (const <link linkend="char">char</link> *content_type);
58
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-set-as-default-for-type">g_app_info_set_as_default_for_type</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
59
const <link linkend="char">char</link> *content_type,
60
<link linkend="GError">GError</link> **error);
61
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-set-as-default-for-extension">g_app_info_set_as_default_for_extension</link>
62
(<link linkend="GAppInfo">GAppInfo</link> *appinfo,
63
const <link linkend="char">char</link> *extension,
64
<link linkend="GError">GError</link> **error);
65
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-add-supports-type">g_app_info_add_supports_type</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
66
const <link linkend="char">char</link> *content_type,
67
<link linkend="GError">GError</link> **error);
68
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-can-remove-supports-type">g_app_info_can_remove_supports_type</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo);
69
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-remove-supports-type">g_app_info_remove_supports_type</link> (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
70
const <link linkend="char">char</link> *content_type,
71
<link linkend="GError">GError</link> **error);
72
<link linkend="GList">GList</link> * <link linkend="g-app-info-get-all">g_app_info_get_all</link> (void);
73
<link linkend="GList">GList</link> * <link linkend="g-app-info-get-all-for-type">g_app_info_get_all_for_type</link> (const <link linkend="char">char</link> *content_type);
74
<link linkend="GAppInfo">GAppInfo</link> * <link linkend="g-app-info-get-default-for-type">g_app_info_get_default_for_type</link> (const <link linkend="char">char</link> *content_type,
75
<link linkend="gboolean">gboolean</link> must_support_uris);
76
<link linkend="GAppInfo">GAppInfo</link> * <link linkend="g-app-info-get-default-for-uri-scheme">g_app_info_get_default_for_uri_scheme</link>
77
(const <link linkend="char">char</link> *uri_scheme);
78
<link linkend="gboolean">gboolean</link> <link linkend="g-app-info-launch-default-for-uri">g_app_info_launch_default_for_uri</link> (const <link linkend="char">char</link> *uri,
79
<link linkend="GAppLaunchContext">GAppLaunchContext</link> *launch_context,
80
<link linkend="GError">GError</link> **error);
81
<link linkend="char">char</link> * <link linkend="g-app-launch-context-get-display">g_app_launch_context_get_display</link> (<link linkend="GAppLaunchContext">GAppLaunchContext</link> *context,
82
<link linkend="GAppInfo">GAppInfo</link> *info,
83
<link linkend="GList">GList</link> *files);
84
<link linkend="char">char</link> * <link linkend="g-app-launch-context-get-startup-notify-id">g_app_launch_context_get_startup_notify_id</link>
85
(<link linkend="GAppLaunchContext">GAppLaunchContext</link> *context,
86
<link linkend="GAppInfo">GAppInfo</link> *info,
87
<link linkend="GList">GList</link> *files);
88
<link linkend="void">void</link> <link linkend="g-app-launch-context-launch-failed">g_app_launch_context_launch_failed</link> (<link linkend="GAppLaunchContext">GAppLaunchContext</link> *context,
89
const <link linkend="char">char</link> *startup_notify_id);
90
<link linkend="GAppLaunchContext">GAppLaunchContext</link> * <link linkend="g-app-launch-context-new">g_app_launch_context_new</link> (void);
94
<refsect1 id="GAppInfo.object-hierarchy" role="object_hierarchy">
95
<title role="object_hierarchy.title">Object Hierarchy</title>
97
<link linkend="GInterface">GInterface</link>
101
<link linkend="GObject">GObject</link>
102
+----GAppLaunchContext
106
<refsect1 id="GAppInfo.prerequisites" role="prerequisites">
107
<title role="prerequisites.title">Prerequisites</title>
110
<link linkend="GObject">GObject</link>.</para>
115
<refsect1 id="GAppInfo.implementations" role="implementations">
116
<title role="implementations.title">Known Implementations</title>
118
GAppInfo is implemented by
119
<link linkend="GDesktopAppInfo">GDesktopAppInfo</link>.</para>
125
<refsect1 id="GAppInfo.description" role="desc">
126
<title role="desc.title">Description</title>
128
<link linkend="GAppInfo"><type>GAppInfo</type></link> and <link linkend="GAppLaunchContext"><type>GAppLaunchContext</type></link> are used for describing and launching
129
applications installed on the system.
132
As of GLib 2.20, URIs will always be converted to POSIX paths
133
(using <link linkend="g-file-get-path"><function>g_file_get_path()</function></link>) when using <link linkend="g-app-info-launch"><function>g_app_info_launch()</function></link> even if
134
the application requested an URI and not a POSIX path. For example
135
for an desktop-file based application with Exec key <literal>totem
136
%<link linkend="U--CAPS"><literal>U</literal></link></literal> and a single URI,
137
<literal>sftp://foo/file.avi</literal>, then
138
<literal>/home/user/.gvfs/sftp on foo/file.avi</literal> will be
139
passed. This will only work if a set of suitable GIO extensions
140
(such as gvfs 2.26 compiled with FUSE support), is available and
141
operational; if this is not the case, the URI will be passed
142
unmodified to the application. Some URIs, such as
143
<literal>mailto:</literal>, of course cannot be mapped to a POSIX
144
path (in gvfs there's no FUSE mount for it); such URIs will be
145
passed unmodified to the application.
148
Specifically for gvfs 2.26 and later, the POSIX URI will be mapped
149
back to the GIO URI in the <link linkend="GFile"><type>GFile</type></link> constructors (since gvfs
150
implements the <link linkend="GVfs"><type>GVfs</type></link> extension point). As such, if the application
151
needs to examine the URI, it needs to use <link linkend="g-file-get-uri"><function>g_file_get_uri()</function></link> or
152
similar on <link linkend="GFile"><type>GFile</type></link>. In other words, an application cannot assume
153
that the URI passed to e.g. <link linkend="g-file-new-for-commandline-arg"><function>g_file_new_for_commandline_arg()</function></link> is
154
equal to the result of <link linkend="g-file-get-uri"><function>g_file_get_uri()</function></link>. The following snippet
162
file = g_file_new_for_commandline_arg (uri_from_commandline);
164
uri = g_file_get_uri (file);
165
strcmp (uri, uri_from_commandline) == 0; // FALSE
168
if (g_file_has_uri_scheme (file, "cdda"))
170
// do something special with uri
172
g_object_unref (file);
176
This code will work when both <literal>cdda://sr0/Track
177
1.wav</literal> and <literal>/home/user/.gvfs/cdda on sr0/Track
178
1.wav</literal> is passed to the application. It should be noted
179
that it's generally not safe for applications to rely on the format
180
of a particular URIs. Different launcher applications (e.g. file
181
managers) may have different ideas of what a given URI means.</para>
186
<refsect1 id="GAppInfo.details" role="details">
187
<title role="details.title">Details</title>
188
<refsect2 id="GAppInfoCreateFlags" role="enum">
189
<title>enum GAppInfoCreateFlags</title>
190
<indexterm zone="GAppInfoCreateFlags"><primary sortas="AppInfoCreateFlags">GAppInfoCreateFlags</primary></indexterm><programlisting>typedef enum {
191
G_APP_INFO_CREATE_NONE = 0, /*< nick=none >*/
192
G_APP_INFO_CREATE_NEEDS_TERMINAL = (1 << 0), /*< nick=needs-terminal >*/
193
G_APP_INFO_CREATE_SUPPORTS_URIS = (1 << 1) /*< nick=supports-uris >*/
194
} GAppInfoCreateFlags;
197
Flags used when creating a <link linkend="GAppInfo"><type>GAppInfo</type></link>.</para>
199
</para><variablelist role="enum">
200
<varlistentry id="G-APP-INFO-CREATE-NONE--CAPS" role="constant">
201
<term><literal>G_APP_INFO_CREATE_NONE</literal></term>
202
<listitem><simpara> No flags.
203
</simpara></listitem>
205
<varlistentry id="G-APP-INFO-CREATE-NEEDS-TERMINAL--CAPS" role="constant">
206
<term><literal>G_APP_INFO_CREATE_NEEDS_TERMINAL</literal></term>
207
<listitem><simpara> Application opens in a terminal window.
208
</simpara></listitem>
210
<varlistentry id="G-APP-INFO-CREATE-SUPPORTS-URIS--CAPS" role="constant">
211
<term><literal>G_APP_INFO_CREATE_SUPPORTS_URIS</literal></term>
212
<listitem><simpara> Application supports URI arguments.
213
</simpara></listitem>
215
</variablelist></refsect2>
216
<refsect2 id="GAppInfo-struct" role="struct">
217
<title>GAppInfo</title>
218
<indexterm zone="GAppInfo-struct"><primary sortas="AppInfo">GAppInfo</primary></indexterm><programlisting>typedef struct _GAppInfo GAppInfo;</programlisting>
220
Information about an installed application and methods to launch
221
it (with file arguments).</para>
224
<refsect2 id="GAppInfoIface" role="struct">
225
<title>GAppInfoIface</title>
226
<indexterm zone="GAppInfoIface"><primary sortas="AppInfoIface">GAppInfoIface</primary></indexterm><programlisting>typedef struct {
227
GTypeInterface g_iface;
231
GAppInfo * (* dup) (GAppInfo *appinfo);
232
gboolean (* equal) (GAppInfo *appinfo1,
234
const char * (* get_id) (GAppInfo *appinfo);
235
const char * (* get_name) (GAppInfo *appinfo);
236
const char * (* get_description) (GAppInfo *appinfo);
237
const char * (* get_executable) (GAppInfo *appinfo);
238
GIcon * (* get_icon) (GAppInfo *appinfo);
239
gboolean (* launch) (GAppInfo *appinfo,
241
GAppLaunchContext *launch_context,
243
gboolean (* supports_uris) (GAppInfo *appinfo);
244
gboolean (* supports_files) (GAppInfo *appinfo);
245
gboolean (* launch_uris) (GAppInfo *appinfo,
247
GAppLaunchContext *launch_context,
249
gboolean (* should_show) (GAppInfo *appinfo);
251
/* For changing associations */
252
gboolean (* set_as_default_for_type) (GAppInfo *appinfo,
253
const char *content_type,
255
gboolean (* set_as_default_for_extension) (GAppInfo *appinfo,
256
const char *extension,
258
gboolean (* add_supports_type) (GAppInfo *appinfo,
259
const char *content_type,
261
gboolean (* can_remove_supports_type) (GAppInfo *appinfo);
262
gboolean (* remove_supports_type) (GAppInfo *appinfo,
263
const char *content_type,
265
gboolean (* can_delete) (GAppInfo *appinfo);
266
gboolean (* do_delete) (GAppInfo *appinfo);
267
const char * (* get_commandline) (GAppInfo *appinfo);
268
const char * (* get_display_name) (GAppInfo *appinfo);
272
Application Information interface, for operating system portability.</para>
274
</para><variablelist role="struct">
276
<term><link linkend="GTypeInterface">GTypeInterface</link> <structfield>g_iface</structfield>;</term>
277
<listitem><simpara> The parent interface.
278
</simpara></listitem>
281
<term><structfield>dup</structfield> ()</term>
282
<listitem><simpara> Copies a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
283
</simpara></listitem>
286
<term><structfield>equal</structfield> ()</term>
287
<listitem><simpara> Checks two <link linkend="GAppInfo"><type>GAppInfo</type></link><!-- -->s for equality.
288
</simpara></listitem>
291
<term><structfield>get_id</structfield> ()</term>
292
<listitem><simpara> Gets a string identifier for a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
293
</simpara></listitem>
296
<term><structfield>get_name</structfield> ()</term>
297
<listitem><simpara> Gets the name of the application for a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
298
</simpara></listitem>
301
<term><structfield>get_description</structfield> ()</term>
302
<listitem><simpara> Gets a short description for the application described by the <link linkend="GAppInfo"><type>GAppInfo</type></link>.
303
</simpara></listitem>
306
<term><structfield>get_executable</structfield> ()</term>
307
<listitem><simpara> Gets the executable name for the <link linkend="GAppInfo"><type>GAppInfo</type></link>.
308
</simpara></listitem>
311
<term><structfield>get_icon</structfield> ()</term>
312
<listitem><simpara> Gets the <link linkend="GIcon"><type>GIcon</type></link> for the <link linkend="GAppInfo"><type>GAppInfo</type></link>.
313
</simpara></listitem>
316
<term><structfield>launch</structfield> ()</term>
317
<listitem><simpara> Launches an application specified by the <link linkend="GAppInfo"><type>GAppInfo</type></link>.
318
</simpara></listitem>
321
<term><structfield>supports_uris</structfield> ()</term>
322
<listitem><simpara> Indicates whether the application specified supports launching URIs.
323
</simpara></listitem>
326
<term><structfield>supports_files</structfield> ()</term>
327
<listitem><simpara> Indicates whether the application specified accepts filename arguments.
328
</simpara></listitem>
331
<term><structfield>launch_uris</structfield> ()</term>
332
<listitem><simpara> Launches an application with a list of URIs.
333
</simpara></listitem>
336
<term><structfield>should_show</structfield> ()</term>
337
<listitem><simpara> Returns whether an application should be shown (e.g. when getting a list of installed applications).
338
<ulink url="http://standards.freedesktop.org/startup-notification-spec/startup-notification-latest.txt">
339
<citetitle>FreeDesktop.Org Startup Notification Specification</citetitle></ulink>.
340
</simpara></listitem>
343
<term><structfield>set_as_default_for_type</structfield> ()</term>
344
<listitem><simpara> Sets an application as default for a given content type.
345
</simpara></listitem>
348
<term><structfield>set_as_default_for_extension</structfield> ()</term>
349
<listitem><simpara> Sets an application as default for a given file extension.
350
</simpara></listitem>
353
<term><structfield>add_supports_type</structfield> ()</term>
354
<listitem><simpara> Adds to the <link linkend="GAppInfo"><type>GAppInfo</type></link> information about supported file types.
355
</simpara></listitem>
358
<term><structfield>can_remove_supports_type</structfield> ()</term>
359
<listitem><simpara> Checks for support for removing supported file types from a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
360
</simpara></listitem>
363
<term><structfield>remove_supports_type</structfield> ()</term>
364
<listitem><simpara> Removes a supported application type from a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
365
</simpara></listitem>
368
<term><structfield>can_delete</structfield> ()</term>
369
<listitem><simpara> Checks if a <link linkend="GAppInfo"><type>GAppInfo</type></link> can be deleted. Since 2.20
370
</simpara></listitem>
373
<term><structfield>do_delete</structfield> ()</term>
374
<listitem><simpara> Deletes a <link linkend="GAppInfo"><type>GAppInfo</type></link>. Since 2.20
375
</simpara></listitem>
378
<term><structfield>get_commandline</structfield> ()</term>
379
<listitem><simpara> Gets the commandline for the <link linkend="GAppInfo"><type>GAppInfo</type></link>. Since 2.20
380
</simpara></listitem>
383
<term><structfield>get_display_name</structfield> ()</term>
384
<listitem><simpara> Gets the display name for the <link linkend="GAppInfo"><type>GAppInfo</type></link>. Since 2.24
385
</simpara></listitem>
387
</variablelist></refsect2>
388
<refsect2 id="GAppLaunchContext-struct" role="struct">
389
<title>GAppLaunchContext</title>
390
<indexterm zone="GAppLaunchContext-struct"><primary sortas="AppLaunchContext">GAppLaunchContext</primary></indexterm><programlisting>typedef struct _GAppLaunchContext GAppLaunchContext;</programlisting>
392
Integrating the launch with the launching application. This is used to
393
handle for instance startup notification and launching the new application
394
on the same screen as the launching window.</para>
396
</para><variablelist role="struct">
397
</variablelist></refsect2>
398
<refsect2 id="g-app-info-create-from-commandline" role="function">
399
<title>g_app_info_create_from_commandline ()</title>
400
<indexterm zone="g-app-info-create-from-commandline"><primary sortas="app_info_create_from_commandline">g_app_info_create_from_commandline</primary></indexterm><programlisting><link linkend="GAppInfo">GAppInfo</link> * g_app_info_create_from_commandline (const <link linkend="char">char</link> *commandline,
401
const <link linkend="char">char</link> *application_name,
402
<link linkend="GAppInfoCreateFlags">GAppInfoCreateFlags</link> flags,
403
<link linkend="GError">GError</link> **error);</programlisting>
405
Creates a new <link linkend="GAppInfo"><type>GAppInfo</type></link> from the given information.</para>
407
</para><variablelist role="params">
408
<varlistentry><term><parameter>commandline</parameter> :</term>
409
<listitem><simpara> the commandline to use
410
</simpara></listitem></varlistentry>
411
<varlistentry><term><parameter>application_name</parameter> :</term>
412
<listitem><simpara> the application name, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to use <parameter>commandline</parameter>
413
</simpara></listitem></varlistentry>
414
<varlistentry><term><parameter>flags</parameter> :</term>
415
<listitem><simpara> flags that can specify details of the created <link linkend="GAppInfo"><type>GAppInfo</type></link>
416
</simpara></listitem></varlistentry>
417
<varlistentry><term><parameter>error</parameter> :</term>
418
<listitem><simpara> a <link linkend="GError"><type>GError</type></link> location to store the error occuring, <link linkend="NULL--CAPS"><literal>NULL</literal></link> to ignore.
419
</simpara></listitem></varlistentry>
420
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> new <link linkend="GAppInfo"><type>GAppInfo</type></link> for given command.
421
</simpara></listitem></varlistentry>
422
</variablelist></refsect2>
423
<refsect2 id="g-app-info-dup" role="function">
424
<title>g_app_info_dup ()</title>
425
<indexterm zone="g-app-info-dup"><primary sortas="app_info_dup">g_app_info_dup</primary></indexterm><programlisting><link linkend="GAppInfo">GAppInfo</link> * g_app_info_dup (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
427
Creates a duplicate of a <link linkend="GAppInfo"><type>GAppInfo</type></link>.</para>
429
</para><variablelist role="params">
430
<varlistentry><term><parameter>appinfo</parameter> :</term>
431
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
432
</simpara></listitem></varlistentry>
433
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a duplicate of <parameter>appinfo</parameter>.
434
</simpara></listitem></varlistentry>
435
</variablelist></refsect2>
436
<refsect2 id="g-app-info-equal" role="function">
437
<title>g_app_info_equal ()</title>
438
<indexterm zone="g-app-info-equal"><primary sortas="app_info_equal">g_app_info_equal</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_equal (<link linkend="GAppInfo">GAppInfo</link> *appinfo1,
439
<link linkend="GAppInfo">GAppInfo</link> *appinfo2);</programlisting>
441
Checks if two <link linkend="GAppInfo"><type>GAppInfo</type></link><!-- -->s are equal.</para>
443
</para><variablelist role="params">
444
<varlistentry><term><parameter>appinfo1</parameter> :</term>
445
<listitem><simpara> the first <link linkend="GAppInfo"><type>GAppInfo</type></link>.
446
</simpara></listitem></varlistentry>
447
<varlistentry><term><parameter>appinfo2</parameter> :</term>
448
<listitem><simpara> the second <link linkend="GAppInfo"><type>GAppInfo</type></link>.
449
</simpara></listitem></varlistentry>
450
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>appinfo1</parameter> is equal to <parameter>appinfo2</parameter>. <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
451
</simpara></listitem></varlistentry>
452
</variablelist></refsect2>
453
<refsect2 id="g-app-info-get-id" role="function">
454
<title>g_app_info_get_id ()</title>
455
<indexterm zone="g-app-info-get-id"><primary sortas="app_info_get_id">g_app_info_get_id</primary></indexterm><programlisting>const <link linkend="char">char</link> * g_app_info_get_id (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
457
Gets the ID of an application. An id is a string that
458
identifies the application. The exact format of the id is
459
platform dependent. For instance, on Unix this is the
460
desktop file id from the xdg menu specification.
463
Note that the returned ID may be <link linkend="NULL--CAPS"><literal>NULL</literal></link>, depending on how
464
the <parameter>appinfo</parameter> has been constructed.</para>
466
</para><variablelist role="params">
467
<varlistentry><term><parameter>appinfo</parameter> :</term>
468
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
469
</simpara></listitem></varlistentry>
470
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a string containing the application's ID.
471
</simpara></listitem></varlistentry>
472
</variablelist></refsect2>
473
<refsect2 id="g-app-info-get-name" role="function">
474
<title>g_app_info_get_name ()</title>
475
<indexterm zone="g-app-info-get-name"><primary sortas="app_info_get_name">g_app_info_get_name</primary></indexterm><programlisting>const <link linkend="char">char</link> * g_app_info_get_name (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
477
Gets the installed name of the application.</para>
479
</para><variablelist role="params">
480
<varlistentry><term><parameter>appinfo</parameter> :</term>
481
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
482
</simpara></listitem></varlistentry>
483
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the name of the application for <parameter>appinfo</parameter>.
484
</simpara></listitem></varlistentry>
485
</variablelist></refsect2>
486
<refsect2 id="g-app-info-get-display-name" role="function" condition="since:2.24">
487
<title>g_app_info_get_display_name ()</title>
488
<indexterm zone="g-app-info-get-display-name" role="2.24"><primary sortas="app_info_get_display_name">g_app_info_get_display_name</primary></indexterm><programlisting>const <link linkend="char">char</link> * g_app_info_get_display_name (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
490
Gets the display name of the application. The display name is often more
491
descriptive to the user than the name itself.</para>
493
</para><variablelist role="params">
494
<varlistentry><term><parameter>appinfo</parameter> :</term>
495
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
496
</simpara></listitem></varlistentry>
497
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the display name of the application for <parameter>appinfo</parameter>, or the name if
498
no display name is available.
500
</simpara></listitem></varlistentry>
501
</variablelist><para role="since">Since 2.24</para></refsect2>
502
<refsect2 id="g-app-info-get-description" role="function">
503
<title>g_app_info_get_description ()</title>
504
<indexterm zone="g-app-info-get-description"><primary sortas="app_info_get_description">g_app_info_get_description</primary></indexterm><programlisting>const <link linkend="char">char</link> * g_app_info_get_description (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
506
Gets a human-readable description of an installed application.</para>
508
</para><variablelist role="params">
509
<varlistentry><term><parameter>appinfo</parameter> :</term>
510
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
511
</simpara></listitem></varlistentry>
512
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a string containing a description of the
513
application <parameter>appinfo</parameter>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if none.
514
</simpara></listitem></varlistentry>
515
</variablelist></refsect2>
516
<refsect2 id="g-app-info-get-executable" role="function">
517
<title>g_app_info_get_executable ()</title>
518
<indexterm zone="g-app-info-get-executable"><primary sortas="app_info_get_executable">g_app_info_get_executable</primary></indexterm><programlisting>const <link linkend="char">char</link> * g_app_info_get_executable (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
520
Gets the executable's name for the installed application.</para>
522
</para><variablelist role="params">
523
<varlistentry><term><parameter>appinfo</parameter> :</term>
524
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>
525
</simpara></listitem></varlistentry>
526
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a string containing the <parameter>appinfo</parameter>'s application
528
</simpara></listitem></varlistentry>
529
</variablelist></refsect2>
530
<refsect2 id="g-app-info-get-commandline" role="function" condition="since:2.20">
531
<title>g_app_info_get_commandline ()</title>
532
<indexterm zone="g-app-info-get-commandline" role="2.20"><primary sortas="app_info_get_commandline">g_app_info_get_commandline</primary></indexterm><programlisting>const <link linkend="char">char</link> * g_app_info_get_commandline (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
534
Gets the commandline with which the application will be
537
</para><variablelist role="params">
538
<varlistentry><term><parameter>appinfo</parameter> :</term>
539
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>
540
</simpara></listitem></varlistentry>
541
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a string containing the <parameter>appinfo</parameter>'s commandline,
542
or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if this information is not available
544
</simpara></listitem></varlistentry>
545
</variablelist><para role="since">Since 2.20</para></refsect2>
546
<refsect2 id="g-app-info-get-icon" role="function">
547
<title>g_app_info_get_icon ()</title>
548
<indexterm zone="g-app-info-get-icon"><primary sortas="app_info_get_icon">g_app_info_get_icon</primary></indexterm><programlisting><link linkend="GIcon">GIcon</link> * g_app_info_get_icon (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
550
Gets the icon for the application.</para>
552
</para><variablelist role="params">
553
<varlistentry><term><parameter>appinfo</parameter> :</term>
554
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
555
</simpara></listitem></varlistentry>
556
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the default <link linkend="GIcon"><type>GIcon</type></link> for <parameter>appinfo</parameter>.
557
</simpara></listitem></varlistentry>
558
</variablelist></refsect2>
559
<refsect2 id="g-app-info-launch" role="function">
560
<title>g_app_info_launch ()</title>
561
<indexterm zone="g-app-info-launch"><primary sortas="app_info_launch">g_app_info_launch</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_launch (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
562
<link linkend="GList">GList</link> *files,
563
<link linkend="GAppLaunchContext">GAppLaunchContext</link> *launch_context,
564
<link linkend="GError">GError</link> **error);</programlisting>
566
Launches the application. Passes <parameter>files</parameter> to the launched application
567
as arguments, using the optional <parameter>launch_context</parameter> to get information
568
about the details of the launcher (like what screen it is on).
569
On error, <parameter>error</parameter> will be set accordingly.
572
To lauch the application without arguments pass a <link linkend="NULL--CAPS"><literal>NULL</literal></link> <parameter>files</parameter> list.
575
Note that even if the launch is successful the application launched
576
can fail to start if it runs into problems during startup. There is
577
no way to detect this.
580
Some URIs can be changed when passed through a GFile (for instance
581
unsupported uris with strange formats like mailto:), so if you have
582
a textual uri you want to pass in as argument, consider using
583
<link linkend="g-app-info-launch-uris"><function>g_app_info_launch_uris()</function></link> instead.</para>
585
</para><variablelist role="params">
586
<varlistentry><term><parameter>appinfo</parameter> :</term>
587
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>
588
</simpara></listitem></varlistentry>
589
<varlistentry><term><parameter>files</parameter> :</term>
590
<listitem><simpara> a <link linkend="GList"><type>GList</type></link> of <link linkend="GFile"><type>GFile</type></link> objects
591
</simpara></listitem></varlistentry>
592
<varlistentry><term><parameter>launch_context</parameter> :</term>
593
<listitem><simpara> a <link linkend="GAppLaunchContext"><type>GAppLaunchContext</type></link> or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
594
</simpara></listitem></varlistentry>
595
<varlistentry><term><parameter>error</parameter> :</term>
596
<listitem><simpara> a <link linkend="GError"><type>GError</type></link>
597
</simpara></listitem></varlistentry>
598
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> on successful launch, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
599
</simpara></listitem></varlistentry>
600
</variablelist></refsect2>
601
<refsect2 id="g-app-info-supports-files" role="function">
602
<title>g_app_info_supports_files ()</title>
603
<indexterm zone="g-app-info-supports-files"><primary sortas="app_info_supports_files">g_app_info_supports_files</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_supports_files (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
605
Checks if the application accepts files as arguments.</para>
607
</para><variablelist role="params">
608
<varlistentry><term><parameter>appinfo</parameter> :</term>
609
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
610
</simpara></listitem></varlistentry>
611
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the <parameter>appinfo</parameter> supports files.
612
</simpara></listitem></varlistentry>
613
</variablelist></refsect2>
614
<refsect2 id="g-app-info-supports-uris" role="function">
615
<title>g_app_info_supports_uris ()</title>
616
<indexterm zone="g-app-info-supports-uris"><primary sortas="app_info_supports_uris">g_app_info_supports_uris</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_supports_uris (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
618
Checks if the application supports reading files and directories from URIs.</para>
620
</para><variablelist role="params">
621
<varlistentry><term><parameter>appinfo</parameter> :</term>
622
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
623
</simpara></listitem></varlistentry>
624
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the <parameter>appinfo</parameter> supports URIs.
625
</simpara></listitem></varlistentry>
626
</variablelist></refsect2>
627
<refsect2 id="g-app-info-launch-uris" role="function">
628
<title>g_app_info_launch_uris ()</title>
629
<indexterm zone="g-app-info-launch-uris"><primary sortas="app_info_launch_uris">g_app_info_launch_uris</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_launch_uris (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
630
<link linkend="GList">GList</link> *uris,
631
<link linkend="GAppLaunchContext">GAppLaunchContext</link> *launch_context,
632
<link linkend="GError">GError</link> **error);</programlisting>
634
Launches the application. Passes <parameter>uris</parameter> to the launched application
635
as arguments, using the optional <parameter>launch_context</parameter> to get information
636
about the details of the launcher (like what screen it is on).
637
On error, <parameter>error</parameter> will be set accordingly.
640
To lauch the application without arguments pass a <link linkend="NULL--CAPS"><literal>NULL</literal></link> <parameter>uris</parameter> list.
643
Note that even if the launch is successful the application launched
644
can fail to start if it runs into problems during startup. There is
645
no way to detect this.</para>
647
</para><variablelist role="params">
648
<varlistentry><term><parameter>appinfo</parameter> :</term>
649
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>
650
</simpara></listitem></varlistentry>
651
<varlistentry><term><parameter>uris</parameter> :</term>
652
<listitem><simpara> a <link linkend="GList"><type>GList</type></link> containing URIs to launch.
653
</simpara></listitem></varlistentry>
654
<varlistentry><term><parameter>launch_context</parameter> :</term>
655
<listitem><simpara> a <link linkend="GAppLaunchContext"><type>GAppLaunchContext</type></link> or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
656
</simpara></listitem></varlistentry>
657
<varlistentry><term><parameter>error</parameter> :</term>
658
<listitem><simpara> a <link linkend="GError"><type>GError</type></link>
659
</simpara></listitem></varlistentry>
660
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> on successful launch, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
661
</simpara></listitem></varlistentry>
662
</variablelist></refsect2>
663
<refsect2 id="g-app-info-should-show" role="function">
664
<title>g_app_info_should_show ()</title>
665
<indexterm zone="g-app-info-should-show"><primary sortas="app_info_should_show">g_app_info_should_show</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_should_show (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
667
Checks if the application info should be shown in menus that
668
list available applications.</para>
670
</para><variablelist role="params">
671
<varlistentry><term><parameter>appinfo</parameter> :</term>
672
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
673
</simpara></listitem></varlistentry>
674
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the <parameter>appinfo</parameter> should be shown, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
675
</simpara></listitem></varlistentry>
676
</variablelist></refsect2>
677
<refsect2 id="g-app-info-can-delete" role="function" condition="since:2.20">
678
<title>g_app_info_can_delete ()</title>
679
<indexterm zone="g-app-info-can-delete" role="2.20"><primary sortas="app_info_can_delete">g_app_info_can_delete</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_can_delete (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
681
Obtains the information whether the <link linkend="GAppInfo"><type>GAppInfo</type></link> can be deleted.
682
See <link linkend="g-app-info-delete"><function>g_app_info_delete()</function></link>.</para>
684
</para><variablelist role="params">
685
<varlistentry><term><parameter>appinfo</parameter> :</term>
686
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>
687
</simpara></listitem></varlistentry>
688
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>appinfo</parameter> can be deleted
690
</simpara></listitem></varlistentry>
691
</variablelist><para role="since">Since 2.20</para></refsect2>
692
<refsect2 id="g-app-info-delete" role="function" condition="since:2.20">
693
<title>g_app_info_delete ()</title>
694
<indexterm zone="g-app-info-delete" role="2.20"><primary sortas="app_info_delete">g_app_info_delete</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_delete (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
696
Tries to delete a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
699
On some platforms, there may be a difference between user-defined
700
<link linkend="GAppInfo"><type>GAppInfo</type></link><!-- -->s which can be deleted, and system-wide ones which
701
cannot. See <link linkend="g-app-info-can-delete"><function>g_app_info_can_delete()</function></link>.</para>
703
</para><variablelist role="params">
704
<varlistentry><term><parameter>appinfo</parameter> :</term>
705
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>
706
</simpara></listitem></varlistentry>
707
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>appinfo</parameter> has been deleted
709
</simpara></listitem></varlistentry>
710
</variablelist><para role="since">Since 2.20</para></refsect2>
711
<refsect2 id="g-app-info-reset-type-associations" role="function" condition="since:2.20">
712
<title>g_app_info_reset_type_associations ()</title>
713
<indexterm zone="g-app-info-reset-type-associations" role="2.20"><primary sortas="app_info_reset_type_associations">g_app_info_reset_type_associations</primary></indexterm><programlisting><link linkend="void">void</link> g_app_info_reset_type_associations (const <link linkend="char">char</link> *content_type);</programlisting>
715
Removes all changes to the type associations done by
716
<link linkend="g-app-info-set-as-default-for-type"><function>g_app_info_set_as_default_for_type()</function></link>,
717
<link linkend="g-app-info-set-as-default-for-extension"><function>g_app_info_set_as_default_for_extension()</function></link>,
718
<link linkend="g-app-info-add-supports-type"><function>g_app_info_add_supports_type()</function></link> or <link linkend="g-app-info-remove-supports-type"><function>g_app_info_remove_supports_type()</function></link>.</para>
720
</para><variablelist role="params">
721
<varlistentry><term><parameter>content_type</parameter> :</term>
722
<listitem><simpara> a content type
723
</simpara></listitem></varlistentry>
724
</variablelist><para role="since">Since 2.20</para></refsect2>
725
<refsect2 id="g-app-info-set-as-default-for-type" role="function">
726
<title>g_app_info_set_as_default_for_type ()</title>
727
<indexterm zone="g-app-info-set-as-default-for-type"><primary sortas="app_info_set_as_default_for_type">g_app_info_set_as_default_for_type</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_set_as_default_for_type (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
728
const <link linkend="char">char</link> *content_type,
729
<link linkend="GError">GError</link> **error);</programlisting>
731
Sets the application as the default handler for a given type.</para>
733
</para><variablelist role="params">
734
<varlistentry><term><parameter>appinfo</parameter> :</term>
735
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
736
</simpara></listitem></varlistentry>
737
<varlistentry><term><parameter>content_type</parameter> :</term>
738
<listitem><simpara> the content type.
739
</simpara></listitem></varlistentry>
740
<varlistentry><term><parameter>error</parameter> :</term>
741
<listitem><simpara> a <link linkend="GError"><type>GError</type></link>.
742
</simpara></listitem></varlistentry>
743
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> on success, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> on error.
744
</simpara></listitem></varlistentry>
745
</variablelist></refsect2>
746
<refsect2 id="g-app-info-set-as-default-for-extension" role="function">
747
<title>g_app_info_set_as_default_for_extension ()</title>
748
<indexterm zone="g-app-info-set-as-default-for-extension"><primary sortas="app_info_set_as_default_for_extension">g_app_info_set_as_default_for_extension</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_set_as_default_for_extension
749
(<link linkend="GAppInfo">GAppInfo</link> *appinfo,
750
const <link linkend="char">char</link> *extension,
751
<link linkend="GError">GError</link> **error);</programlisting>
753
Sets the application as the default handler for the given file extension.</para>
755
</para><variablelist role="params">
756
<varlistentry><term><parameter>appinfo</parameter> :</term>
757
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
758
</simpara></listitem></varlistentry>
759
<varlistentry><term><parameter>extension</parameter> :</term>
760
<listitem><simpara> a string containing the file extension (without the dot).
761
</simpara></listitem></varlistentry>
762
<varlistentry><term><parameter>error</parameter> :</term>
763
<listitem><simpara> a <link linkend="GError"><type>GError</type></link>.
764
</simpara></listitem></varlistentry>
765
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> on success, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> on error.
766
</simpara></listitem></varlistentry>
767
</variablelist></refsect2>
768
<refsect2 id="g-app-info-add-supports-type" role="function">
769
<title>g_app_info_add_supports_type ()</title>
770
<indexterm zone="g-app-info-add-supports-type"><primary sortas="app_info_add_supports_type">g_app_info_add_supports_type</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_add_supports_type (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
771
const <link linkend="char">char</link> *content_type,
772
<link linkend="GError">GError</link> **error);</programlisting>
774
Adds a content type to the application information to indicate the
775
application is capable of opening files with the given content type.</para>
777
</para><variablelist role="params">
778
<varlistentry><term><parameter>appinfo</parameter> :</term>
779
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
780
</simpara></listitem></varlistentry>
781
<varlistentry><term><parameter>content_type</parameter> :</term>
782
<listitem><simpara> a string.
783
</simpara></listitem></varlistentry>
784
<varlistentry><term><parameter>error</parameter> :</term>
785
<listitem><simpara> a <link linkend="GError"><type>GError</type></link>.
786
</simpara></listitem></varlistentry>
787
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> on success, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> on error.
788
</simpara></listitem></varlistentry>
789
</variablelist></refsect2>
790
<refsect2 id="g-app-info-can-remove-supports-type" role="function">
791
<title>g_app_info_can_remove_supports_type ()</title>
792
<indexterm zone="g-app-info-can-remove-supports-type"><primary sortas="app_info_can_remove_supports_type">g_app_info_can_remove_supports_type</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_can_remove_supports_type (<link linkend="GAppInfo">GAppInfo</link> *appinfo);</programlisting>
794
Checks if a supported content type can be removed from an application.</para>
796
</para><variablelist role="params">
797
<varlistentry><term><parameter>appinfo</parameter> :</term>
798
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
799
</simpara></listitem></varlistentry>
800
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if it is possible to remove supported
801
content types from a given <parameter>appinfo</parameter>, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> if not.
802
</simpara></listitem></varlistentry>
803
</variablelist></refsect2>
804
<refsect2 id="g-app-info-remove-supports-type" role="function">
805
<title>g_app_info_remove_supports_type ()</title>
806
<indexterm zone="g-app-info-remove-supports-type"><primary sortas="app_info_remove_supports_type">g_app_info_remove_supports_type</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_remove_supports_type (<link linkend="GAppInfo">GAppInfo</link> *appinfo,
807
const <link linkend="char">char</link> *content_type,
808
<link linkend="GError">GError</link> **error);</programlisting>
810
Removes a supported type from an application, if possible.</para>
812
</para><variablelist role="params">
813
<varlistentry><term><parameter>appinfo</parameter> :</term>
814
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>.
815
</simpara></listitem></varlistentry>
816
<varlistentry><term><parameter>content_type</parameter> :</term>
817
<listitem><simpara> a string.
818
</simpara></listitem></varlistentry>
819
<varlistentry><term><parameter>error</parameter> :</term>
820
<listitem><simpara> a <link linkend="GError"><type>GError</type></link>.
821
</simpara></listitem></varlistentry>
822
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> on success, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> on error.
823
</simpara></listitem></varlistentry>
824
</variablelist></refsect2>
825
<refsect2 id="g-app-info-get-all" role="function">
826
<title>g_app_info_get_all ()</title>
827
<indexterm zone="g-app-info-get-all"><primary sortas="app_info_get_all">g_app_info_get_all</primary></indexterm><programlisting><link linkend="GList">GList</link> * g_app_info_get_all (void);</programlisting>
829
Gets a list of all of the applications currently registered
833
For desktop files, this includes applications that have
834
<literal>NoDisplay=true</literal> set or are excluded from
835
display by means of <literal>OnlyShowIn</literal> or
836
<literal>NotShowIn</literal>. See <link linkend="g-app-info-should-show"><function>g_app_info_should_show()</function></link>.
837
The returned list does not include applications which have
838
the <literal>Hidden</literal> key set.</para>
840
</para><variablelist role="params">
841
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated <link linkend="GList"><type>GList</type></link> of references to <link linkend="GAppInfo"><type>GAppInfo</type></link><!---->s.
842
</simpara></listitem></varlistentry>
843
</variablelist></refsect2>
844
<refsect2 id="g-app-info-get-all-for-type" role="function">
845
<title>g_app_info_get_all_for_type ()</title>
846
<indexterm zone="g-app-info-get-all-for-type"><primary sortas="app_info_get_all_for_type">g_app_info_get_all_for_type</primary></indexterm><programlisting><link linkend="GList">GList</link> * g_app_info_get_all_for_type (const <link linkend="char">char</link> *content_type);</programlisting>
848
Gets a list of all <link linkend="GAppInfo"><type>GAppInfo</type></link><!-- -->s for a given content type.</para>
850
</para><variablelist role="params">
851
<varlistentry><term><parameter>content_type</parameter> :</term>
852
<listitem><simpara> the content type to find a <link linkend="GAppInfo"><type>GAppInfo</type></link> for
853
</simpara></listitem></varlistentry>
854
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="GList"><type>GList</type></link> of <link linkend="GAppInfo"><type>GAppInfo</type></link><!-- -->s for given <parameter>content_type</parameter>
855
or <link linkend="NULL--CAPS"><literal>NULL</literal></link> on error.
856
</simpara></listitem></varlistentry>
857
</variablelist></refsect2>
858
<refsect2 id="g-app-info-get-default-for-type" role="function">
859
<title>g_app_info_get_default_for_type ()</title>
860
<indexterm zone="g-app-info-get-default-for-type"><primary sortas="app_info_get_default_for_type">g_app_info_get_default_for_type</primary></indexterm><programlisting><link linkend="GAppInfo">GAppInfo</link> * g_app_info_get_default_for_type (const <link linkend="char">char</link> *content_type,
861
<link linkend="gboolean">gboolean</link> must_support_uris);</programlisting>
863
Gets the <link linkend="GAppInfo"><type>GAppInfo</type></link> that corresponds to a given content type.</para>
865
</para><variablelist role="params">
866
<varlistentry><term><parameter>content_type</parameter> :</term>
867
<listitem><simpara> the content type to find a <link linkend="GAppInfo"><type>GAppInfo</type></link> for
868
</simpara></listitem></varlistentry>
869
<varlistentry><term><parameter>must_support_uris</parameter> :</term>
870
<listitem><simpara> if <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, the <link linkend="GAppInfo"><type>GAppInfo</type></link> is expected to
872
</simpara></listitem></varlistentry>
873
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="GAppInfo"><type>GAppInfo</type></link> for given <parameter>content_type</parameter> or <link linkend="NULL--CAPS"><literal>NULL</literal></link> on error.
874
</simpara></listitem></varlistentry>
875
</variablelist></refsect2>
876
<refsect2 id="g-app-info-get-default-for-uri-scheme" role="function">
877
<title>g_app_info_get_default_for_uri_scheme ()</title>
878
<indexterm zone="g-app-info-get-default-for-uri-scheme"><primary sortas="app_info_get_default_for_uri_scheme">g_app_info_get_default_for_uri_scheme</primary></indexterm><programlisting><link linkend="GAppInfo">GAppInfo</link> * g_app_info_get_default_for_uri_scheme
879
(const <link linkend="char">char</link> *uri_scheme);</programlisting>
881
Gets the default application for launching applications
882
using this URI scheme. A URI scheme is the initial part
883
of the URI, up to but not including the ':', e.g. "http",
884
"ftp" or "sip".</para>
886
</para><variablelist role="params">
887
<varlistentry><term><parameter>uri_scheme</parameter> :</term>
888
<listitem><simpara> a string containing a URI scheme.
889
</simpara></listitem></varlistentry>
890
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="GAppInfo"><type>GAppInfo</type></link> for given <parameter>uri_scheme</parameter> or <link linkend="NULL--CAPS"><literal>NULL</literal></link> on error.
891
</simpara></listitem></varlistentry>
892
</variablelist></refsect2>
893
<refsect2 id="g-app-info-launch-default-for-uri" role="function">
894
<title>g_app_info_launch_default_for_uri ()</title>
895
<indexterm zone="g-app-info-launch-default-for-uri"><primary sortas="app_info_launch_default_for_uri">g_app_info_launch_default_for_uri</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_app_info_launch_default_for_uri (const <link linkend="char">char</link> *uri,
896
<link linkend="GAppLaunchContext">GAppLaunchContext</link> *launch_context,
897
<link linkend="GError">GError</link> **error);</programlisting>
899
Utility function that launches the default application
900
registered to handle the specified uri. Synchronous I/O
901
is done on the uri to detect the type of the file if
904
</para><variablelist role="params">
905
<varlistentry><term><parameter>uri</parameter> :</term>
906
<listitem><simpara> the uri to show
907
</simpara></listitem></varlistentry>
908
<varlistentry><term><parameter>launch_context</parameter> :</term>
909
<listitem><simpara> an optional <link linkend="GAppLaunchContext"><type>GAppLaunchContext</type></link>.
910
</simpara></listitem></varlistentry>
911
<varlistentry><term><parameter>error</parameter> :</term>
912
<listitem><simpara> a <link linkend="GError"><type>GError</type></link>.
913
</simpara></listitem></varlistentry>
914
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> on success, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> on error.
915
</simpara></listitem></varlistentry>
916
</variablelist></refsect2>
917
<refsect2 id="g-app-launch-context-get-display" role="function">
918
<title>g_app_launch_context_get_display ()</title>
919
<indexterm zone="g-app-launch-context-get-display"><primary sortas="app_launch_context_get_display">g_app_launch_context_get_display</primary></indexterm><programlisting><link linkend="char">char</link> * g_app_launch_context_get_display (<link linkend="GAppLaunchContext">GAppLaunchContext</link> *context,
920
<link linkend="GAppInfo">GAppInfo</link> *info,
921
<link linkend="GList">GList</link> *files);</programlisting>
923
Gets the display string for the display. This is used to ensure new
924
applications are started on the same display as the launching
927
</para><variablelist role="params">
928
<varlistentry><term><parameter>context</parameter> :</term>
929
<listitem><simpara> a <link linkend="GAppLaunchContext"><type>GAppLaunchContext</type></link>
930
</simpara></listitem></varlistentry>
931
<varlistentry><term><parameter>info</parameter> :</term>
932
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>
933
</simpara></listitem></varlistentry>
934
<varlistentry><term><parameter>files</parameter> :</term>
935
<listitem><simpara> a <link linkend="GList"><type>GList</type></link> of <link linkend="GFile"><type>GFile</type></link> objects
936
</simpara></listitem></varlistentry>
937
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a display string for the display.
938
</simpara></listitem></varlistentry>
939
</variablelist></refsect2>
940
<refsect2 id="g-app-launch-context-get-startup-notify-id" role="function">
941
<title>g_app_launch_context_get_startup_notify_id ()</title>
942
<indexterm zone="g-app-launch-context-get-startup-notify-id"><primary sortas="app_launch_context_get_startup_notify_id">g_app_launch_context_get_startup_notify_id</primary></indexterm><programlisting><link linkend="char">char</link> * g_app_launch_context_get_startup_notify_id
943
(<link linkend="GAppLaunchContext">GAppLaunchContext</link> *context,
944
<link linkend="GAppInfo">GAppInfo</link> *info,
945
<link linkend="GList">GList</link> *files);</programlisting>
947
Initiates startup notification for the application and returns the
948
DESKTOP_STARTUP_ID for the launched operation, if supported.
951
Startup notification IDs are defined in the <ulink
952
url="http://standards.freedesktop.org/startup-notification-spec/startup-notification-latest.txt">
953
FreeDesktop.Org Startup Notifications standard</ulink>.</para>
955
</para><variablelist role="params">
956
<varlistentry><term><parameter>context</parameter> :</term>
957
<listitem><simpara> a <link linkend="GAppLaunchContext"><type>GAppLaunchContext</type></link>
958
</simpara></listitem></varlistentry>
959
<varlistentry><term><parameter>info</parameter> :</term>
960
<listitem><simpara> a <link linkend="GAppInfo"><type>GAppInfo</type></link>
961
</simpara></listitem></varlistentry>
962
<varlistentry><term><parameter>files</parameter> :</term>
963
<listitem><simpara> a <link linkend="GList"><type>GList</type></link> of of <link linkend="GFile"><type>GFile</type></link> objects
964
</simpara></listitem></varlistentry>
965
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a startup notification ID for the application, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if
967
</simpara></listitem></varlistentry>
968
</variablelist></refsect2>
969
<refsect2 id="g-app-launch-context-launch-failed" role="function">
970
<title>g_app_launch_context_launch_failed ()</title>
971
<indexterm zone="g-app-launch-context-launch-failed"><primary sortas="app_launch_context_launch_failed">g_app_launch_context_launch_failed</primary></indexterm><programlisting><link linkend="void">void</link> g_app_launch_context_launch_failed (<link linkend="GAppLaunchContext">GAppLaunchContext</link> *context,
972
const <link linkend="char">char</link> *startup_notify_id);</programlisting>
974
Called when an application has failed to launch, so that it can cancel
975
the application startup notification started in <link linkend="g-app-launch-context-get-startup-notify-id"><function>g_app_launch_context_get_startup_notify_id()</function></link>.</para>
977
</para><variablelist role="params">
978
<varlistentry><term><parameter>context</parameter> :</term>
979
<listitem><simpara> a <link linkend="GAppLaunchContext"><type>GAppLaunchContext</type></link>.
980
</simpara></listitem></varlistentry>
981
<varlistentry><term><parameter>startup_notify_id</parameter> :</term>
982
<listitem><simpara> the startup notification id that was returned by <link linkend="g-app-launch-context-get-startup-notify-id"><function>g_app_launch_context_get_startup_notify_id()</function></link>.
983
</simpara></listitem></varlistentry>
984
</variablelist></refsect2>
985
<refsect2 id="g-app-launch-context-new" role="function">
986
<title>g_app_launch_context_new ()</title>
987
<indexterm zone="g-app-launch-context-new"><primary sortas="app_launch_context_new">g_app_launch_context_new</primary></indexterm><programlisting><link linkend="GAppLaunchContext">GAppLaunchContext</link> * g_app_launch_context_new (void);</programlisting>
989
Creates a new application launch context. This is not normally used,
990
instead you instantiate a subclass of this, such as <link linkend="GdkAppLaunchContext"><type>GdkAppLaunchContext</type></link>.</para>
992
</para><variablelist role="params">
993
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a <link linkend="GAppLaunchContext"><type>GAppLaunchContext</type></link>.
994
</simpara></listitem></varlistentry>
995
</variablelist></refsect2>