Author: Alexander Larsson <alexl@redhat.com>
*/
-#include <config.h>
-
-#include <string.h>
-#include <unistd.h>
+#include "config.h"
#include <glib.h>
-#include <gio/gfileicon.h>
-#include <gio/gthemedicon.h>
#include "gdkapplaunchcontext.h"
#include "gdkinternals.h"
context->priv->workspace = -1;
}
+/**
+ * gdk_app_launch_context_set_display:
+ * @context: a #GdkAppLaunchContext
+ * @display: a #GdkDisplay
+ *
+ * Sets the display on which applications will be launched when
+ * using this context. See also gdk_app_launch_context_set_screen().
+ *
+ * Since: 2.14
+ */
void
gdk_app_launch_context_set_display (GdkAppLaunchContext *context,
GdkDisplay *display)
if (display)
context->priv->display = g_object_ref (display);
}
+
+/**
+ * gdk_app_launch_context_set_screen:
+ * @context: a #GdkAppLaunchContext
+ * @screen: a #GdkScreen
+ *
+ * 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.
+ *
+ * Since: 2.14
+ */
void
gdk_app_launch_context_set_screen (GdkAppLaunchContext *context,
GdkScreen *screen)
context->priv->screen = g_object_ref (screen);
}
-
+/**
+ * gdk_app_launch_context_set_desktop:
+ * @context: a #GdkAppLaunchContext
+ * @desktop: the number of a workspace, or -1
+ *
+ * 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
+ * <ulink url="http://www.freedesktop.org/Standards/wm-spec">Extended
+ * Window Manager Hints</ulink>.
+ *
+ * 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.
+ *
+ * Since: 2.14
+ */
void
gdk_app_launch_context_set_desktop (GdkAppLaunchContext *context,
gint desktop)
context->priv->workspace = desktop;
}
+/**
+ * gdk_app_launch_context_set_timestamp:
+ * @context: a #GdkAppLaunchContext
+ * @timestamp: a 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'.
+ *
+ * Since: 2.14
+ */
void
gdk_app_launch_context_set_timestamp (GdkAppLaunchContext *context,
guint32 timestamp)
context->priv->timestamp = timestamp;
}
+/**
+ * gdk_app_launch_context_set_icon:
+ * @context: a #GdkAppLaunchContext
+ * @icon: a #GIcon, or %NULL
+ *
+ * Sets the icon for applications that are launched with this
+ * context. See also gdk_app_launch_context_set_icon_name().
+ *
+ * Since: 2.14
+ */
void
gdk_app_launch_context_set_icon (GdkAppLaunchContext *context,
GIcon *icon)
context->priv->icon = g_object_ref (icon);
}
+/**
+ * gdk_app_launch_context_set_icon_name:
+ * @context: a #GdkAppLaunchContext
+ * @icon_name: an icon name, or %NULL
+ *
+ * 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.
+ *
+ * Since: 2.14
+ */
void
gdk_app_launch_context_set_icon_name (GdkAppLaunchContext *context,
const char *icon_name)
context->priv->icon_name = g_strdup (icon_name);
}
+/**
+ * gdk_app_launch_context_new:
+ *
+ * Creates a new #GdkAppLaunchContext.
+ *
+ * Returns: a new #GdkAppLaunchContext
+ *
+ * Since: 2.14
+ */
GdkAppLaunchContext *
gdk_app_launch_context_new (void)
{
GdkAppLaunchContext *context;
context = g_object_new (gdk_app_launch_context_get_type (), NULL);
+
return context;
}