AppLaunchContext#

class AppLaunchContext(**properties: Any)#

Superclasses: Object

Integrating the launch with the launching application. This is used to handle for instance startup notification and launching the new application on the same screen as the launching window.

Constructors#

class AppLaunchContext
classmethod new() AppLaunchContext#

Creates a new application launch context. This is not normally used, instead you instantiate a subclass of this, such as `GdkAppLaunchContext <https://docs.gtk.org/gdk4/class.AppLaunchContext.html>`_.

Methods#

class AppLaunchContext
get_display(info: AppInfo, files: list[File]) str | None#

Gets the display string for the context. This is used to ensure new applications are started on the same display as the launching application, by setting the DISPLAY environment variable.

Parameters:
  • info – the app info

  • files – a list of File objects

get_environment() list[str]#

Gets the complete environment variable list to be passed to the child process when context is used to launch an application. This is a NULL-terminated array of strings, where each string has the form KEY=VALUE.

Added in version 2.32.

get_startup_notify_id(info: AppInfo | None = None, files: list[File] | None = None) str | None#

Initiates startup notification for the application and returns the XDG_ACTIVATION_TOKEN or DESKTOP_STARTUP_ID for the launched operation, if supported.

The returned token may be referred to equivalently as an ‘activation token’ (using Wayland terminology) or a ‘startup sequence ID’ (using X11 terminology). The two are interoperable.

Activation tokens are defined in the XDG Activation Protocol, and startup notification IDs are defined in the freedesktop.org Startup Notification Protocol.

Support for the XDG Activation Protocol was added in GLib 2.76. Since GLib 2.82 info and files can be NULL. If that’s not supported by the backend, the returned token will be NULL.

Parameters:
  • info – the app info

  • files – a list of File objects

launch_failed(startup_notify_id: str) None#

Called when an application has failed to launch, so that it can cancel the application startup notification started in get_startup_notify_id.

Parameters:

startup_notify_id – the startup notification id that was returned by get_startup_notify_id.

setenv(variable: str, value: str) None#

Arranges for variable to be set to value in the child’s environment when context is used to launch an application.

Added in version 2.32.

Parameters:
  • variable – the environment variable to set

  • value – the value for to set the variable to.

unsetenv(variable: str) None#

Arranges for variable to be unset in the child’s environment when context is used to launch an application.

Added in version 2.32.

Parameters:

variable – the environment variable to remove

Signals#

class AppLaunchContext.signals
launch_failed(startup_notify_id: str) None#

The type of the None singleton.

Added in version 2.36.

Parameters:

startup_notify_id – the startup notification id for the failed launch

launch_started(info: AppInfo, platform_data: Variant | None = None) None#

The type of the None singleton.

Added in version 2.72.

Parameters:
  • info – the AppInfo that is about to be launched

  • platform_data – additional platform-specific data for this launch

launched(info: AppInfo, platform_data: Variant) None#

The type of the None singleton.

Added in version 2.36.

Parameters:
  • info – the AppInfo that was just launched

  • platform_data – additional platform-specific data for this launch

Virtual Methods#

class AppLaunchContext
do_get_display(info: AppInfo, files: list[File]) str | None#

Gets the display string for the context. This is used to ensure new applications are started on the same display as the launching application, by setting the DISPLAY environment variable.

Parameters:
  • info – the app info

  • files – a list of File objects

do_get_startup_notify_id(info: AppInfo | None = None, files: list[File] | None = None) str | None#

Initiates startup notification for the application and returns the XDG_ACTIVATION_TOKEN or DESKTOP_STARTUP_ID for the launched operation, if supported.

The returned token may be referred to equivalently as an ‘activation token’ (using Wayland terminology) or a ‘startup sequence ID’ (using X11 terminology). The two are interoperable.

Activation tokens are defined in the XDG Activation Protocol, and startup notification IDs are defined in the freedesktop.org Startup Notification Protocol.

Support for the XDG Activation Protocol was added in GLib 2.76. Since GLib 2.82 info and files can be NULL. If that’s not supported by the backend, the returned token will be NULL.

Parameters:
  • info – the app info

  • files – a list of File objects

do_launch_failed(startup_notify_id: str) None#

Called when an application has failed to launch, so that it can cancel the application startup notification started in get_startup_notify_id.

Parameters:

startup_notify_id – the startup notification id that was returned by get_startup_notify_id.

do_launch_started(info: AppInfo, platform_data: Variant) None#

The type of the None singleton.

Parameters:
  • info

  • platform_data

do_launched(info: AppInfo, platform_data: Variant) None#

The type of the None singleton.

Parameters:
  • info

  • platform_data

Fields#

class AppLaunchContext
parent_instance#
priv#