]> Pileus Git - ~andy/gtk/commitdiff
Remove gdk_spawn functions
authorMatthias Clasen <mclasen@redhat.com>
Wed, 15 Dec 2010 13:06:44 +0000 (08:06 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 21 Dec 2010 17:07:00 +0000 (12:07 -0500)
These functions were trivial g_spawn wrappers in all backends
except for X11, and they can be easily replaced by
g_app_info_create_for_commandline + GdkAppLaunchContext.

docs/reference/gdk/gdk3-sections.txt
gdk/Makefile.am
gdk/gdk.c
gdk/gdk.h
gdk/gdk.symbols
gdk/gdkspawn.h [deleted file]
gdk/x11/Makefile.am
gdk/x11/gdkspawn-x11.c [deleted file]
gtk/gtkprintoperation-unix.c

index 02a3608ca08d2e97941f1add65b6383e9bb94e27..dc5db53d30a540bbd6bb99d2aa3f809d81abb0f7 100644 (file)
@@ -217,10 +217,6 @@ gdk_screen_get_resolution
 gdk_screen_set_resolution
 gdk_screen_get_active_window
 gdk_screen_get_window_stack
-<SUBSECTION Spawning>
-gdk_spawn_on_screen
-gdk_spawn_on_screen_with_pipes
-gdk_spawn_command_line_on_screen
 
 <SUBSECTION Standard>
 GDK_SCREEN
index 2545e29ff4b8d34afc558b7c2c24f8b81610bfa0..0e980493fecbde2e85768b0c0fd4757ce7523910 100644 (file)
@@ -84,7 +84,6 @@ gdk_public_h_sources =                                \
        gdkrgba.h                               \
        gdkscreen.h                             \
        gdkselection.h                          \
-       gdkspawn.h                              \
        gdktestutils.h                          \
        gdkthreads.h                            \
        gdktypes.h                              \
@@ -210,7 +209,6 @@ x11_introspection_files =           \
        x11/gdkscreen-x11.c             \
        x11/gdkselection-x11.c          \
        x11/gdksettings.c               \
-       x11/gdkspawn-x11.c              \
        x11/gdktestutils-x11.c          \
        x11/gdkvisual-x11.c             \
        x11/gdkwindow-x11.c             \
index 5ca6326fa94d3505700d1fd774be8f847e01f022..7af913430906fd39cc0f9041152dc7a25e75cb01 100644 (file)
--- a/gdk/gdk.c
+++ b/gdk/gdk.c
@@ -218,8 +218,7 @@ gdk_pre_parse_libgtk_only (void)
   if (getenv ("GDK_NATIVE_WINDOWS"))
     {
       _gdk_native_windows = TRUE;
-      /* Ensure that this is not propagated
-        to spawned applications */
+      /* Ensure that this is not propagated to spawned applications */
       g_unsetenv ("GDK_NATIVE_WINDOWS");
     }
 
index 938961e35f1bd260c2581dff646acb9ca504cf1d..2b849695d696e6c6e849e0d522a3a4fb0f18f7d5 100644 (file)
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -51,7 +51,6 @@
 #include <gdk/gdkrgba.h>
 #include <gdk/gdkscreen.h>
 #include <gdk/gdkselection.h>
-#include <gdk/gdkspawn.h>
 #include <gdk/gdktestutils.h>
 #include <gdk/gdkthreads.h>
 #include <gdk/gdktypes.h>
index ac826df829aaf1cf58f570c1d7b1d1922b40828e..cf8c2a1d7828803520b283c655ccdd3c271f772a 100644 (file)
@@ -324,9 +324,6 @@ gdk_set_program_class
 gdk_set_show_events
 gdk_setting_action_get_type G_GNUC_CONST
 gdk_setting_get
-gdk_spawn_command_line_on_screen
-gdk_spawn_on_screen
-gdk_spawn_on_screen_with_pipes
 gdk_status_get_type G_GNUC_CONST
 gdk_string_to_compound_text
 gdk_string_to_compound_text_for_display
diff --git a/gdk/gdkspawn.h b/gdk/gdkspawn.h
deleted file mode 100644 (file)
index cb7a2ea..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2003 Sun Microsystems Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- *
- * Authors: Mark McLoughlin <mark@skynet.ie>
- */
-
-#if !defined (__GDK_H_INSIDE__) && !defined (GDK_COMPILATION)
-#error "Only <gdk/gdk.h> can be included directly."
-#endif
-
-#ifndef __GDK_SPAWN_H__
-#define __GDK_SPAWN_H__
-
-#include <gdk/gdkscreen.h>
-
-G_BEGIN_DECLS
-
-gboolean gdk_spawn_on_screen              (GdkScreen             *screen,
-                                          const gchar           *working_directory,
-                                          gchar                **argv,
-                                          gchar                **envp,
-                                          GSpawnFlags            flags,
-                                          GSpawnChildSetupFunc   child_setup,
-                                          gpointer               user_data,
-                                          GPid                  *child_pid,
-                                          GError               **error);
-
-gboolean gdk_spawn_on_screen_with_pipes   (GdkScreen             *screen,
-                                          const gchar           *working_directory,
-                                          gchar                **argv,
-                                          gchar                **envp,
-                                          GSpawnFlags            flags,
-                                          GSpawnChildSetupFunc   child_setup,
-                                          gpointer               user_data,
-                                          GPid                  *child_pid,
-                                          gint                  *standard_input,
-                                          gint                  *standard_output,
-                                          gint                  *standard_error,
-                                          GError               **error);
-
-gboolean gdk_spawn_command_line_on_screen (GdkScreen             *screen,
-                                          const gchar           *command_line,
-                                          GError               **error);
-
-G_END_DECLS
-
-#endif /* __GDK_SPAWN_H__ */
index 6c07ff4aed76631748491e7720a58c0a21301b3e..d05a03355c955ac046272723a22df80dd2148789 100644 (file)
@@ -44,7 +44,6 @@ libgdk_x11_la_SOURCES =       \
        gdkscreen-x11.c         \
        gdkscreen-x11.h         \
        gdkselection-x11.c      \
-       gdkspawn-x11.c          \
        gdktestutils-x11.c      \
        gdkvisual-x11.c         \
        gdkwindow-x11.c         \
diff --git a/gdk/x11/gdkspawn-x11.c b/gdk/x11/gdkspawn-x11.c
deleted file mode 100644 (file)
index 7f97b4e..0000000
+++ /dev/null
@@ -1,214 +0,0 @@
-/*
- * Copyright (C) 2003 Sun Microsystems Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- *
- * Authors: Mark McLoughlin <mark@skynet.ie>
- */
-
-#include "config.h"
-
-#include "gdkspawn.h"
-
-#include <glib.h>
-#include <string.h>
-#include <stdlib.h>
-
-
-typedef struct {
-  char *display;
-  GSpawnChildSetupFunc child_setup;
-  gpointer user_data;
-} UserChildSetup;
-
-/*
- * Set the DISPLAY variable, and then call the user-specified child setup
- * function.  This is required so that applications can use gdk_spawn_* and 
- * call putenv() in their child_setup functions.
- */
-static void
-set_environment (gpointer user_data)
-{
-  UserChildSetup *setup = user_data;
-  
-  g_setenv ("DISPLAY", setup->display, TRUE);
-  
-  if (setup->child_setup)
-    setup->child_setup (setup->user_data);
-}
-
-/**
- * gdk_spawn_on_screen:
- * @screen: a #GdkScreen
- * @working_directory: child's current working directory, or %NULL to 
- *   inherit parent's
- * @argv: child's argument vector
- * @envp: child's environment, or %NULL to inherit parent's
- * @flags: flags from #GSpawnFlags
- * @child_setup: function to run in the child just before exec()
- * @user_data: user data for @child_setup
- * @child_pid: return location for child process ID, or %NULL
- * @error: return location for error
- *
- * Like g_spawn_async(), except the child process is spawned in such
- * an environment that on calling gdk_display_open() it would be
- * returned a #GdkDisplay with @screen as the default screen.
- *
- * This is useful for applications which wish to launch an application
- * on a specific screen.
- *
- * Return value: %TRUE on success, %FALSE if error is set
- *
- * Since: 2.4
- **/
-gboolean
-gdk_spawn_on_screen (GdkScreen             *screen,
-                    const gchar           *working_directory,
-                    gchar                **argv,
-                    gchar                **envp,
-                    GSpawnFlags            flags,
-                    GSpawnChildSetupFunc   child_setup,
-                    gpointer               user_data,
-                    GPid                  *child_pid,
-                    GError               **error)
-{
-  UserChildSetup setup_data;
-
-  g_return_val_if_fail (GDK_IS_SCREEN (screen), FALSE);
-
-  setup_data.display = gdk_screen_make_display_name (screen);
-  setup_data.child_setup = child_setup;
-  setup_data.user_data = user_data;
-
-  return g_spawn_async (working_directory,
-                         argv,
-                         envp,
-                         flags,
-                         set_environment,
-                         &setup_data,
-                         child_pid,
-                         error);
-}
-
-/**
- * gdk_spawn_on_screen_with_pipes:
- * @screen: a #GdkScreen
- * @working_directory: child's current working directory, or %NULL to 
- *   inherit parent's
- * @argv: child's argument vector
- * @envp: child's environment, or %NULL to inherit parent's
- * @flags: flags from #GSpawnFlags
- * @child_setup: function to run in the child just before exec()
- * @user_data: user data for @child_setup
- * @child_pid: return location for child process ID, or %NULL
- * @standard_input: return location for file descriptor to write to 
- *   child's stdin, or %NULL
- * @standard_output: return location for file descriptor to read child's 
- *   stdout, or %NULL
- * @standard_error: return location for file descriptor to read child's 
- *   stderr, or %NULL
- * @error: return location for error
- *
- * Like g_spawn_async_with_pipes(), except the child process is
- * spawned in such an environment that on calling gdk_display_open()
- * it would be returned a #GdkDisplay with @screen as the default
- * screen.
- *
- * This is useful for applications which wish to launch an application
- * on a specific screen.
- *
- * Return value: %TRUE on success, %FALSE if an error was set
- *
- * Since: 2.4
- **/
-gboolean
-gdk_spawn_on_screen_with_pipes (GdkScreen            *screen,
-                               const gchar          *working_directory,
-                               gchar               **argv,
-                               gchar               **envp,
-                               GSpawnFlags           flags,
-                               GSpawnChildSetupFunc  child_setup,
-                               gpointer              user_data,
-                               GPid                 *child_pid,
-                               gint                 *standard_input,
-                               gint                 *standard_output,
-                               gint                 *standard_error,
-                               GError              **error)
-{
-  UserChildSetup setup_data;
-
-  g_return_val_if_fail (GDK_IS_SCREEN (screen), FALSE);
-
-  setup_data.display = gdk_screen_make_display_name (screen);
-  setup_data.child_setup = child_setup;
-  setup_data.user_data = user_data;
-
-  return g_spawn_async_with_pipes (working_directory,
-                                    argv,
-                                    envp,
-                                    flags,
-                                    set_environment,
-                                    &setup_data,
-                                    child_pid,
-                                    standard_input,
-                                    standard_output,
-                                    standard_error,
-                                    error);
-
-}
-
-/**
- * gdk_spawn_command_line_on_screen:
- * @screen: a #GdkScreen
- * @command_line: a command line
- * @error: return location for errors
- *
- * Like g_spawn_command_line_async(), except the child process is
- * spawned in such an environment that on calling gdk_display_open()
- * it would be returned a #GdkDisplay with @screen as the default
- * screen.
- *
- * This is useful for applications which wish to launch an application
- * on a specific screen.
- *
- * Return value: %TRUE on success, %FALSE if error is set.
- *
- * Since: 2.4
- **/
-gboolean
-gdk_spawn_command_line_on_screen (GdkScreen    *screen,
-                                 const gchar  *command_line,
-                                 GError      **error)
-{
-  gchar    **argv = NULL;
-  gboolean   retval;
-
-  g_return_val_if_fail (command_line != NULL, FALSE);
-
-  if (!g_shell_parse_argv (command_line,
-                          NULL, &argv,
-                          error))
-    return FALSE;
-
-  retval = gdk_spawn_on_screen (screen,
-                               NULL, argv, NULL,
-                               G_SPAWN_SEARCH_PATH,
-                               NULL, NULL, NULL,
-                               error);
-  g_strfreev (argv);
-
-  return retval;
-}
index 1e3643002b6c384edcdc93dfd0ab2fd0172ee941..2431371f0c94be9e0e869d1f86568e438ba143b3 100644 (file)
@@ -202,7 +202,7 @@ _gtk_print_operation_platform_backend_launch_preview (GtkPrintOperation *op,
                                                      const gchar       *filename)
 {
   GAppInfo *appinfo;
-  GAppLaunchContext *context;
+  GdkAppLaunchContext *context;
   gchar *cmd;
   gchar *preview_cmd;
   GtkSettings *settings;
@@ -291,8 +291,8 @@ _gtk_print_operation_platform_backend_launch_preview (GtkPrintOperation *op,
     goto out;
 
   context = gdk_display_get_app_launch_context (gdk_screen_get_display (screen));
-  gdk_app_launch_context_set_screen (GDK_APP_LAUNCH_CONTEXT (context), screen);
-  g_app_info_launch (appinfo, NULL, context, &error);
+  gdk_app_launch_context_set_screen (context, screen);
+  g_app_info_launch (appinfo, NULL, G_APP_LAUNCH_CONTEXT (context), &error);
 
   g_object_unref (context);
   g_object_unref (appinfo);