:right-sidebar: True AppLaunchContext =================================================================== .. currentmodule:: gi.repository.Gdk .. class:: AppLaunchContext(**properties: ~typing.Any) :no-contents-entry: Superclasses: :class:`~gi.repository.Gio.AppLaunchContext`, :class:`~gi.repository.GObject.Object` ``GdkAppLaunchContext`` handles launching an application in a graphical context. It is an implementation of ``GAppLaunchContext`` that provides startup notification and allows to launch applications on a specific workspace. Launching an application -------------------------------------------------------------------------------- .. code-block:: c :dedent: GdkAppLaunchContext *context; context = gdk_display_get_app_launch_context (display); gdk_app_launch_context_set_timestamp (gdk_event_get_time (event)); if (!g_app_info_launch_default_for_uri ("http://www.gtk.org", context, &error)) g_warning ("Launching failed: %s\n", error->message); g_object_unref (context); Methods ------- .. rst-class:: interim-class .. class:: AppLaunchContext :no-index: .. method:: get_display() -> ~gi.repository.Gdk.Display Gets the ``GdkDisplay`` that ``context`` is for. .. method:: set_desktop(desktop: int) -> None Sets the workspace on which applications will be launched. This only works when running under a window manager that supports multiple workspaces, as described in the `Extended Window Manager Hints `__\. Specifically this sets the ``_NET_WM_DESKTOP`` property described in that spec. This only works when using the X11 backend. When the workspace is not specified or ``desktop`` is set to -1, it is up to the window manager to pick one, typically it will be the current workspace. :param desktop: the number of a workspace, or -1 .. method:: set_icon(icon: ~gi.repository.Gio.Icon | None = None) -> None Sets the icon for applications that are launched with this context. Window Managers can use this information when displaying startup notification. See also :obj:`~gi.repository.Gdk.AppLaunchContext.set_icon_name`\. :param icon: a ``GIcon`` .. method:: set_icon_name(icon_name: str | None = None) -> None Sets the icon for applications that are launched with this context. The ``icon_name`` will be interpreted in the same way as the Icon field in desktop files. See also :obj:`~gi.repository.Gdk.AppLaunchContext.set_icon`\. If both ``icon`` and ``icon_name`` are set, the ``icon_name`` takes priority. If neither ``icon`` or ``icon_name`` is set, the icon is taken from either the file that is passed to launched application or from the ``GAppInfo`` for the launched application itself. :param icon_name: an icon name .. method:: set_timestamp(timestamp: int) -> None Sets the timestamp of ``context``\. The timestamp should ideally be taken from the event that triggered the launch. Window managers can use this information to avoid moving the focus to the newly launched application when the user is busy typing in another window. This is also known as 'focus stealing prevention'. :param timestamp: a timestamp Properties ---------- .. rst-class:: interim-class .. class:: AppLaunchContext :no-index: .. attribute:: props.display :type: ~gi.repository.Gdk.Display The type of the None singleton.