Gio.AppInfo¶
- Implementations:
Methods¶
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
class |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Virtual Methods¶
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Properties¶
None
Signals¶
None
Fields¶
None
Class Details¶
- class Gio.AppInfo¶
- Bases:
- Structure:
Information about an installed application and methods to launch it (with file arguments).
GAppInfo
andGAppLaunchContext
are used for describing and launching applications installed on the system.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] even if the application requested an URI and not a POSIX path. For example for a desktop-file based application with Exec key
totem %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 asGio.Vfs
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 asmailto:
, of course cannot be mapped to a POSIX path (inGio.Vfs
there’s no FUSE mount for it); such URIs will be passed unmodified to the application.Specifically for
Gio.Vfs
2.26 and later, the POSIX URI will be mapped back to the GIO URI in the [iface`Gio`.File] constructors (sinceGio.Vfs
implements theGio.Vfs
extension point). As such, if the application needs to examine the URI, it needs to use [method`Gio`.File.get_uri] or similar on [iface`Gio`.File]. In other words, an application cannot assume that the URI passed to e.g. [func`Gio`.File.new_for_commandline_arg] is equal to the result of [method`Gio`.File.get_uri]. The following snippet illustrates this:file =
Gio.File.new_for_commandline_arg
(uri_from_commandline);uri =
Gio.File.get_uri
(file); strcmp (uri, uri_from_commandline) == 0;GLib.free
(uri);if (
Gio.File.has_uri_scheme
(file, “cdda”)) { // do something special with uri }GObject.Object.unref
(file); ```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 application. It should be noted that it’s generally not safe for applications to rely on the format of a particular URIs. Different launcher applications (e.g. file managers) may have different ideas of what a given URI means.- classmethod create_from_commandline(commandline, application_name, flags)[source]¶
- Parameters:
commandline (
str
) – the commandline to useapplication_name (
str
orNone
) – the application name, orNone
to use commandlineflags (
Gio.AppInfoCreateFlags
) – flags that can specify details of the createdGio.AppInfo
- Raises:
- Returns:
new
Gio.AppInfo
for given command.- Return type:
Creates a new
Gio.AppInfo
from the given information.Note that for commandline, the quoting rules of the Exec key of the freedesktop.org Desktop Entry Specification are applied. For example, if the commandline contains percent-encoded URIs, the percent-character must be doubled in order to prevent it from being swallowed by Exec key unquoting. See the specification for exact quoting rules.
- classmethod get_all()[source]¶
- Returns:
a newly allocated
GLib.List
of references toGio.AppInfos
.- Return type:
Gets a list of all of the applications currently registered on this system.
For desktop files, this includes applications that have
NoDisplay=true
set or are excluded from display by means ofOnlyShowIn
orNotShowIn
. SeeGio.AppInfo.should_show
(). The returned list does not include applications which have theHidden
key set.
- classmethod get_all_for_type(content_type)[source]¶
- Parameters:
content_type (
str
) – the content type to find aGio.AppInfo
for- Returns:
GLib.List
ofGio.AppInfos
for given content_type orNone
on error.- Return type:
Gets a list of all
Gio.AppInfos
for a given content type, including the recommended and fallbackGio.AppInfos
. SeeGio.AppInfo.get_recommended_for_type
() andGio.AppInfo.get_fallback_for_type
().
- classmethod get_default_for_type(content_type, must_support_uris)[source]¶
- Parameters:
content_type (
str
) – the content type to find aGio.AppInfo
formust_support_uris (
bool
) – ifTrue
, theGio.AppInfo
is expected to support URIs
- Returns:
Gio.AppInfo
for given content_type orNone
on error.- Return type:
Gio.AppInfo
orNone
Gets the default
Gio.AppInfo
for a given content type.
- classmethod get_default_for_type_async(content_type, must_support_uris, cancellable, callback, *user_data)[source]¶
- Parameters:
content_type (
str
) – the content type to find aGio.AppInfo
formust_support_uris (
bool
) – ifTrue
, theGio.AppInfo
is expected to support URIscancellable (
Gio.Cancellable
orNone
) – optionalGio.Cancellable
object,None
to ignorecallback (
Gio.AsyncReadyCallback
orNone
) – aGio.AsyncReadyCallback
to call when the request is done
Asynchronously gets the default
Gio.AppInfo
for a given content type.New in version 2.74.
- classmethod get_default_for_type_finish(result)[source]¶
- Parameters:
result (
Gio.AsyncResult
) – aGio.AsyncResult
- Raises:
- Returns:
Gio.AppInfo
for given content_type orNone
on error.- Return type:
Finishes a default
Gio.AppInfo
lookup started byGio.AppInfo.get_default_for_type_async
().If no
Gio.AppInfo
is found, then error will be set toGio.IOErrorEnum.NOT_FOUND
.New in version 2.74.
- classmethod get_default_for_uri_scheme(uri_scheme)[source]¶
- Parameters:
uri_scheme (
str
) – a string containing a URI scheme.- Returns:
Gio.AppInfo
for given uri_scheme orNone
on error.- Return type:
Gio.AppInfo
orNone
Gets the default application for handling URIs with the given URI scheme. A URI scheme is the initial part of the URI, up to but not including the ‘:’, e.g. “http”, “ftp” or “sip”.
- classmethod get_default_for_uri_scheme_async(uri_scheme, cancellable, callback, *user_data)[source]¶
- Parameters:
uri_scheme (
str
) – a string containing a URI scheme.cancellable (
Gio.Cancellable
orNone
) – optionalGio.Cancellable
object,None
to ignorecallback (
Gio.AsyncReadyCallback
orNone
) – aGio.AsyncReadyCallback
to call when the request is done
Asynchronously gets the default application for handling URIs with the given URI scheme. A URI scheme is the initial part of the URI, up to but not including the ‘:’, e.g. “http”, “ftp” or “sip”.
New in version 2.74.
- classmethod get_default_for_uri_scheme_finish(result)[source]¶
- Parameters:
result (
Gio.AsyncResult
) – aGio.AsyncResult
- Raises:
- Returns:
Gio.AppInfo
for given uri_scheme orNone
on error.- Return type:
Finishes a default
Gio.AppInfo
lookup started byGio.AppInfo.get_default_for_uri_scheme_async
().If no
Gio.AppInfo
is found, then error will be set toGio.IOErrorEnum.NOT_FOUND
.New in version 2.74.
- classmethod get_fallback_for_type(content_type)[source]¶
- Parameters:
content_type (
str
) – the content type to find aGio.AppInfo
for- Returns:
GLib.List
ofGio.AppInfos
for given content_type orNone
on error.- Return type:
Gets a list of fallback
Gio.AppInfos
for a given content type, i.e. those applications which claim to support the given content type by MIME type subclassing and not directly.New in version 2.28.
- classmethod get_recommended_for_type(content_type)[source]¶
- Parameters:
content_type (
str
) – the content type to find aGio.AppInfo
for- Returns:
GLib.List
ofGio.AppInfos
for given content_type orNone
on error.- Return type:
Gets a list of recommended
Gio.AppInfos
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. the last one for whichGio.AppInfo.set_as_last_used_for_type
() has been called.New in version 2.28.
- classmethod launch_default_for_uri(uri, context)[source]¶
- Parameters:
uri (
str
) – the uri to showcontext (
Gio.AppLaunchContext
orNone
) – an optionalGio.AppLaunchContext
- Raises:
- Returns:
- Return type:
Utility function that launches the default application registered to handle the specified uri. Synchronous I/O is done on the uri to detect the type of the file if required.
The D-Bus–activated applications don’t have to be started if your application terminates too soon after this function. To prevent this, use
Gio.AppInfo.launch_default_for_uri_async
() instead.
- classmethod launch_default_for_uri_async(uri, context, cancellable, callback, *user_data)[source]¶
- Parameters:
uri (
str
) – the uri to showcontext (
Gio.AppLaunchContext
orNone
) – an optionalGio.AppLaunchContext
cancellable (
Gio.Cancellable
orNone
) – aGio.Cancellable
callback (
Gio.AsyncReadyCallback
orNone
) – aGio.AsyncReadyCallback
to call when the request is done
Async version of
Gio.AppInfo.launch_default_for_uri
().This version is useful if you are interested in receiving error information in the case where the application is sandboxed and the portal may present an application chooser dialog to the user.
This is also useful if you want to be sure that the D-Bus–activated applications are really started before termination and if you are interested in receiving error information from their activation.
New in version 2.50.
- classmethod launch_default_for_uri_finish(result)[source]¶
- Parameters:
result (
Gio.AsyncResult
) – aGio.AsyncResult
- Raises:
- Returns:
- Return type:
Finishes an asynchronous launch-default-for-uri operation.
New in version 2.50.
- classmethod reset_type_associations(content_type)[source]¶
- Parameters:
content_type (
str
) – a content type
Removes all changes to the type associations done by
Gio.AppInfo.set_as_default_for_type
(),Gio.AppInfo.set_as_default_for_extension
(),Gio.AppInfo.add_supports_type
() orGio.AppInfo.remove_supports_type
().New in version 2.20.
- add_supports_type(content_type)[source]¶
- Parameters:
content_type (
str
) – a string.- Raises:
- Returns:
- Return type:
Adds a content type to the application information to indicate the application is capable of opening files with the given content type.
- can_delete()[source]¶
-
Obtains the information whether the
Gio.AppInfo
can be deleted. SeeGio.AppInfo.delete
().New in version 2.20.
- can_remove_supports_type()[source]¶
- Returns:
True
if it is possible to remove supported content types from a given self,False
if not.- Return type:
Checks if a supported content type can be removed from an application.
- delete()[source]¶
-
Tries to delete a
Gio.AppInfo
.On some platforms, there may be a difference between user-defined
Gio.AppInfos
which can be deleted, and system-wide ones which cannot. SeeGio.AppInfo.can_delete
().New in version 2.20.
- dup()[source]¶
- Returns:
a duplicate of self.
- Return type:
Creates a duplicate of a
Gio.AppInfo
.
- equal(appinfo2)[source]¶
- Parameters:
appinfo2 (
Gio.AppInfo
) – the secondGio.AppInfo
.- Returns:
- Return type:
Checks if two
Gio.AppInfos
are equal.Note that the check *may not* compare each individual field, and only does an identity check. In case detecting changes in the contents is needed, program code must additionally compare relevant fields.
- get_commandline()[source]¶
- Returns:
a string containing the self's commandline, or
None
if this information is not available- Return type:
Gets the commandline with which the application will be started.
New in version 2.20.
- get_description()[source]¶
- Returns:
a string containing a description of the application self, or
None
if none.- Return type:
Gets a human-readable description of an installed application.
- get_display_name()[source]¶
- Returns:
the display name of the application for self, or the name if no display name is available.
- Return type:
Gets the display name of the application. The display name is often more descriptive to the user than the name itself.
New in version 2.24.
- get_executable()[source]¶
- Returns:
a string containing the self's application binaries name
- Return type:
Gets the executable’s name for the installed application.
This is intended to be used for debugging or labelling what program is going to be run. To launch the executable, use
Gio.AppInfo.launch
() and related functions, rather than spawning the return value from this function.
- get_icon()[source]¶
-
Gets the icon for the application.
- get_id()[source]¶
-
Gets the ID of an application. An id is a string that identifies the application. The exact format of the id is platform dependent. For instance, on Unix this is the desktop file id from the xdg menu specification.
Note that the returned ID may be
None
, depending on how the self has been constructed.
- get_name()[source]¶
- Returns:
the name of the application for self.
- Return type:
Gets the installed name of the application.
- get_supported_types()[source]¶
- Returns:
a list of content types.
- Return type:
[
str
]
Retrieves the list of content types that app_info claims to support. If this information is not provided by the environment, this function will return
None
. This function does not take in consideration associations added withGio.AppInfo.add_supports_type
(), but only those exported directly by the application.New in version 2.34.
- launch(files, context)[source]¶
- Parameters:
files ([
Gio.File
] orNone
) – aGLib.List
ofGio.File
objectscontext (
Gio.AppLaunchContext
orNone
) – aGio.AppLaunchContext
orNone
- Raises:
- Returns:
- Return type:
Launches the application. Passes files to the launched application as arguments, using the optional context to get information about the details of the launcher (like what screen it is on). On error, error will be set accordingly.
To launch the application without arguments pass a
None
files list.Note that even if the launch is successful the application launched can fail to start if it runs into problems during startup. There is no way to detect this.
Some URIs can be changed when passed through a
Gio.File
(for instance unsupported URIs with strange formats like mailto:), so if you have a textual URI you want to pass in as argument, consider usingGio.AppInfo.launch_uris
() instead.The launched application inherits the environment of the launching process, but it can be modified with
Gio.AppLaunchContext.setenv
() andGio.AppLaunchContext.unsetenv
().On UNIX, this function sets the
GIO_LAUNCHED_DESKTOP_FILE
environment variable with the path of the launched desktop file andGIO_LAUNCHED_DESKTOP_FILE_PID
to the process id of the launched process. This can be used to ignoreGIO_LAUNCHED_DESKTOP_FILE
, should it be inherited by further processes. TheDISPLAY
,XDG_ACTIVATION_TOKEN
andDESKTOP_STARTUP_ID
environment variables are also set, based on information provided in context.
- launch_uris(uris, context)[source]¶
- Parameters:
uris ([
str
] orNone
) – aGLib.List
containing URIs to launch.context (
Gio.AppLaunchContext
orNone
) – aGio.AppLaunchContext
orNone
- Raises:
- Returns:
- Return type:
Launches the application. This passes the uris to the launched application as arguments, using the optional context to get information about the details of the launcher (like what screen it is on). On error, error will be set accordingly. If the application only supports one URI per invocation as part of their command-line, multiple instances of the application will be spawned.
To launch the application without arguments pass a
None
uris list.Note that even if the launch is successful the application launched can fail to start if it runs into problems during startup. There is no way to detect this.
- launch_uris_async(uris, context, cancellable, callback, *user_data)[source]¶
- Parameters:
uris ([
str
] orNone
) – aGLib.List
containing URIs to launch.context (
Gio.AppLaunchContext
orNone
) – aGio.AppLaunchContext
orNone
cancellable (
Gio.Cancellable
orNone
) – aGio.Cancellable
callback (
Gio.AsyncReadyCallback
orNone
) – aGio.AsyncReadyCallback
to call when the request is done
Async version of
Gio.AppInfo.launch_uris
().The callback is invoked immediately after the application launch, but it waits for activation in case of D-Bus–activated applications and also provides extended error information for sandboxed applications, see notes for
Gio.AppInfo.launch_default_for_uri_async
().New in version 2.60.
- launch_uris_finish(result)[source]¶
- Parameters:
result (
Gio.AsyncResult
) – aGio.AsyncResult
- Raises:
- Returns:
- Return type:
Finishes a
Gio.AppInfo.launch_uris_async
() operation.New in version 2.60.
- remove_supports_type(content_type)[source]¶
- Parameters:
content_type (
str
) – a string.- Raises:
- Returns:
- Return type:
Removes a supported type from an application, if possible.
- set_as_default_for_extension(extension)[source]¶
- Parameters:
extension (
str
) – a string containing the file extension (without the dot).- Raises:
- Returns:
- Return type:
Sets the application as the default handler for the given file extension.
- set_as_default_for_type(content_type)[source]¶
- Parameters:
content_type (
str
) – the content type.- Raises:
- Returns:
- Return type:
Sets the application as the default handler for a given type.
- set_as_last_used_for_type(content_type)[source]¶
- Parameters:
content_type (
str
) – the content type.- Raises:
- Returns:
- Return type:
Sets the application as the last used application for a given type. This will make the application appear as first in the list returned by
Gio.AppInfo.get_recommended_for_type
(), regardless of the default application for that content type.
- should_show()[source]¶
-
Checks if the application info should be shown in menus that list available applications.
- supports_uris()[source]¶
-
Checks if the application supports reading files and directories from URIs.
- do_add_supports_type(content_type) virtual¶
- Parameters:
content_type (
str
) – a string.- Returns:
- Return type:
Adds a content type to the application information to indicate the application is capable of opening files with the given content type.
- do_can_delete() virtual¶
-
Obtains the information whether the
Gio.AppInfo
can be deleted. SeeGio.AppInfo.delete
().New in version 2.20.
- do_can_remove_supports_type() virtual¶
- Returns:
True
if it is possible to remove supported content types from a given appinfo,False
if not.- Return type:
Checks if a supported content type can be removed from an application.
- do_do_delete() virtual¶
-
Tries to delete a
Gio.AppInfo
.On some platforms, there may be a difference between user-defined
Gio.AppInfos
which can be deleted, and system-wide ones which cannot. SeeGio.AppInfo.can_delete
().New in version 2.20.
- do_dup() virtual¶
- Returns:
a duplicate of appinfo.
- Return type:
Creates a duplicate of a
Gio.AppInfo
.
- do_equal(appinfo2) virtual¶
- Parameters:
appinfo2 (
Gio.AppInfo
) – the secondGio.AppInfo
.- Returns:
- Return type:
Checks if two
Gio.AppInfos
are equal.Note that the check *may not* compare each individual field, and only does an identity check. In case detecting changes in the contents is needed, program code must additionally compare relevant fields.
- do_get_commandline() virtual¶
- Returns:
a string containing the appinfo's commandline, or
None
if this information is not available- Return type:
Gets the commandline with which the application will be started.
New in version 2.20.
- do_get_description() virtual¶
- Returns:
a string containing a description of the application appinfo, or
None
if none.- Return type:
Gets a human-readable description of an installed application.
- do_get_display_name() virtual¶
- Returns:
the display name of the application for appinfo, or the name if no display name is available.
- Return type:
Gets the display name of the application. The display name is often more descriptive to the user than the name itself.
New in version 2.24.
- do_get_executable() virtual¶
- Returns:
a string containing the appinfo's application binaries name
- Return type:
Gets the executable’s name for the installed application.
This is intended to be used for debugging or labelling what program is going to be run. To launch the executable, use
Gio.AppInfo.launch
() and related functions, rather than spawning the return value from this function.
- do_get_icon() virtual¶
-
Gets the icon for the application.
- do_get_id() virtual¶
-
Gets the ID of an application. An id is a string that identifies the application. The exact format of the id is platform dependent. For instance, on Unix this is the desktop file id from the xdg menu specification.
Note that the returned ID may be
None
, depending on how the appinfo has been constructed.
- do_get_name() virtual¶
- Returns:
the name of the application for appinfo.
- Return type:
Gets the installed name of the application.
- do_get_supported_types() virtual¶
- Returns:
a list of content types.
- Return type:
[
str
]
Retrieves the list of content types that app_info claims to support. If this information is not provided by the environment, this function will return
None
. This function does not take in consideration associations added withGio.AppInfo.add_supports_type
(), but only those exported directly by the application.New in version 2.34.
- do_launch(files, context) virtual¶
- Parameters:
files ([
Gio.File
] orNone
) – aGLib.List
ofGio.File
objectscontext (
Gio.AppLaunchContext
orNone
) – aGio.AppLaunchContext
orNone
- Returns:
- Return type:
Launches the application. Passes files to the launched application as arguments, using the optional context to get information about the details of the launcher (like what screen it is on). On error, error will be set accordingly.
To launch the application without arguments pass a
None
files list.Note that even if the launch is successful the application launched can fail to start if it runs into problems during startup. There is no way to detect this.
Some URIs can be changed when passed through a
Gio.File
(for instance unsupported URIs with strange formats like mailto:), so if you have a textual URI you want to pass in as argument, consider usingGio.AppInfo.launch_uris
() instead.The launched application inherits the environment of the launching process, but it can be modified with
Gio.AppLaunchContext.setenv
() andGio.AppLaunchContext.unsetenv
().On UNIX, this function sets the
GIO_LAUNCHED_DESKTOP_FILE
environment variable with the path of the launched desktop file andGIO_LAUNCHED_DESKTOP_FILE_PID
to the process id of the launched process. This can be used to ignoreGIO_LAUNCHED_DESKTOP_FILE
, should it be inherited by further processes. TheDISPLAY
,XDG_ACTIVATION_TOKEN
andDESKTOP_STARTUP_ID
environment variables are also set, based on information provided in context.
- do_launch_uris(uris, context) virtual¶
- Parameters:
uris ([
str
] orNone
) – aGLib.List
containing URIs to launch.context (
Gio.AppLaunchContext
orNone
) – aGio.AppLaunchContext
orNone
- Returns:
- Return type:
Launches the application. This passes the uris to the launched application as arguments, using the optional context to get information about the details of the launcher (like what screen it is on). On error, error will be set accordingly. If the application only supports one URI per invocation as part of their command-line, multiple instances of the application will be spawned.
To launch the application without arguments pass a
None
uris list.Note that even if the launch is successful the application launched can fail to start if it runs into problems during startup. There is no way to detect this.
- do_launch_uris_async(uris, context, cancellable, callback, *user_data) virtual¶
- Parameters:
uris ([
str
] orNone
) – aGLib.List
containing URIs to launch.context (
Gio.AppLaunchContext
orNone
) – aGio.AppLaunchContext
orNone
cancellable (
Gio.Cancellable
orNone
) – aGio.Cancellable
callback (
Gio.AsyncReadyCallback
orNone
) – aGio.AsyncReadyCallback
to call when the request is done
Async version of
Gio.AppInfo.launch_uris
().The callback is invoked immediately after the application launch, but it waits for activation in case of D-Bus–activated applications and also provides extended error information for sandboxed applications, see notes for
Gio.AppInfo.launch_default_for_uri_async
().New in version 2.60.
- do_launch_uris_finish(result) virtual¶
- Parameters:
result (
Gio.AsyncResult
) – aGio.AsyncResult
- Returns:
- Return type:
Finishes a
Gio.AppInfo.launch_uris_async
() operation.New in version 2.60.
- do_remove_supports_type(content_type) virtual¶
- Parameters:
content_type (
str
) – a string.- Returns:
- Return type:
Removes a supported type from an application, if possible.
- do_set_as_default_for_extension(extension) virtual¶
- Parameters:
extension (
str
) – a string containing the file extension (without the dot).- Returns:
- Return type:
Sets the application as the default handler for the given file extension.
- do_set_as_default_for_type(content_type) virtual¶
- Parameters:
content_type (
str
) – the content type.- Returns:
- Return type:
Sets the application as the default handler for a given type.
- do_set_as_last_used_for_type(content_type) virtual¶
- Parameters:
content_type (
str
) – the content type.- Returns:
- Return type:
Sets the application as the last used application for a given type. This will make the application appear as first in the list returned by
Gio.AppInfo.get_recommended_for_type
(), regardless of the default application for that content type.
- do_should_show() virtual¶
-
Checks if the application info should be shown in menus that list available applications.
- do_supports_files() virtual¶
-
Checks if the application accepts files as arguments.