Index: gnome-terminal.schemas.in
===================================================================
RCS file: /cvs/gnome/gnome-terminal/src/gnome-terminal.schemas.in,v
retrieving revision 1.39
diff -u -p -r1.39 gnome-terminal.schemas.in
--- gnome-terminal.schemas.in	17 Aug 2004 14:41:35 -0000	1.39
+++ gnome-terminal.schemas.in	4 Mar 2005 02:07:38 -0000
@@ -111,7 +111,19 @@
       </locale>
     </schema>
  
-
+    <schema>
+      <key>/schemas/apps/gnome-terminal/global/tab_position</key>
+      <applyto>/apps/gnome-terminal/global/tab_position</applyto>
+      <owner>gnome-terminal</owner>
+      <type>list</type>
+      <default>top</default>
+      <locale name="C">
+         <short>Position of the tabs.</short>
+         <long>
+	 Where to put the tabs. Possibilities are "top" and "bottom".
+         </long>
+      </locale>
+    </schema>
 
 
     <!-- Per-profile settings -->
Index: terminal-window.c
===================================================================
RCS file: /cvs/gnome/gnome-terminal/src/terminal-window.c,v
retrieving revision 1.106
diff -u -p -r1.106 terminal-window.c
--- terminal-window.c	28 Feb 2005 23:27:11 -0000	1.106
+++ terminal-window.c	4 Mar 2005 02:07:40 -0000
@@ -76,6 +76,7 @@ struct _TerminalWindowPrivate
   guint use_default_menubar_visibility : 1;
   guint use_mnemonics : 1;   /* config key value */
   guint using_mnemonics : 1; /* current menubar state */
+  char *tab_position;        /* tab position */
 
   /* FIXME we brokenly maintain this flag here instead of
    * being event-driven, because it's too annoying to be
@@ -1219,6 +1220,7 @@ terminal_window_new (GConfClient *conf)
   TerminalWindow *window;
   GError *err;
   gboolean use_mnemonics;
+  char *tab_position;
   
   window = g_object_new (TERMINAL_TYPE_WINDOW, NULL);
   g_signal_connect (G_OBJECT (window), "realize", G_CALLBACK (terminal_window_realized_callback), NULL);
@@ -1256,6 +1258,21 @@ terminal_window_new (GConfClient *conf)
       g_error_free (err);
     }
 
+  tab_position = gconf_client_get_string (window->priv->conf,
+                             CONF_GLOBAL_PREFIX"/tab_position",
+                             NULL);
+  
+  if (strcmp (tab_position, "bottom") == 0) 
+  {
+    gtk_notebook_set_tab_pos (GTK_NOTEBOOK (window->priv->notebook), GTK_POS_BOTTOM);
+    window->priv->tab_position = tab_position;
+  }
+  else
+  {
+    gtk_notebook_set_tab_pos (GTK_NOTEBOOK (window->priv->notebook), GTK_POS_TOP);
+    window->priv->tab_position = "top";
+  }
+
   reset_menubar_labels (window);
   reset_tab_menuitems (window);
   
