gio/appinfo: Port docs to gi-docgen

Adjust all docs to use the gi-docgen referencing syntax, reindent
some of the comments, and add missing annotations to some async
methods.

The error arguments are not necessary with gi-docgen so they're
removed.

Confusingly enough, the docks for GAppInfo is spread between two
files.
This commit is contained in:
Georges Basile Stavracas Neto 2024-05-31 13:42:31 +02:00 committed by Philip Withnall
parent 110e76a140
commit b8db83940b
3 changed files with 226 additions and 212 deletions

View File

@ -56,15 +56,19 @@
* As of GLib 2.20, URIs will always be converted to POSIX paths * As of GLib 2.20, URIs will always be converted to POSIX paths
* (using [method@Gio.File.get_path]) when using [method@Gio.AppInfo.launch] * (using [method@Gio.File.get_path]) when using [method@Gio.AppInfo.launch]
* even if the application requested an URI and not a POSIX path. For example * even if the application requested an URI and not a POSIX path. For example
* for a desktop-file based application with Exec key `totem * for a desktop-file based application with the following Exec key:
* %U` and a single URI, `sftp://foo/file.avi`, then *
* `/home/user/.gvfs/sftp on foo/file.avi` will be passed. This will * ```
* only work if a set of suitable GIO extensions (such as GVfs 2.26 * Exec=totem %U
* compiled with FUSE support), is available and operational; if this * ```
* is not the case, the URI will be passed unmodified to the application. *
* Some URIs, such as `mailto:`, of course cannot be mapped to a POSIX * and a single URI, `sftp://foo/file.avi`, then
* path (in GVfs there's no FUSE mount for it); such URIs will be * `/home/user/.gvfs/sftp on foo/file.avi` will be passed. This will only work
* passed unmodified to the application. * if a set of suitable GIO extensions (such as GVfs 2.26 compiled with FUSE
* support), is available and operational; if this is not the case, the URI
* will be passed unmodified to the application. Some URIs, such as `mailto:`,
* of course cannot be mapped to a POSIX path (in GVfs theres no FUSE mount
* for it); such URIs will be passed unmodified to the application.
* *
* Specifically for GVfs 2.26 and later, the POSIX URI will be mapped * Specifically for GVfs 2.26 and later, the POSIX URI will be mapped
* back to the GIO URI in the [iface@Gio.File] constructors (since GVfs * back to the GIO URI in the [iface@Gio.File] constructors (since GVfs
@ -94,7 +98,7 @@
* *
* This code will work when both `cdda://sr0/Track 1.wav` and * This code will work when both `cdda://sr0/Track 1.wav` and
* `/home/user/.gvfs/cdda on sr0/Track 1.wav` is passed to the * `/home/user/.gvfs/cdda on sr0/Track 1.wav` is passed to the
* application. It should be noted that it's generally not safe * application. It should be noted that its generally not safe
* for applications to rely on the format of a particular URIs. * for applications to rely on the format of a particular URIs.
* Different launcher applications (e.g. file managers) may have * Different launcher applications (e.g. file managers) may have
* different ideas of what a given URI means. * different ideas of what a given URI means.
@ -115,9 +119,9 @@ g_app_info_default_init (GAppInfoInterface *iface)
/** /**
* g_app_info_dup: * g_app_info_dup:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Creates a duplicate of a #GAppInfo. * Creates a duplicate of a [iface@Gio.AppInfo].
* *
* Returns: (transfer full): a duplicate of @appinfo. * Returns: (transfer full): a duplicate of @appinfo.
**/ **/
@ -135,16 +139,16 @@ g_app_info_dup (GAppInfo *appinfo)
/** /**
* g_app_info_equal: * g_app_info_equal:
* @appinfo1: the first #GAppInfo. * @appinfo1: the first [iface@Gio.AppInfo].
* @appinfo2: the second #GAppInfo. * @appinfo2: the second [iface@Gio.AppInfo].
* *
* Checks if two #GAppInfos are equal. * Checks if two [iface@Gio.AppInfo]s are equal.
* *
* Note that the check *may not* compare each individual * Note that the check *may not* compare each individual field, and only does
* field, and only does an identity check. In case detecting changes in the * an identity check. In case detecting changes in the contents is needed,
* contents is needed, program code must additionally compare relevant fields. * program code must additionally compare relevant fields.
* *
* Returns: %TRUE if @appinfo1 is equal to @appinfo2. %FALSE otherwise. * Returns: `TRUE` if @appinfo1 is equal to @appinfo2. `FALSE` otherwise.
**/ **/
gboolean gboolean
g_app_info_equal (GAppInfo *appinfo1, g_app_info_equal (GAppInfo *appinfo1,
@ -165,17 +169,16 @@ g_app_info_equal (GAppInfo *appinfo1,
/** /**
* g_app_info_get_id: * g_app_info_get_id:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Gets the ID of an application. An id is a string that * Gets the ID of an application. An id is a string that identifies the
* identifies the application. The exact format of the id is * application. The exact format of the id is platform dependent. For instance,
* platform dependent. For instance, on Unix this is the * on Unix this is the desktop file id from the xdg menu specification.
* desktop file id from the xdg menu specification.
* *
* Note that the returned ID may be %NULL, depending on how * Note that the returned ID may be `NULL`, depending on how the @appinfo has
* the @appinfo has been constructed. * been constructed.
* *
* Returns: (nullable): a string containing the application's ID. * Returns: (nullable): a string containing the applications ID.
**/ **/
const char * const char *
g_app_info_get_id (GAppInfo *appinfo) g_app_info_get_id (GAppInfo *appinfo)
@ -191,7 +194,7 @@ g_app_info_get_id (GAppInfo *appinfo)
/** /**
* g_app_info_get_name: * g_app_info_get_name:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Gets the installed name of the application. * Gets the installed name of the application.
* *
@ -211,7 +214,7 @@ g_app_info_get_name (GAppInfo *appinfo)
/** /**
* g_app_info_get_display_name: * g_app_info_get_display_name:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Gets the display name of the application. The display name is often more * Gets the display name of the application. The display name is often more
* descriptive to the user than the name itself. * descriptive to the user than the name itself.
@ -238,12 +241,12 @@ g_app_info_get_display_name (GAppInfo *appinfo)
/** /**
* g_app_info_get_description: * g_app_info_get_description:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Gets a human-readable description of an installed application. * Gets a human-readable description of an installed application.
* *
* Returns: (nullable): a string containing a description of the * Returns: (nullable): a string containing a description of the
* application @appinfo, or %NULL if none. * application @appinfo, or `NULL` if none.
**/ **/
const char * const char *
g_app_info_get_description (GAppInfo *appinfo) g_app_info_get_description (GAppInfo *appinfo)
@ -259,15 +262,15 @@ g_app_info_get_description (GAppInfo *appinfo)
/** /**
* g_app_info_get_executable: (virtual get_executable) * g_app_info_get_executable: (virtual get_executable)
* @appinfo: a #GAppInfo * @appinfo: the app info
* *
* Gets the executable's name for the installed application. * Gets the executables name for the installed application.
* *
* This is intended to be used for debugging or labelling what program is going * This is intended to be used for debugging or labelling what program is going
* to be run. To launch the executable, use g_app_info_launch() and related * to be run. To launch the executable, use [method@Gio.AppInfo.launch] and related
* functions, rather than spawning the return value from this function. * functions, rather than spawning the return value from this function.
* *
* Returns: (type filename): a string containing the @appinfo's application * Returns: (type filename): a string containing the @appinfos application
* binaries name * binaries name
**/ **/
const char * const char *
@ -285,13 +288,13 @@ g_app_info_get_executable (GAppInfo *appinfo)
/** /**
* g_app_info_get_commandline: (virtual get_commandline) * g_app_info_get_commandline: (virtual get_commandline)
* @appinfo: a #GAppInfo * @appinfo: the app info
* *
* Gets the commandline with which the application will be * Gets the commandline with which the application will be
* started. * started.
* *
* Returns: (nullable) (type filename): a string containing the @appinfo's commandline, * Returns: (nullable) (type filename): a string containing the @appinfos
* or %NULL if this information is not available * commandline, or `NULL` if this information is not available
* *
* Since: 2.20 * Since: 2.20
**/ **/
@ -312,13 +315,12 @@ g_app_info_get_commandline (GAppInfo *appinfo)
/** /**
* g_app_info_set_as_default_for_type: * g_app_info_set_as_default_for_type:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* @content_type: the content type. * @content_type: the content type.
* @error: a #GError.
* *
* Sets the application as the default handler for a given type. * Sets the application as the default handler for a given type.
* *
* Returns: %TRUE on success, %FALSE on error. * Returns: `TRUE` on success, `FALSE` on error.
**/ **/
gboolean gboolean
g_app_info_set_as_default_for_type (GAppInfo *appinfo, g_app_info_set_as_default_for_type (GAppInfo *appinfo,
@ -342,16 +344,15 @@ g_app_info_set_as_default_for_type (GAppInfo *appinfo,
/** /**
* g_app_info_set_as_last_used_for_type: * g_app_info_set_as_last_used_for_type:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* @content_type: the content type. * @content_type: the content type.
* @error: a #GError.
* *
* Sets the application as the last used application for a given type. * Sets the application as the last used application for a given type. This
* This will make the application appear as first in the list returned * will make the application appear as first in the list returned by
* by g_app_info_get_recommended_for_type(), regardless of the default * [func@Gio.AppInfo.get_recommended_for_type], regardless of the default
* application for that content type. * application for that content type.
* *
* Returns: %TRUE on success, %FALSE on error. * Returns: `TRUE` on success, `FALSE` on error.
**/ **/
gboolean gboolean
g_app_info_set_as_last_used_for_type (GAppInfo *appinfo, g_app_info_set_as_last_used_for_type (GAppInfo *appinfo,
@ -375,14 +376,13 @@ g_app_info_set_as_last_used_for_type (GAppInfo *appinfo,
/** /**
* g_app_info_set_as_default_for_extension: * g_app_info_set_as_default_for_extension:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* @extension: (type filename): a string containing the file extension * @extension: (type filename): a string containing the file extension (without
* (without the dot). * the dot).
* @error: a #GError.
* *
* Sets the application as the default handler for the given file extension. * Sets the application as the default handler for the given file extension.
* *
* Returns: %TRUE on success, %FALSE on error. * Returns: `TRUE` on success, `FALSE` on error.
**/ **/
gboolean gboolean
g_app_info_set_as_default_for_extension (GAppInfo *appinfo, g_app_info_set_as_default_for_extension (GAppInfo *appinfo,
@ -407,14 +407,13 @@ g_app_info_set_as_default_for_extension (GAppInfo *appinfo,
/** /**
* g_app_info_add_supports_type: * g_app_info_add_supports_type:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* @content_type: a string. * @content_type: a string.
* @error: a #GError.
* *
* Adds a content type to the application information to indicate the * Adds a content type to the application information to indicate the
* application is capable of opening files with the given content type. * application is capable of opening files with the given content type.
* *
* Returns: %TRUE on success, %FALSE on error. * Returns: `TRUE` on success, `FALSE` on error.
**/ **/
gboolean gboolean
g_app_info_add_supports_type (GAppInfo *appinfo, g_app_info_add_supports_type (GAppInfo *appinfo,
@ -441,12 +440,12 @@ g_app_info_add_supports_type (GAppInfo *appinfo,
/** /**
* g_app_info_can_remove_supports_type: * g_app_info_can_remove_supports_type:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Checks if a supported content type can be removed from an application. * Checks if a supported content type can be removed from an application.
* *
* Returns: %TRUE if it is possible to remove supported * Returns: `TRUE` if it is possible to remove supported content types from a
* content types from a given @appinfo, %FALSE if not. * given @appinfo, `FALSE` if not.
**/ **/
gboolean gboolean
g_app_info_can_remove_supports_type (GAppInfo *appinfo) g_app_info_can_remove_supports_type (GAppInfo *appinfo)
@ -466,13 +465,12 @@ g_app_info_can_remove_supports_type (GAppInfo *appinfo)
/** /**
* g_app_info_remove_supports_type: * g_app_info_remove_supports_type:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* @content_type: a string. * @content_type: a string.
* @error: a #GError.
* *
* Removes a supported type from an application, if possible. * Removes a supported type from an application, if possible.
* *
* Returns: %TRUE on success, %FALSE on error. * Returns: `TRUE` on success, `FALSE` on error.
**/ **/
gboolean gboolean
g_app_info_remove_supports_type (GAppInfo *appinfo, g_app_info_remove_supports_type (GAppInfo *appinfo,
@ -498,13 +496,14 @@ g_app_info_remove_supports_type (GAppInfo *appinfo,
/** /**
* g_app_info_get_supported_types: * g_app_info_get_supported_types:
* @appinfo: a #GAppInfo that can handle files * @appinfo: an app info that can handle files
* *
* Retrieves the list of content types that @app_info claims to support. * Retrieves the list of content types that @app_info claims to support.
* If this information is not provided by the environment, this function * If this information is not provided by the environment, this function
* will return %NULL. * will return `NULL`.
*
* This function does not take in consideration associations added with * This function does not take in consideration associations added with
* g_app_info_add_supports_type(), but only those exported directly by * [method@Gio.AppInfo.add_supports_type], but only those exported directly by
* the application. * the application.
* *
* Returns: (transfer none) (array zero-terminated=1) (element-type utf8): * Returns: (transfer none) (array zero-terminated=1) (element-type utf8):
@ -530,12 +529,12 @@ g_app_info_get_supported_types (GAppInfo *appinfo)
/** /**
* g_app_info_get_icon: * g_app_info_get_icon:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Gets the icon for the application. * Gets the icon for the application.
* *
* Returns: (nullable) (transfer none): the default #GIcon for @appinfo or %NULL * Returns: (nullable) (transfer none): the default [iface@Gio.Icon] for
* if there is no default icon. * @appinfo or `NULL` if there is no default icon.
**/ **/
GIcon * GIcon *
g_app_info_get_icon (GAppInfo *appinfo) g_app_info_get_icon (GAppInfo *appinfo)
@ -552,17 +551,16 @@ g_app_info_get_icon (GAppInfo *appinfo)
/** /**
* g_app_info_launch: * g_app_info_launch:
* @appinfo: a #GAppInfo * @appinfo: the app info
* @files: (nullable) (element-type GFile): a #GList of #GFile objects * @files: (nullable) (element-type GFile): a list of [iface@Gio.File] objects
* @context: (nullable): a #GAppLaunchContext or %NULL * @context: (nullable): the launch context
* @error: a #GError
* *
* Launches the application. Passes @files to the launched application * Launches the application. Passes @files to the launched application
* as arguments, using the optional @context to get information * as arguments, using the optional @context to get information
* about the details of the launcher (like what screen it is on). * about the details of the launcher (like what screen it is on).
* On error, @error will be set accordingly. * On error, @error will be set accordingly.
* *
* To launch the application without arguments pass a %NULL @files list. * To launch the application without arguments pass a `NULL` @files list.
* *
* Note that even if the launch is successful the application launched * Note that even if the launch is successful the application launched
* can fail to start if it runs into problems during startup. There is * can fail to start if it runs into problems during startup. There is
@ -571,11 +569,11 @@ g_app_info_get_icon (GAppInfo *appinfo)
* Some URIs can be changed when passed through a GFile (for instance * Some URIs can be changed when passed through a GFile (for instance
* unsupported URIs with strange formats like mailto:), so if you have * unsupported URIs with strange formats like mailto:), so if you have
* a textual URI you want to pass in as argument, consider using * a textual URI you want to pass in as argument, consider using
* g_app_info_launch_uris() instead. * [method@Gio.AppInfo.launch_uris] instead.
* *
* The launched application inherits the environment of the launching * The launched application inherits the environment of the launching
* process, but it can be modified with g_app_launch_context_setenv() * process, but it can be modified with [method@Gio.AppLaunchContext.setenv]
* and g_app_launch_context_unsetenv(). * and [method@Gio.AppLaunchContext.unsetenv].
* *
* On UNIX, this function sets the `GIO_LAUNCHED_DESKTOP_FILE` * On UNIX, this function sets the `GIO_LAUNCHED_DESKTOP_FILE`
* environment variable with the path of the launched desktop file and * environment variable with the path of the launched desktop file and
@ -585,7 +583,7 @@ g_app_info_get_icon (GAppInfo *appinfo)
* `XDG_ACTIVATION_TOKEN` and `DESKTOP_STARTUP_ID` environment * `XDG_ACTIVATION_TOKEN` and `DESKTOP_STARTUP_ID` environment
* variables are also set, based on information provided in @context. * variables are also set, based on information provided in @context.
* *
* Returns: %TRUE on successful launch, %FALSE otherwise. * Returns: `TRUE` on successful launch, `FALSE` otherwise.
**/ **/
gboolean gboolean
g_app_info_launch (GAppInfo *appinfo, g_app_info_launch (GAppInfo *appinfo,
@ -605,11 +603,11 @@ g_app_info_launch (GAppInfo *appinfo,
/** /**
* g_app_info_supports_uris: * g_app_info_supports_uris:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Checks if the application supports reading files and directories from URIs. * Checks if the application supports reading files and directories from URIs.
* *
* Returns: %TRUE if the @appinfo supports URIs. * Returns: `TRUE` if the @appinfo supports URIs.
**/ **/
gboolean gboolean
g_app_info_supports_uris (GAppInfo *appinfo) g_app_info_supports_uris (GAppInfo *appinfo)
@ -626,11 +624,11 @@ g_app_info_supports_uris (GAppInfo *appinfo)
/** /**
* g_app_info_supports_files: * g_app_info_supports_files:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Checks if the application accepts files as arguments. * Checks if the application accepts files as arguments.
* *
* Returns: %TRUE if the @appinfo supports files. * Returns: `TRUE` if the @appinfo supports files.
**/ **/
gboolean gboolean
g_app_info_supports_files (GAppInfo *appinfo) g_app_info_supports_files (GAppInfo *appinfo)
@ -647,10 +645,9 @@ g_app_info_supports_files (GAppInfo *appinfo)
/** /**
* g_app_info_launch_uris: * g_app_info_launch_uris:
* @appinfo: a #GAppInfo * @appinfo: the app info
* @uris: (nullable) (element-type utf8): a #GList containing URIs to launch. * @uris: (nullable) (element-type utf8): a list of URIs to launch.
* @context: (nullable): a #GAppLaunchContext or %NULL * @context: (nullable): the launch context
* @error: a #GError
* *
* Launches the application. This passes the @uris to the launched application * Launches the application. This passes the @uris to the launched application
* as arguments, using the optional @context to get information * as arguments, using the optional @context to get information
@ -659,13 +656,13 @@ g_app_info_supports_files (GAppInfo *appinfo)
* one URI per invocation as part of their command-line, multiple instances * one URI per invocation as part of their command-line, multiple instances
* of the application will be spawned. * of the application will be spawned.
* *
* To launch the application without arguments pass a %NULL @uris list. * To launch the application without arguments pass a `NULL` @uris list.
* *
* Note that even if the launch is successful the application launched * Note that even if the launch is successful the application launched
* can fail to start if it runs into problems during startup. There is * can fail to start if it runs into problems during startup. There is
* no way to detect this. * no way to detect this.
* *
* Returns: %TRUE on successful launch, %FALSE otherwise. * Returns: `TRUE` on successful launch, `FALSE` otherwise.
**/ **/
gboolean gboolean
g_app_info_launch_uris (GAppInfo *appinfo, g_app_info_launch_uris (GAppInfo *appinfo,
@ -684,19 +681,20 @@ g_app_info_launch_uris (GAppInfo *appinfo,
/** /**
* g_app_info_launch_uris_async: * g_app_info_launch_uris_async:
* @appinfo: a #GAppInfo * @appinfo: the app info
* @uris: (nullable) (element-type utf8): a #GList containing URIs to launch. * @uris: (nullable) (element-type utf8): a list of URIs to launch.
* @context: (nullable): a #GAppLaunchContext or %NULL * @context: (nullable): the launch context
* @cancellable: (nullable): a #GCancellable * @cancellable: (nullable): a [class@Gio.Cancellable]
* @callback: (nullable): a #GAsyncReadyCallback to call when the request is done * @callback: (scope async) (nullable): a [type@Gio.AsyncReadyCallback] to call
* when the request is done
* @user_data: (nullable): data to pass to @callback * @user_data: (nullable): data to pass to @callback
* *
* Async version of g_app_info_launch_uris(). * Async version of [method@Gio.AppInfo.launch_uris].
* *
* The @callback is invoked immediately after the application launch, but it * The @callback is invoked immediately after the application launch, but it
* waits for activation in case of D-Busactivated applications and also provides * waits for activation in case of D-Busactivated applications and also provides
* extended error information for sandboxed applications, see notes for * extended error information for sandboxed applications, see notes for
* g_app_info_launch_default_for_uri_async(). * [func@Gio.AppInfo.launch_default_for_uri_async].
* *
* Since: 2.60 * Since: 2.60
**/ **/
@ -733,13 +731,12 @@ g_app_info_launch_uris_async (GAppInfo *appinfo,
/** /**
* g_app_info_launch_uris_finish: * g_app_info_launch_uris_finish:
* @appinfo: a #GAppInfo * @appinfo: the app info
* @result: a #GAsyncResult * @result: the async result
* @error: (nullable): a #GError
* *
* Finishes a g_app_info_launch_uris_async() operation. * Finishes a [method@Gio.AppInfo.launch_uris_async] operation.
* *
* Returns: %TRUE on successful launch, %FALSE otherwise. * Returns: `TRUE` on successful launch, `FALSE` otherwise.
* *
* Since: 2.60 * Since: 2.60
*/ */
@ -765,12 +762,12 @@ g_app_info_launch_uris_finish (GAppInfo *appinfo,
/** /**
* g_app_info_should_show: * g_app_info_should_show:
* @appinfo: a #GAppInfo. * @appinfo: the app info
* *
* Checks if the application info should be shown in menus that * Checks if the application info should be shown in menus that
* list available applications. * list available applications.
* *
* Returns: %TRUE if the @appinfo should be shown, %FALSE otherwise. * Returns: `TRUE` if the @appinfo should be shown, `FALSE` otherwise.
**/ **/
gboolean gboolean
g_app_info_should_show (GAppInfo *appinfo) g_app_info_should_show (GAppInfo *appinfo)
@ -821,14 +818,16 @@ get_default_for_type_thread (GTask *task,
/** /**
* g_app_info_get_default_for_type_async: * g_app_info_get_default_for_type_async:
* @content_type: the content type to find a #GAppInfo for * @content_type: the content type to find a [iface@Gio.AppInfo] for
* @must_support_uris: if %TRUE, the #GAppInfo is expected to * @must_support_uris: if `TRUE`, the [iface@Gio.AppInfo] is expected to
* support URIs * support URIs
* @cancellable: optional #GCancellable object, %NULL to ignore * @cancellable: (nullable): a [class@Gio.Cancellable]
* @callback: (nullable): a #GAsyncReadyCallback to call when the request is done * @callback: (scope async) (nullable): a [type@Gio.AsyncReadyCallback] to call
* when the request is done
* @user_data: (nullable): data to pass to @callback * @user_data: (nullable): data to pass to @callback
* *
* Asynchronously gets the default #GAppInfo for a given content type. * Asynchronously gets the default [iface@Gio.AppInfo] for a given content
* type.
* *
* Since: 2.74 * Since: 2.74
*/ */
@ -882,14 +881,15 @@ get_default_for_scheme_thread (GTask *task,
/** /**
* g_app_info_get_default_for_uri_scheme_async: * g_app_info_get_default_for_uri_scheme_async:
* @uri_scheme: a string containing a URI scheme. * @uri_scheme: a string containing a URI scheme.
* @cancellable: optional #GCancellable object, %NULL to ignore * @cancellable: (nullable): a [class@Gio.Cancellable]
* @callback: (nullable): a #GAsyncReadyCallback to call when the request is done * @callback: (scope async) (nullable): a [type@Gio.AsyncReadyCallback] to call
* when the request is done
* @user_data: (nullable): data to pass to @callback * @user_data: (nullable): data to pass to @callback
* *
* Asynchronously gets the default application for handling URIs with * Asynchronously gets the default application for handling URIs with
* the given URI scheme. A URI scheme is the initial part * the given URI scheme. A URI scheme is the initial part
* of the URI, up to but not including the ':', e.g. "http", * of the URI, up to but not including the `:`, e.g. `http`,
* "ftp" or "sip". * `ftp` or `sip`.
* *
* Since: 2.74 * Since: 2.74
*/ */
@ -914,16 +914,16 @@ g_app_info_get_default_for_uri_scheme_async (const char *uri_scheme,
/** /**
* g_app_info_get_default_for_uri_scheme_finish: * g_app_info_get_default_for_uri_scheme_finish:
* @result: a #GAsyncResult * @result: the async result
* @error: (nullable): a #GError
* *
* Finishes a default #GAppInfo lookup started by * Finishes a default [iface@Gio.AppInfo] lookup started by
* g_app_info_get_default_for_uri_scheme_async(). * [func@Gio.AppInfo.get_default_for_uri_scheme_async].
* *
* If no #GAppInfo is found, then @error will be set to %G_IO_ERROR_NOT_FOUND. * If no [iface@Gio.AppInfo] is found, then @error will be set to
* [error@Gio.IOErrorEnum.NOT_FOUND].
* *
* Returns: (transfer full): #GAppInfo for given @uri_scheme or * Returns: (transfer full): [iface@Gio.AppInfo] for given @uri_scheme or
* %NULL on error. * `NULL` on error.
* *
* Since: 2.74 * Since: 2.74
*/ */
@ -941,16 +941,16 @@ g_app_info_get_default_for_uri_scheme_finish (GAsyncResult *result,
/** /**
* g_app_info_get_default_for_type_finish: * g_app_info_get_default_for_type_finish:
* @result: a #GAsyncResult * @result: the async result
* @error: (nullable): a #GError
* *
* Finishes a default #GAppInfo lookup started by * Finishes a default [iface@Gio.AppInfo] lookup started by
* g_app_info_get_default_for_type_async(). * [func@Gio.AppInfo.get_default_for_type_async].
* *
* If no #GAppInfo is found, then @error will be set to %G_IO_ERROR_NOT_FOUND. * If no #[iface@Gio.AppInfo] is found, then @error will be set to
* [error@Gio.IOErrorEnum.NOT_FOUND].
* *
* Returns: (transfer full): #GAppInfo for given @content_type or * Returns: (transfer full): [iface@Gio.AppInfo] for given @content_type or
* %NULL on error. * `NULL` on error.
* *
* Since: 2.74 * Since: 2.74
*/ */
@ -969,19 +969,17 @@ g_app_info_get_default_for_type_finish (GAsyncResult *result,
/** /**
* g_app_info_launch_default_for_uri: * g_app_info_launch_default_for_uri:
* @uri: the uri to show * @uri: the uri to show
* @context: (nullable): an optional #GAppLaunchContext * @context: (nullable): optional launch context
* @error: (nullable): return location for an error, or %NULL
* *
* Utility function that launches the default application * Utility function that launches the default application registered to handle
* registered to handle the specified uri. Synchronous I/O * the specified uri. Synchronous I/O is done on the uri to detect the type of
* is done on the uri to detect the type of the file if * the file if required.
* required.
* *
* The D-Busactivated applications don't have to be started if your application * The D-Busactivated applications dont have to be started if your application
* terminates too soon after this function. To prevent this, use * terminates too soon after this function. To prevent this, use
* g_app_info_launch_default_for_uri_async() instead. * [func@Gio.AppInfo.launch_default_for_uri_async] instead.
* *
* Returns: %TRUE on success, %FALSE on error. * Returns: `TRUE` on success, `FALSE` on error.
**/ **/
gboolean gboolean
g_app_info_launch_default_for_uri (const char *uri, g_app_info_launch_default_for_uri (const char *uri,
@ -1197,17 +1195,17 @@ launch_default_app_for_uri_cb (GObject *object,
/** /**
* g_app_info_launch_default_for_uri_async: * g_app_info_launch_default_for_uri_async:
* @uri: the uri to show * @uri: the uri to show
* @context: (nullable): an optional #GAppLaunchContext * @context: (nullable): optional launch context
* @cancellable: (nullable): a #GCancellable * @cancellable: (nullable): a [class@Gio.Cancellable]
* @callback: (nullable): a #GAsyncReadyCallback to call when the request is done * @callback: (scope async) (nullable): a [type@Gio.AsyncReadyCallback] to call
* when the request is done
* @user_data: (nullable): data to pass to @callback * @user_data: (nullable): data to pass to @callback
* *
* Async version of g_app_info_launch_default_for_uri(). * Async version of [func@Gio.AppInfo.launch_default_for_uri].
* *
* This version is useful if you are interested in receiving * This version is useful if you are interested in receiving error information
* error information in the case where the application is * in the case where the application is sandboxed and the portal may present an
* sandboxed and the portal may present an application chooser * application chooser dialog to the user.
* dialog to the user.
* *
* This is also useful if you want to be sure that the D-Busactivated * This is also useful if you want to be sure that the D-Busactivated
* applications are really started before termination and if you are interested * applications are really started before termination and if you are interested
@ -1258,12 +1256,11 @@ g_app_info_launch_default_for_uri_async (const char *uri,
/** /**
* g_app_info_launch_default_for_uri_finish: * g_app_info_launch_default_for_uri_finish:
* @result: a #GAsyncResult * @result: the async result
* @error: (nullable): return location for an error, or %NULL
* *
* Finishes an asynchronous launch-default-for-uri operation. * Finishes an asynchronous launch-default-for-uri operation.
* *
* Returns: %TRUE if the launch was successful, %FALSE if @error is set * Returns: `TRUE` if the launch was successful, `FALSE` if @error is set
* *
* Since: 2.50 * Since: 2.50
*/ */
@ -1278,12 +1275,12 @@ g_app_info_launch_default_for_uri_finish (GAsyncResult *result,
/** /**
* g_app_info_can_delete: * g_app_info_can_delete:
* @appinfo: a #GAppInfo * @appinfo: the app info
* *
* Obtains the information whether the #GAppInfo can be deleted. * Obtains the information whether the [iface@Gio.AppInfo] can be deleted.
* See g_app_info_delete(). * See [method@Gio.AppInfo.delete].
* *
* Returns: %TRUE if @appinfo can be deleted * Returns: `TRUE` if @appinfo can be deleted
* *
* Since: 2.20 * Since: 2.20
*/ */
@ -1305,15 +1302,15 @@ g_app_info_can_delete (GAppInfo *appinfo)
/** /**
* g_app_info_delete: (virtual do_delete) * g_app_info_delete: (virtual do_delete)
* @appinfo: a #GAppInfo * @appinfo: the app info
* *
* Tries to delete a #GAppInfo. * Tries to delete a [iface@Gio.AppInfo].
* *
* On some platforms, there may be a difference between user-defined * On some platforms, there may be a difference between user-defined
* #GAppInfos which can be deleted, and system-wide ones which cannot. * [iface@Gio.AppInfo]s which can be deleted, and system-wide ones which cannot.
* See g_app_info_can_delete(). * See [method@Gio.AppInfo.can_delete].
* *
* Returns: %TRUE if @appinfo has been deleted * Returns: `TRUE` if @appinfo has been deleted
* *
* Since: 2.20 * Since: 2.20
*/ */

View File

@ -49,32 +49,47 @@ typedef struct _GAppLaunchContextPrivate GAppLaunchContextPrivate;
/** /**
* GAppInfoIface: * GAppInfoIface:
* @g_iface: The parent interface. * @g_iface: The parent interface.
* @dup: Copies a #GAppInfo. * @dup: Copies a [iface@Gio.AppInfo].
* @equal: Checks two #GAppInfos for equality. * @equal: Checks two [iface@Gio.AppInfo]s for equality.
* @get_id: Gets a string identifier for a #GAppInfo. * @get_id: Gets a string identifier for a [iface@Gio.AppInfo].
* @get_name: Gets the name of the application for a #GAppInfo. * @get_name: Gets the name of the application for a [iface@Gio.AppInfo].
* @get_description: Gets a short description for the application described by the #GAppInfo. * @get_description: Gets a short description for the application described by
* @get_executable: Gets the executable name for the #GAppInfo. * the [iface@Gio.AppInfo].
* @get_icon: Gets the #GIcon for the #GAppInfo. * @get_executable: Gets the executable name for the [iface@Gio.AppInfo].
* @launch: Launches an application specified by the #GAppInfo. * @get_icon: Gets the [iface@Gio.Icon] for the [iface@Gio.AppInfo].
* @supports_uris: Indicates whether the application specified supports launching URIs. * @launch: Launches an application specified by the [iface@Gio.AppInfo].
* @supports_files: Indicates whether the application specified accepts filename arguments. * @supports_uris: Indicates whether the application specified supports
* launching URIs.
* @supports_files: Indicates whether the application specified accepts
* filename arguments.
* @launch_uris: Launches an application with a list of URIs. * @launch_uris: Launches an application with a list of URIs.
* @should_show: Returns whether an application should be shown (e.g. when getting a list of installed applications). * @should_show: Returns whether an application should be shown (e.g. when
* getting a list of installed applications).
* [FreeDesktop.Org Startup Notification Specification](http://standards.freedesktop.org/startup-notification-spec/startup-notification-latest.txt). * [FreeDesktop.Org Startup Notification Specification](http://standards.freedesktop.org/startup-notification-spec/startup-notification-latest.txt).
* @set_as_default_for_type: Sets an application as default for a given content type. * @set_as_default_for_type: Sets an application as default for a given content
* @set_as_default_for_extension: Sets an application as default for a given file extension. * type.
* @add_supports_type: Adds to the #GAppInfo information about supported file types. * @set_as_default_for_extension: Sets an application as default for a given
* @can_remove_supports_type: Checks for support for removing supported file types from a #GAppInfo. * file extension.
* @remove_supports_type: Removes a supported application type from a #GAppInfo. * @add_supports_type: Adds to the [iface@Gio.AppInfo] information about
* @can_delete: Checks if a #GAppInfo can be deleted. Since 2.20 * supported file types.
* @do_delete: Deletes a #GAppInfo. Since 2.20 * @can_remove_supports_type: Checks for support for removing supported file
* @get_commandline: Gets the commandline for the #GAppInfo. Since 2.20 * types from a [iface@Gio.AppInfo].
* @get_display_name: Gets the display name for the #GAppInfo. Since 2.24 * @remove_supports_type: Removes a supported application type from a
* @set_as_last_used_for_type: Sets the application as the last used. See g_app_info_set_as_last_used_for_type(). * [iface@Gio.AppInfo].
* @get_supported_types: Retrieves the list of content types that @app_info claims to support. * @can_delete: Checks if a [iface@Gio.AppInfo] can be deleted. (Since 2.20)
* @launch_uris_async: Asynchronously launches an application with a list of URIs. (Since: 2.60) * @do_delete: Deletes a [iface@Gio.AppInfo]. (Since 2.20)
* @launch_uris_finish: Finishes an operation started with @launch_uris_async. (Since: 2.60) * @get_commandline: Gets the commandline for the [iface@Gio.AppInfo].
* (Since 2.20)
* @get_display_name: Gets the display name for the [iface@Gio.AppInfo].
* (Since 2.24)
* @set_as_last_used_for_type: Sets the application as the last used. See
* [method@Gio.AppInfo.set_as_last_used_for_type].
* @get_supported_types: Retrieves the list of content types that @app_info
* claims to support.
* @launch_uris_async: Asynchronously launches an application with a list of
* URIs. (Since: 2.60)
* @launch_uris_finish: Finishes an operation started with @launch_uris_async.
* (Since: 2.60)
* Application Information interface, for operating system portability. * Application Information interface, for operating system portability.
*/ */

View File

@ -4486,17 +4486,18 @@ g_desktop_app_info_get_desktop_ids_for_content_type (const gchar *content_type,
/** /**
* g_app_info_get_recommended_for_type: * g_app_info_get_recommended_for_type:
* @content_type: the content type to find a #GAppInfo for * @content_type: the content type to find a [iface@Gio.AppInfo] for
*
* Gets a list of recommended [iface@Gio.AppInfo]s for a given content type,
* i.e. those applications which claim to support the given content type
* exactly, and not by MIME type subclassing.
* *
* Gets a list of recommended #GAppInfos for a given content type, i.e.
* those applications which claim to support the given content type exactly,
* and not by MIME type subclassing.
* Note that the first application of the list is the last used one, i.e. * Note that the first application of the list is the last used one, i.e.
* the last one for which g_app_info_set_as_last_used_for_type() has been * the last one for which [method@Gio.AppInfo.set_as_last_used_for_type] has
* called. * been called.
* *
* Returns: (element-type GAppInfo) (transfer full): #GList of #GAppInfos * Returns: (element-type GAppInfo) (transfer full): list of
* for given @content_type or %NULL on error. * [iface@Gio.AppInfo]s for given @content_type or `NULL` on error.
* *
* Since: 2.28 * Since: 2.28
**/ **/
@ -4528,14 +4529,14 @@ g_app_info_get_recommended_for_type (const gchar *content_type)
/** /**
* g_app_info_get_fallback_for_type: * g_app_info_get_fallback_for_type:
* @content_type: the content type to find a #GAppInfo for * @content_type: the content type to find a [iface@Gio.AppInfo] for
* *
* Gets a list of fallback #GAppInfos for a given content type, i.e. * Gets a list of fallback [iface@Gio.AppInfo]s for a given content type, i.e.
* those applications which claim to support the given content type * those applications which claim to support the given content type by MIME
* by MIME type subclassing and not directly. * type subclassing and not directly.
* *
* Returns: (element-type GAppInfo) (transfer full): #GList of #GAppInfos * Returns: (element-type GAppInfo) (transfer full): list of [iface@Gio.AppInfo]s
* for given @content_type or %NULL on error. * for given @content_type or `NULL` on error.
* *
* Since: 2.28 * Since: 2.28
**/ **/
@ -4580,15 +4581,15 @@ g_app_info_get_fallback_for_type (const gchar *content_type)
/** /**
* g_app_info_get_all_for_type: * g_app_info_get_all_for_type:
* @content_type: the content type to find a #GAppInfo for * @content_type: the content type to find a [iface@Gio.AppInfo] for
* *
* Gets a list of all #GAppInfos for a given content type, * Gets a list of all [iface@Gio.AppInfo]s for a given content type,
* including the recommended and fallback #GAppInfos. See * including the recommended and fallback [iface@Gio.AppInfo]s. See
* g_app_info_get_recommended_for_type() and * [func@Gio.AppInfo.get_recommended_for_type] and
* g_app_info_get_fallback_for_type(). * [func@Gio.AppInfo.get_fallback_for_type].
* *
* Returns: (element-type GAppInfo) (transfer full): #GList of #GAppInfos * Returns: (element-type GAppInfo) (transfer full): list of
* for given @content_type or %NULL on error. * [iface@Gio.AppInfo]s for given @content_type.
**/ **/
GList * GList *
g_app_info_get_all_for_type (const char *content_type) g_app_info_get_all_for_type (const char *content_type)
@ -4621,10 +4622,10 @@ g_app_info_get_all_for_type (const char *content_type)
* @content_type: a content type * @content_type: a content type
* *
* Removes all changes to the type associations done by * Removes all changes to the type associations done by
* g_app_info_set_as_default_for_type(), * [method@Gio.AppInfo.set_as_default_for_type],
* g_app_info_set_as_default_for_extension(), * [method@Gio.AppInfo.set_as_default_for_extension],
* g_app_info_add_supports_type() or * [method@Gio.AppInfo.add_supports_type] or
* g_app_info_remove_supports_type(). * [method@Gio.AppInfo.remove_supports_type].
* *
* Since: 2.20 * Since: 2.20
*/ */
@ -4638,14 +4639,14 @@ g_app_info_reset_type_associations (const char *content_type)
/** /**
* g_app_info_get_default_for_type: * g_app_info_get_default_for_type:
* @content_type: the content type to find a #GAppInfo for * @content_type: the content type to find a [iface@Gio.AppInfo] for
* @must_support_uris: if %TRUE, the #GAppInfo is expected to * @must_support_uris: if `TRUE`, the [iface@Gio.AppInfo] is expected to
* support URIs * support URIs
* *
* Gets the default #GAppInfo for a given content type. * Gets the default [iface@Gio.AppInfo] for a given content type.
* *
* Returns: (transfer full) (nullable): #GAppInfo for given @content_type or * Returns: (transfer full) (nullable): [iface@Gio.AppInfo] for given
* %NULL on error. * @content_type or `NULL` on error.
*/ */
GAppInfo * GAppInfo *
g_app_info_get_default_for_type (const char *content_type, g_app_info_get_default_for_type (const char *content_type,
@ -4899,11 +4900,12 @@ g_desktop_app_info_search (const gchar *search_string)
* *
* For desktop files, this includes applications that have * For desktop files, this includes applications that have
* `NoDisplay=true` set or are excluded from display by means * `NoDisplay=true` set or are excluded from display by means
* of `OnlyShowIn` or `NotShowIn`. See g_app_info_should_show(). * of `OnlyShowIn` or `NotShowIn`. See [method@Gio.AppInfo.should_show].
* The returned list does not include applications which have * The returned list does not include applications which have
* the `Hidden` key set. * the `Hidden` key set.
* *
* Returns: (element-type GAppInfo) (transfer full): a newly allocated #GList of references to #GAppInfos. * Returns: (element-type GAppInfo) (transfer full): a newly allocated
* list of references to [iface@Gio.AppInfo]s.
**/ **/
GList * GList *
g_app_info_get_all (void) g_app_info_get_all (void)