GDK Reference Manual | ||||
---|---|---|---|---|
#include <gdk/gdk.h> typedef GdkAppLaunchContext; GdkAppLaunchContext* gdk_app_launch_context_new (void); void gdk_app_launch_context_set_display (GdkAppLaunchContext *context, GdkDisplay *display); void gdk_app_launch_context_set_screen (GdkAppLaunchContext *context, GdkScreen *screen); void gdk_app_launch_context_set_desktop (GdkAppLaunchContext *context, gint desktop); void gdk_app_launch_context_set_timestamp (GdkAppLaunchContext *context, guint32 timestamp); void gdk_app_launch_context_set_icon (GdkAppLaunchContext *context, GIcon *icon); void gdk_app_launch_context_set_icon_name (GdkAppLaunchContext *context, const char *icon_name);
GdkAppLaunchContext is an implementation of GAppLaunchContext that handles launching an application in a graphical context. It provides startup notification and allows to launch applications on a specific screen or workspace.
Example 9. Launching an application
GdkAppLaunchContext *context; context = gdk_app_launch_context_new (); gdk_app_launch_context_set_screen (my_screen); gdk_app_launch_context_set_timestamp (event->time); 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);
GdkAppLaunchContext* gdk_app_launch_context_new (void);
Creates a new GdkAppLaunchContext.
Returns : | a new GdkAppLaunchContext |
Since 2.14
void gdk_app_launch_context_set_display (GdkAppLaunchContext *context, GdkDisplay *display);
Sets the display on which applications will be launched when
using this context. See also gdk_app_launch_context_set_screen()
.
context : |
a GdkAppLaunchContext |
display : |
a GdkDisplay |
Since 2.14
void gdk_app_launch_context_set_screen (GdkAppLaunchContext *context, GdkScreen *screen);
Sets the screen on which applications will be launched when
using this context. See also gdk_app_launch_context_set_display()
.
If both screen
and display
are set, the screen
takes priority.
If neither screen
or display
are set, the default screen and
display are used.
context : |
a GdkAppLaunchContext |
screen : |
a GdkScreen |
Since 2.14
void gdk_app_launch_context_set_desktop (GdkAppLaunchContext *context, gint desktop);
Sets the workspace on which applications will be launched when using this context when running under a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints.
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.
context : |
a GdkAppLaunchContext |
desktop : |
the number of a workspace, or -1 |
Since 2.14
void gdk_app_launch_context_set_timestamp (GdkAppLaunchContext *context, guint32 timestamp);
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'.
context : |
a GdkAppLaunchContext |
timestamp : |
a timestamp |
Since 2.14
void gdk_app_launch_context_set_icon (GdkAppLaunchContext *context, GIcon *icon);
Sets the icon for applications that are launched with this
context. See also gdk_app_launch_context_set_icon_name()
.
context : |
a GdkAppLaunchContext |
icon : |
a GIcon, or NULL
|
Since 2.14
void gdk_app_launch_context_set_icon_name (GdkAppLaunchContext *context, const char *icon_name);
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 gdk_app_launch_context_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.
context : |
a GdkAppLaunchContext |
icon_name : |
an icon name, or NULL
|
Since 2.14