]> Pileus Git - ~andy/gtk/blobdiff - gdk/gdkapplaunchcontext.c
2.13.6
[~andy/gtk] / gdk / gdkapplaunchcontext.c
index d63a2fc524a74b2810b7dbc7a25e50ed1b8714ec..15a013b768a780ba6f066fe97b0c91414b6155bb 100644 (file)
    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"
@@ -108,6 +103,16 @@ gdk_app_launch_context_init (GdkAppLaunchContext *context)
   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)
@@ -121,6 +126,21 @@ gdk_app_launch_context_set_display (GdkAppLaunchContext *context,
   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)
@@ -135,7 +155,23 @@ gdk_app_launch_context_set_screen (GdkAppLaunchContext *context,
     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)
@@ -143,6 +179,21 @@ gdk_app_launch_context_set_desktop (GdkAppLaunchContext *context,
   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)
@@ -150,6 +201,16 @@ gdk_app_launch_context_set_timestamp (GdkAppLaunchContext *context,
   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)
@@ -164,6 +225,22 @@ gdk_app_launch_context_set_icon (GdkAppLaunchContext *context,
     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)
@@ -172,12 +249,22 @@ gdk_app_launch_context_set_icon_name (GdkAppLaunchContext *context,
   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;
 }