1 /*
2 * Copyright © 2010, 2011, 2012 Codethink Limited
3 *
4 * SPDX-License-Identifier: LGPL-2.1-or-later
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General
17 * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
18 *
19 * Authors: Ryan Lortie <desrt@desrt.ca>
20 */
21
22 #include "giotypes.h"
23
24 typedef struct _GApplicationImpl GApplicationImpl;
25
26 typedef struct
27 {
28 gchar *name;
29
30 GVariantType *parameter_type;
31 gboolean enabled;
32 GVariant *state;
33 } RemoteActionInfo;
34
35 void g_application_impl_destroy (GApplicationImpl *impl);
36
37 GApplicationImpl * g_application_impl_register (GApplication *application,
38 const gchar *appid,
39 GApplicationFlags flags,
40 GActionGroup *exported_actions,
41 GRemoteActionGroup **remote_actions,
42 GCancellable *cancellable,
43 GError **error);
44
45 void g_application_impl_activate (GApplicationImpl *impl,
46 GVariant *platform_data);
47
48 void g_application_impl_open (GApplicationImpl *impl,
49 GFile **files,
50 gint n_files,
51 const gchar *hint,
52 GVariant *platform_data);
53
54 int g_application_impl_command_line (GApplicationImpl *impl,
55 const gchar *const *arguments,
56 GVariant *platform_data);
57
58 void g_application_impl_flush (GApplicationImpl *impl);
59
60 GDBusConnection * g_application_impl_get_dbus_connection (GApplicationImpl *impl);
61
62 const gchar * g_application_impl_get_dbus_object_path (GApplicationImpl *impl);
63
64 void g_application_impl_set_busy_state (GApplicationImpl *impl,
65 gboolean busy);