Index: src/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
--- src/gnome-terminal.schemas.in	17 Aug 2004 14:41:35 -0000	1.39
+++ src/gnome-terminal.schemas.in	8 Feb 2005 12:11:02 -0000
@@ -110,6 +110,20 @@
          </long>
       </locale>
     </schema>
+
+    <schema>
+      <key>/schemas/apps/gnome-terminal/global/always_show_tabs</key>
+      <applyto>/apps/gnome-terminal/global/always_show_tabs</applyto>
+      <owner>gnome-terminal</owner>
+      <type>bool</type>
+      <default>false</default>
+      <locale name="C">
+         <short>Show tabs even if there is only one tab opened</short>
+         <long>
+	 Show notebook's tabs even if there in only one tab opened.
+         </long>
+      </locale>
+    </schema>
  
 
 
Index: src/terminal-window.c
===================================================================
RCS file: /cvs/gnome/gnome-terminal/src/terminal-window.c,v
retrieving revision 1.105
diff -u -p -r1.105 terminal-window.c
--- src/terminal-window.c	23 Nov 2004 05:36:26 -0000	1.105
+++ src/terminal-window.c	8 Feb 2005 12:11:04 -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 */
+  guint always_show_tabs : 1;
 
   /* FIXME we brokenly maintain this flag here instead of
    * being event-driven, because it's too annoying to be
@@ -802,6 +803,8 @@ terminal_window_init (TerminalWindow *wi
   /* force gtk to construct its GtkClipboard; otherwise our UI is very slow the first time we need it */
   window->priv->clipboard = gtk_clipboard_get_for_display (gtk_widget_get_display (GTK_WIDGET (window)), GDK_NONE);
 
+  window->priv->always_show_tabs = FALSE;
+
   error = NULL;
   menus_have_icons = gconf_client_get_bool (client, "/desktop/gnome/interface/menus_have_icons", &error);
   if (error)
@@ -1218,7 +1221,7 @@ terminal_window_new (GConfClient *conf)
 {
   TerminalWindow *window;
   GError *err;
-  gboolean use_mnemonics;
+  gboolean use_mnemonics, always_show_tabs;
   
   window = g_object_new (TERMINAL_TYPE_WINDOW, NULL);
   g_signal_connect (G_OBJECT (window), "realize", G_CALLBACK (terminal_window_realized_callback), NULL);
@@ -1240,7 +1243,22 @@ terminal_window_new (GConfClient *conf)
     {
       window->priv->use_mnemonics = use_mnemonics;
     }
-  
+
+  err = NULL;
+  always_show_tabs = gconf_client_get_bool (window->priv->conf,
+					    CONF_GLOBAL_PREFIX"/always_show_tabs",
+					    &err);
+  if (err)
+    {
+      g_printerr (_("There was an error loading config value for whether to always show tabs. (%s)\n"),
+                  err->message);
+      g_error_free (err);
+    }
+  else
+    {
+      window->priv->always_show_tabs = always_show_tabs;
+    }
+
   err = NULL;
   window->priv->notify_id =
     gconf_client_notify_add (window->priv->conf,
@@ -1266,11 +1284,13 @@ static void
 update_notebook (TerminalWindow *window)
 {
   gboolean single;
+  gboolean show_tab;
 
   single = g_list_length (window->priv->terms) == 1;
+  show_tab = window->priv->always_show_tabs == 1;
     
-  gtk_notebook_set_show_border (GTK_NOTEBOOK (window->priv->notebook), !single);
-  gtk_notebook_set_show_tabs (GTK_NOTEBOOK (window->priv->notebook), !single);
+  gtk_notebook_set_show_border (GTK_NOTEBOOK (window->priv->notebook), !single || show_tab);
+  gtk_notebook_set_show_tabs (GTK_NOTEBOOK (window->priv->notebook), !single || show_tab);
 }
 
 static void
@@ -2058,6 +2078,15 @@ config_change_notify (GConfClient *clien
           window->priv->use_mnemonics = gconf_value_get_bool (val);
           reset_menubar_labels (window);
         }
+    }
+  else if (strcmp (gconf_entry_get_key (entry),
+		   CONF_GLOBAL_PREFIX"/always_show_tabs") == 0)
+    {
+      if (val && val->type == GCONF_VALUE_BOOL)
+	{
+	  window->priv->always_show_tabs = gconf_value_get_bool (val);
+	  update_notebook (window);
+	}
     }
 }
 
