Author: benny
Date: 2007-07-20 17:08:24 +0000 (Fri, 20 Jul 2007)
New Revision: 25930

Modified:
   terminal/trunk/ChangeLog
   terminal/trunk/terminal/terminal-screen.c
Log:
2007-07-20      Benedikt Meurer <[EMAIL PROTECTED]>

        * terminal/terminal-screen.c(terminal_screen_get_child_environment):
          Use the id of the toplevel window instead of the scrolled window
          for the $WINDOWID environment variable (Bug #3341).




Modified: terminal/trunk/ChangeLog
===================================================================
--- terminal/trunk/ChangeLog    2007-07-20 16:54:48 UTC (rev 25929)
+++ terminal/trunk/ChangeLog    2007-07-20 17:08:24 UTC (rev 25930)
@@ -1,5 +1,11 @@
 2007-07-20     Benedikt Meurer <[EMAIL PROTECTED]>
 
+       * terminal/terminal-screen.c(terminal_screen_get_child_environment):
+         Use the id of the toplevel window instead of the scrolled window
+         for the $WINDOWID environment variable (Bug #3341).
+
+2007-07-20     Benedikt Meurer <[EMAIL PROTECTED]>
+
        * helpers/, icons/, terminal/, Makefile.am, NEWS, Terminal.ui,
          configure.in.in, doc/: Drop the preferred application handling
          from Terminal and use the Xfce preferred application directly.

Modified: terminal/trunk/terminal/terminal-screen.c
===================================================================
--- terminal/trunk/terminal/terminal-screen.c   2007-07-20 16:54:48 UTC (rev 
25929)
+++ terminal/trunk/terminal/terminal-screen.c   2007-07-20 17:08:24 UTC (rev 
25930)
@@ -461,6 +461,7 @@
 terminal_screen_get_child_environment (TerminalScreen *screen)
 {
   extern gchar **environ;
+  GtkWidget     *toplevel;
   gchar         *display_name;
   gchar        **result;
   gchar        **p;
@@ -501,14 +502,16 @@
       g_free (term);
     }
 
-  if (GTK_WIDGET_REALIZED (screen->terminal))
+  /* determine the toplevel widget */
+  toplevel = gtk_widget_get_toplevel (GTK_WIDGET (screen));
+  if (toplevel != NULL && GTK_WIDGET_REALIZED (toplevel))
     {
 #ifdef GDK_WINDOWING_X11
-      result[n++] = g_strdup_printf ("WINDOWID=%ld", (glong) 
GDK_WINDOW_XWINDOW (screen->terminal->window));
+      result[n++] = g_strdup_printf ("WINDOWID=%ld", (glong) 
GDK_WINDOW_XWINDOW (toplevel->window));
 #endif
 
       /* determine the DISPLAY value for the command */
-      display_name = gdk_screen_make_display_name (gtk_widget_get_screen 
(screen->terminal));
+      display_name = gdk_screen_make_display_name (gtk_widget_get_screen 
(toplevel));
       result[n++] = g_strdup_printf ("DISPLAY=%s", display_name);
       g_free (display_name);
     }

_______________________________________________
Xfce4-commits mailing list
[email protected]
http://foo-projects.org/mailman/listinfo/xfce4-commits

Reply via email to