This file is indexed.

/usr/include/gio-unix-2.0/gio/gdesktopappinfo.h is in libglib2.0-dev 2.56.1-2ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
/* GIO - GLib Input, Output and Streaming Library
 *
 * Copyright (C) 2006-2007 Red Hat, Inc.
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General
 * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
 *
 * Author: Alexander Larsson <alexl@redhat.com>
 */

#ifndef __G_DESKTOP_APP_INFO_H__
#define __G_DESKTOP_APP_INFO_H__

#include <gio/gio.h>

G_BEGIN_DECLS

#define G_TYPE_DESKTOP_APP_INFO         (g_desktop_app_info_get_type ())
#define G_DESKTOP_APP_INFO(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_DESKTOP_APP_INFO, GDesktopAppInfo))
#define G_DESKTOP_APP_INFO_CLASS(k)     (G_TYPE_CHECK_CLASS_CAST((k), G_TYPE_DESKTOP_APP_INFO, GDesktopAppInfoClass))
#define G_IS_DESKTOP_APP_INFO(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_DESKTOP_APP_INFO))
#define G_IS_DESKTOP_APP_INFO_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), G_TYPE_DESKTOP_APP_INFO))
#define G_DESKTOP_APP_INFO_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), G_TYPE_DESKTOP_APP_INFO, GDesktopAppInfoClass))

typedef struct _GDesktopAppInfo        GDesktopAppInfo;
typedef struct _GDesktopAppInfoClass   GDesktopAppInfoClass;

G_DEFINE_AUTOPTR_CLEANUP_FUNC(GDesktopAppInfo, g_object_unref)

struct _GDesktopAppInfoClass
{
  GObjectClass parent_class;
};


GLIB_AVAILABLE_IN_ALL
GType            g_desktop_app_info_get_type          (void) G_GNUC_CONST;

GLIB_AVAILABLE_IN_ALL
GDesktopAppInfo *g_desktop_app_info_new_from_filename (const char      *filename);
GLIB_AVAILABLE_IN_ALL
GDesktopAppInfo *g_desktop_app_info_new_from_keyfile  (GKeyFile        *key_file);

GLIB_AVAILABLE_IN_ALL
const char *     g_desktop_app_info_get_filename      (GDesktopAppInfo *info);

GLIB_AVAILABLE_IN_2_30
const char *     g_desktop_app_info_get_generic_name  (GDesktopAppInfo *info);
GLIB_AVAILABLE_IN_2_30
const char *     g_desktop_app_info_get_categories    (GDesktopAppInfo *info);
GLIB_AVAILABLE_IN_2_30
const char * const *g_desktop_app_info_get_keywords   (GDesktopAppInfo *info);
GLIB_AVAILABLE_IN_2_30
gboolean         g_desktop_app_info_get_nodisplay     (GDesktopAppInfo *info);
GLIB_AVAILABLE_IN_2_30
gboolean         g_desktop_app_info_get_show_in       (GDesktopAppInfo *info,
                                                       const gchar     *desktop_env);
GLIB_AVAILABLE_IN_2_34
const char *     g_desktop_app_info_get_startup_wm_class (GDesktopAppInfo *info);

GLIB_AVAILABLE_IN_ALL
GDesktopAppInfo *g_desktop_app_info_new               (const char      *desktop_id);
GLIB_AVAILABLE_IN_ALL
gboolean         g_desktop_app_info_get_is_hidden     (GDesktopAppInfo *info);

GLIB_DEPRECATED_IN_2_42
void             g_desktop_app_info_set_desktop_env   (const char      *desktop_env);

GLIB_AVAILABLE_IN_2_36
gboolean         g_desktop_app_info_has_key           (GDesktopAppInfo *info,
                                                       const char      *key);
GLIB_AVAILABLE_IN_2_36
char *           g_desktop_app_info_get_string        (GDesktopAppInfo *info,
                                                       const char      *key);
GLIB_AVAILABLE_IN_2_56
char *           g_desktop_app_info_get_locale_string (GDesktopAppInfo *info,
                                                       const char      *key);
GLIB_AVAILABLE_IN_2_36
gboolean         g_desktop_app_info_get_boolean       (GDesktopAppInfo *info,
                                                       const char      *key);

GLIB_AVAILABLE_IN_2_38
const gchar * const *   g_desktop_app_info_list_actions                 (GDesktopAppInfo   *info);

GLIB_AVAILABLE_IN_2_38
void                    g_desktop_app_info_launch_action                (GDesktopAppInfo   *info,
                                                                         const gchar       *action_name,
                                                                         GAppLaunchContext *launch_context);

GLIB_AVAILABLE_IN_2_38
gchar *                 g_desktop_app_info_get_action_name              (GDesktopAppInfo   *info,
                                                                         const gchar       *action_name);

#ifndef G_DISABLE_DEPRECATED

#define G_TYPE_DESKTOP_APP_INFO_LOOKUP           (g_desktop_app_info_lookup_get_type ())
#define G_DESKTOP_APP_INFO_LOOKUP(obj)           (G_TYPE_CHECK_INSTANCE_CAST ((obj), G_TYPE_DESKTOP_APP_INFO_LOOKUP, GDesktopAppInfoLookup))
#define G_IS_DESKTOP_APP_INFO_LOOKUP(obj)	 (G_TYPE_CHECK_INSTANCE_TYPE ((obj), G_TYPE_DESKTOP_APP_INFO_LOOKUP))
#define G_DESKTOP_APP_INFO_LOOKUP_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), G_TYPE_DESKTOP_APP_INFO_LOOKUP, GDesktopAppInfoLookupIface))

/**
 * G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME:
 *
 * Extension point for default handler to URI association. See
 * [Extending GIO][extending-gio].
 */
#define G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME "gio-desktop-app-info-lookup"

#endif /* G_DISABLE_DEPRECATED */

/**
 * GDesktopAppInfoLookupIface:
 * @get_default_for_uri_scheme: Virtual method for
 *  g_desktop_app_info_lookup_get_default_for_uri_scheme().
 *
 * Interface that is used by backends to associate default
 * handlers with URI schemes.
 */
typedef struct _GDesktopAppInfoLookup GDesktopAppInfoLookup;
typedef struct _GDesktopAppInfoLookupIface GDesktopAppInfoLookupIface;

struct _GDesktopAppInfoLookupIface
{
  GTypeInterface g_iface;

  GAppInfo * (* get_default_for_uri_scheme) (GDesktopAppInfoLookup *lookup,
                                             const char            *uri_scheme);
};

GLIB_DEPRECATED
GType     g_desktop_app_info_lookup_get_type                   (void) G_GNUC_CONST;

GLIB_DEPRECATED
GAppInfo *g_desktop_app_info_lookup_get_default_for_uri_scheme (GDesktopAppInfoLookup *lookup,
                                                                const char            *uri_scheme);

/**
 * GDesktopAppLaunchCallback:
 * @appinfo: a #GDesktopAppInfo
 * @pid: Process identifier
 * @user_data: User data
 *
 * During invocation, g_desktop_app_info_launch_uris_as_manager() may
 * create one or more child processes.  This callback is invoked once
 * for each, providing the process ID.
 */
typedef void (*GDesktopAppLaunchCallback) (GDesktopAppInfo  *appinfo,
					   GPid              pid,
					   gpointer          user_data);

GLIB_AVAILABLE_IN_2_28
gboolean    g_desktop_app_info_launch_uris_as_manager (GDesktopAppInfo            *appinfo,
						       GList                      *uris,
						       GAppLaunchContext          *launch_context,
						       GSpawnFlags                 spawn_flags,
						       GSpawnChildSetupFunc        user_setup,
						       gpointer                    user_setup_data,
						       GDesktopAppLaunchCallback   pid_callback,
						       gpointer                    pid_callback_data,
						       GError                    **error);

GLIB_AVAILABLE_IN_2_40
gchar *** g_desktop_app_info_search (const gchar *search_string);

GLIB_AVAILABLE_IN_2_42
GList *g_desktop_app_info_get_implementations (const gchar *interface);

G_END_DECLS

#endif /* __G_DESKTOP_APP_INFO_H__ */