diff -crB nautilus-3.2.1/src/nautilus-navigation-action.c nautilus-3.2.1-mod3/src/nautilus-navigation-action.c
*** nautilus-3.2.1/src/nautilus-navigation-action.c	2011-09-12 19:14:32.000000000 -0400
--- nautilus-3.2.1-mod3/src/nautilus-navigation-action.c	2012-01-14 22:59:30.729310248 -0500
***************
*** 149,154 ****
--- 149,160 ----
  	case NAUTILUS_NAVIGATION_DIRECTION_BACK:
  		fill_menu (window, menu, TRUE);
  		break;
+         case NAUTILUS_NAVIGATION_DIRECTION_UP:
+                 return;
+         case NAUTILUS_NAVIGATION_DIRECTION_RELOAD:
+                 return;
+         case NAUTILUS_NAVIGATION_DIRECTION_HOME:
+                 return;
  	default:
  		g_assert_not_reached ();
  		break;
diff -crB nautilus-3.2.1/src/nautilus-navigation-action.h nautilus-3.2.1-mod3/src/nautilus-navigation-action.h
*** nautilus-3.2.1/src/nautilus-navigation-action.h	2011-07-31 14:29:17.000000000 -0400
--- nautilus-3.2.1-mod3/src/nautilus-navigation-action.h	2012-01-14 23:00:05.601171660 -0500
***************
*** 47,53 ****
  typedef enum
  {
  	NAUTILUS_NAVIGATION_DIRECTION_BACK,
! 	NAUTILUS_NAVIGATION_DIRECTION_FORWARD
  } NautilusNavigationDirection;
  
  struct _NautilusNavigationAction
--- 47,56 ----
  typedef enum
  {
  	NAUTILUS_NAVIGATION_DIRECTION_BACK,
! 	NAUTILUS_NAVIGATION_DIRECTION_FORWARD,
! 	NAUTILUS_NAVIGATION_DIRECTION_UP,
! 	NAUTILUS_NAVIGATION_DIRECTION_RELOAD,
! 	NAUTILUS_NAVIGATION_DIRECTION_HOME
  } NautilusNavigationDirection;
  
  struct _NautilusNavigationAction
diff -crB nautilus-3.2.1/src/nautilus-toolbar.c nautilus-3.2.1-mod3/src/nautilus-toolbar.c
*** nautilus-3.2.1/src/nautilus-toolbar.c	2011-09-12 19:14:32.000000000 -0400
--- nautilus-3.2.1-mod3/src/nautilus-toolbar.c	2012-01-14 23:01:01.528943772 -0500
***************
*** 129,135 ****
  	item = gtk_tool_item_new ();
  	gtk_tool_item_set_expand (item, TRUE);
  	gtk_container_add (GTK_CONTAINER (item), hbox);
! 	gtk_toolbar_insert (GTK_TOOLBAR (self->priv->toolbar), item, 0);
  	gtk_widget_show (GTK_WIDGET (item));
  
  	/* search bar */
--- 129,135 ----
  	item = gtk_tool_item_new ();
  	gtk_tool_item_set_expand (item, TRUE);
  	gtk_container_add (GTK_CONTAINER (item), hbox);
! 	gtk_toolbar_insert (GTK_TOOLBAR (self->priv->toolbar), item, 5);
  	gtk_widget_show (GTK_WIDGET (item));
  
  	/* search bar */
diff -crB nautilus-3.2.1/src/nautilus-toolbar-ui.xml nautilus-3.2.1-mod3/src/nautilus-toolbar-ui.xml
*** nautilus-3.2.1/src/nautilus-toolbar-ui.xml	2011-09-12 19:14:32.000000000 -0400
--- nautilus-3.2.1-mod3/src/nautilus-toolbar-ui.xml	2012-01-14 23:01:55.972715585 -0500
***************
*** 2,7 ****
  <toolbar name="Toolbar">
  	<toolitem name="Back" action="Back"/>
  	<toolitem name="Forward" action="Forward"/>
          <toolitem name="Search" action="Search"/>
  </toolbar>
! </ui>
\ No newline at end of file
--- 2,10 ----
  <toolbar name="Toolbar">
  	<toolitem name="Back" action="Back"/>
  	<toolitem name="Forward" action="Forward"/>
+ 	<toolitem name="Up" action="Up"/>
+ 	<toolitem name="Reload" action="Reload"/>
+ 	<toolitem name="Home" action="Home"/>
          <toolitem name="Search" action="Search"/>
  </toolbar>
! </ui>
diff -crB nautilus-3.2.1/src/nautilus-window-menus.c nautilus-3.2.1-mod3/src/nautilus-window-menus.c
*** nautilus-3.2.1/src/nautilus-window-menus.c	2012-01-14 22:51:07.000000000 -0500
--- nautilus-3.2.1-mod3/src/nautilus-window-menus.c	2012-01-14 23:06:32.599920712 -0500
***************
*** 1141,1146 ****
--- 1141,1189 ----
  
  	g_object_unref (action);
  
+ 	action = g_object_new (NAUTILUS_TYPE_NAVIGATION_ACTION,
+  			       "name", NAUTILUS_ACTION_UP,
+  			       "label", _("_Up"),
+  			       "stock_id", GTK_STOCK_GO_UP,
+  			       "tooltip", _("Go to parent folder"),
+  			       "arrow-tooltip", _("Forward history"),
+  			       "window", window,
+  			       "direction", NAUTILUS_NAVIGATION_DIRECTION_UP,
+  			       NULL);
+  	g_signal_connect (action, "activate",
+  			  G_CALLBACK (action_up_callback), window);
+  	gtk_action_group_add_action (action_group, action);
+  
+  	g_object_unref (action);
+ 
+ 	action = g_object_new (NAUTILUS_TYPE_NAVIGATION_ACTION,
+  			       "name", NAUTILUS_ACTION_RELOAD,
+  			       "label", _("_Reload"),
+  			       "stock_id", GTK_STOCK_REFRESH,
+  			       "tooltip", _("Reload the current location"),
+  			       "window", window,
+  			       "direction", NAUTILUS_NAVIGATION_DIRECTION_RELOAD,
+  			       NULL);
+  	g_signal_connect (action, "activate",
+  			  G_CALLBACK (action_reload_callback), window);
+  	gtk_action_group_add_action (action_group, action);
+  
+  	g_object_unref (action);
+  
+  	action = g_object_new (NAUTILUS_TYPE_NAVIGATION_ACTION,
+  			       "name", NAUTILUS_ACTION_HOME,
+  			       "label", _("_Home"),
+  			       "stock_id", GTK_STOCK_HOME,
+  			       "tooltip", _("Go to home folder"),
+  			       "window", window,
+  			       "direction", NAUTILUS_NAVIGATION_DIRECTION_HOME,
+  			       NULL);
+  	g_signal_connect (action, "activate",
+  			  G_CALLBACK (action_home_callback), window);
+  	gtk_action_group_add_action (action_group, action);
+  
+  	g_object_unref (action);
+ 
  	action = GTK_ACTION
  		(gtk_toggle_action_new (NAUTILUS_ACTION_SEARCH,
  					_("Search"),
***************
*** 1197,1202 ****
--- 1240,1246 ----
  	GtkActionGroup *action_group;
  	const gchar *nav_state_actions[] = {
  		NAUTILUS_ACTION_BACK, NAUTILUS_ACTION_FORWARD,
+ 		NAUTILUS_ACTION_UP, NAUTILUS_ACTION_RELOAD, NAUTILUS_ACTION_HOME,
  		NAUTILUS_ACTION_SEARCH, NULL
  	};
  
