Merge branch 'master' into gdbus-codegen
[platform/upstream/glib.git] / gio / gioenums.h
index 0b2c576..87eb2fa 100644 (file)
@@ -758,7 +758,7 @@ typedef enum {
  * or a socket created with socketpair()).
  *
  * For abstract sockets, there are two incompatible ways of naming
- * them: the man pages suggest using the entire <literal>struct
+ * them; the man pages suggest using the entire <literal>struct
  * sockaddr_un</literal> as the name, padding the unused parts of the
  * %sun_path field with zeroes; this corresponds to
  * %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED. However, many programs
@@ -1179,7 +1179,7 @@ typedef enum
  * GDBusSignalFlags:
  * @G_DBUS_SIGNAL_FLAGS_NONE: No flags set.
  * @G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE: Don't actually send the AddMatch
- * DBus call for this signal subscription.  This gives you more control
+ * D-Bus call for this signal subscription.  This gives you more control
  * over which match rules you add (but you must add them manually).
  *
  * Flags used when subscribing to signals via g_dbus_connection_signal_subscribe().
@@ -1248,16 +1248,32 @@ typedef enum
  *      fails if the service is already running, and the application will
  *      stay around for a while when the use count falls to zero.
  * @G_APPLICATION_IS_LAUNCHER: Don't try to become the primary instance.
- * @G_APPLICATION_HANDLES_OPEN: This application handles opening files (in the
- *     primary instance)
+ * @G_APPLICATION_HANDLES_OPEN: This application handles opening files (in
+ *     the primary instance). Note that this flag only affects the default
+ *     implementation of local_command_line(), and has no effect if
+ *     %G_APPLICATION_HANDLES_COMMAND_LINE is given.
+ *     See g_application_run() for details.
  * @G_APPLICATION_HANDLES_COMMAND_LINE: This application handles command line
- *     arguments (in the primary instance)
+ *     arguments (in the primary instance). Note that this flag only affect
+ *     the default implementation of local_command_line().
+ *     See g_application_run() for details.
  * @G_APPLICATION_SEND_ENVIRONMENT: Send the environment of the
- *     launching process to the primary instance
+ *     launching process to the primary instance. Set this flag if your
+ *     application is expected to behave differently depending on certain
+ *     environment variables. For instance, an editor might be expected
+ *     to use the <envar>GIT_COMMITTER_NAME</envar> environment variable
+ *     when editing a git commit message. The environment is available
+ *     to the #GApplication::command-line signal handler, via
+ *     g_application_command_line_getenv().
+ * @G_APPLICATION_NON_UNIQUE: Make no attempts to do any of the typical
+ *     single-instance application negotiation.  The application neither
+ *     attempts to become the owner of the application ID nor does it
+ *     check if an existing owner already exists.  Everything occurs in
+ *     the local process.  Since: 2.30.
  *
  * Flags used to define the behaviour of a #GApplication.
  *
- * Since: 2.26
+ * Since: 2.28
  **/
 typedef enum
 {
@@ -1267,7 +1283,9 @@ typedef enum
 
   G_APPLICATION_HANDLES_OPEN =         (1 << 2),
   G_APPLICATION_HANDLES_COMMAND_LINE = (1 << 3),
-  G_APPLICATION_SEND_ENVIRONMENT    =  (1 << 4)
+  G_APPLICATION_SEND_ENVIRONMENT    =  (1 << 4),
+
+  G_APPLICATION_NON_UNIQUE =           (1 << 5),
 } GApplicationFlags;
 
 /**
@@ -1372,6 +1390,42 @@ typedef enum {
   G_TLS_REHANDSHAKE_UNSAFELY
 } GTlsRehandshakeMode;
 
+/**
+ * GDBusInterfaceSkeletonFlags:
+ * @G_DBUS_INTERFACE_SKELETON_FLAGS_NONE: No flags set.
+ * @G_DBUS_INTERFACE_SKELETON_FLAGS_HANDLE_METHOD_INVOCATIONS_IN_THREAD: Each method invocation is handled in
+ *   a thread dedicated to the invocation. This means that the method implementation can use blocking IO
+ *   without blocking any other part of the process. It also means that the method implementation must
+ *   use locking to access data structures used by other threads.
+ *
+ * Flags describing the behavior of a #GDBusInterfaceSkeleton instance.
+ *
+ * Since: 2.30
+ */
+typedef enum
+{
+  G_DBUS_INTERFACE_SKELETON_FLAGS_NONE = 0,
+  G_DBUS_INTERFACE_SKELETON_FLAGS_HANDLE_METHOD_INVOCATIONS_IN_THREAD = (1<<0)
+} GDBusInterfaceSkeletonFlags;
+
+/**
+ * GDBusObjectManagerClientFlags:
+ * @G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_NONE: No flags set.
+ * @G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START: If not set and the
+ *   manager is for a well-known name, then request the bus to launch
+ *   an owner for the name if no-one owns the name. This flag can only
+ *   be used in managers for well-known names.
+ *
+ * Flags used when constructing a #GDBusObjectManagerClient.
+ *
+ * Since: 2.30
+ */
+typedef enum
+{
+  G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_NONE = 0,
+  G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START = (1<<0),
+} GDBusObjectManagerClientFlags;
+
 G_END_DECLS
 
 #endif /* __GIO_ENUMS_H__ */