diff --git a/shell/rb-shell.c b/shell/rb-shell.c
index 092a63f..9cf73a5 100644
--- a/shell/rb-shell.c
+++ b/shell/rb-shell.c
@@ -273,6 +273,7 @@ struct _RBShellPrivate
 	GtkBox *top_container;
 	GtkBox *bottom_container;
 	guint right_sidebar_widget_count;
+    guint main_bottom_widget_count;
 
 	RBDisplayPageModel *display_page_model;
 	GList *sources;				/* kill? */
@@ -728,6 +729,7 @@ construct_widgets (RBShell *shell)
 		gtk_box_pack_start (GTK_BOX (vbox2),
 				    GTK_WIDGET (shell->priv->bottom_container),
 				    FALSE, FALSE, 0);
+        gtk_widget_hide (GTK_WIDGET (shell->priv->bottom_container));
 
 		gtk_paned_pack1 (GTK_PANED (shell->priv->right_paned),
 				 vbox2, TRUE, TRUE);
@@ -3797,6 +3799,10 @@ rb_shell_add_widget (RBShell *shell, GtkWidget *widget, RBShellUILocation locati
 		if (!shell->priv->right_sidebar_widget_count)
 			gtk_widget_show (GTK_WIDGET (shell->priv->right_sidebar_container));
 		shell->priv->right_sidebar_widget_count++;
+    case RB_SHELL_UI_LOCATION_MAIN_BOTTOM:
+        if (!shell->priv->main_bottom_widget_count)
+            gtk_widget_show (GTK_WIDGET (shell->priv->bottom_container));
+        shell->priv->main_bottom_widget_count++;
 	default:
 		box = rb_shell_get_box_for_ui_location (shell, location);
 		g_return_if_fail (box != NULL);
@@ -3824,6 +3830,10 @@ rb_shell_remove_widget (RBShell *shell, GtkWidget *widget, RBShellUILocation loc
 		shell->priv->right_sidebar_widget_count--;
 		if (!shell->priv->right_sidebar_widget_count)
 			gtk_widget_hide (GTK_WIDGET (shell->priv->right_sidebar_container));
+    case RB_SHELL_UI_LOCATION_MAIN_BOTTOM:
+        shell->priv->main_bottom_widget_count--;
+        if (!shell->priv->main_bottom_widget_count)
+            gtk_widget_hide (GTK_WIDGET (shell->priv->bottom_container));
 	default:
 		box = rb_shell_get_box_for_ui_location (shell, location);
 		g_return_if_fail (box != NULL);
