diff -Nur nautilus-2.10.0/libnautilus-private/nautilus-global-preferences.c nautilus-2.10.0.new/libnautilus-private/nautilus-global-preferences.c
--- nautilus-2.10.0/libnautilus-private/nautilus-global-preferences.c 2004-11-22 16:24:36.000000000 +0100
+++ nautilus-2.10.0.new/libnautilus-private/nautilus-global-preferences.c 2005-04-03 18:07:11.564399224 +0200
@@ -511,6 +511,12 @@
default_trash_link_name, g_free,
},
+
+ { NAUTILUS_PREFERENCES_CLOSE_PREVIOUS_WINDOWS,
+ PREFERENCE_BOOLEAN,
+ GINT_TO_POINTER (TRUE)
+ },
+
{ NULL }
};
diff -Nur nautilus-2.10.0/libnautilus-private/nautilus-global-preferences.h nautilus-2.10.0.new/libnautilus-private/nautilus-global-preferences.h
--- nautilus-2.10.0/libnautilus-private/nautilus-global-preferences.h 2004-11-22 16:24:36.000000000 +0100
+++ nautilus-2.10.0.new/libnautilus-private/nautilus-global-preferences.h 2005-04-03 18:07:11.565399072 +0200
@@ -74,6 +74,9 @@
/* Single/Double click preference */
#define NAUTILUS_PREFERENCES_CLICK_POLICY "preferences/click_policy"
+/* Ubuntu spatial change */
+#define NAUTILUS_PREFERENCES_CLOSE_PREVIOUS_WINDOWS "preferences/close_previous_windows"
+
/* Activating executable text files */
#define NAUTILUS_PREFERENCES_EXECUTABLE_TEXT_ACTIVATION "preferences/executable_text_activation"
diff -Nur nautilus-2.10.0/src/file-manager/fm-directory-view.c nautilus-2.10.0.new/src/file-manager/fm-directory-view.c
--- nautilus-2.10.0/src/file-manager/fm-directory-view.c 2005-04-03 18:06:41.911907000 +0200
+++ nautilus-2.10.0.new/src/file-manager/fm-directory-view.c 2005-04-03 18:07:11.580396792 +0200
@@ -6891,6 +6891,14 @@
parameters->view = view;
parameters->file = file;
parameters->mode = mode;
+
+ if ( eel_preferences_get_boolean (NAUTILUS_PREFERENCES_CLOSE_PREVIOUS_WINDOWS) && nautilus_file_is_directory (file)) {
+ if (flags == NAUTILUS_WINDOW_OPEN_FLAG_CLOSE_BEHIND)
+ flags = 0;
+ else
+ flags = NAUTILUS_WINDOW_OPEN_FLAG_CLOSE_BEHIND;
+ }
+
parameters->flags = flags;
parameters->callback = activate_activation_uri_ready_callback;
parameters->mounted = FALSE;
diff -Nur nautilus-2.10.0/src/nautilus-file-management-properties.c nautilus-2.10.0.new/src/nautilus-file-management-properties.c
--- nautilus-2.10.0/src/nautilus-file-management-properties.c 2004-07-16 14:04:29.000000000 +0200
+++ nautilus-2.10.0.new/src/nautilus-file-management-properties.c 2005-04-03 18:07:11.582396488 +0200
@@ -71,6 +71,7 @@
#define NAUTILUS_FILE_MANAGEMENT_PROPERTIES_TRASH_DELETE_WIDGET "trash_delete_checkbutton"
#define NAUTILUS_FILE_MANAGEMENT_PROPERTIES_OPEN_NEW_WINDOW_WIDGET "new_window_checkbutton"
#define NAUTILUS_FILE_MANAGEMENT_PROPERTIES_SHOW_HIDDEN_WIDGET "hidden_files_checkbutton"
+#define NAUTILUS_FILE_MANAGEMENT_PROPERTIES_CLOSE_PREVIOUS_WINDOWS_WIDGET "close_previous_windows_checkbutton"
#define NAUTILUS_FILE_MANAGEMENT_PROPERTIES_TREE_VIEW_FOLDERS_WIDGET "treeview_folders_checkbutton"
/* int enums */
@@ -598,6 +599,9 @@
eel_preferences_glade_connect_bool_slave (xml_dialog,
NAUTILUS_FILE_MANAGEMENT_PROPERTIES_SHOW_HIDDEN_WIDGET,
NAUTILUS_PREFERENCES_SHOW_BACKUP_FILES);
+ eel_preferences_glade_connect_bool_slave (xml_dialog,
+ NAUTILUS_FILE_MANAGEMENT_PROPERTIES_CLOSE_PREVIOUS_WINDOWS_WIDGET,
+ NAUTILUS_PREFERENCES_CLOSE_PREVIOUS_WINDOWS);
eel_preferences_glade_connect_bool (xml_dialog,
NAUTILUS_FILE_MANAGEMENT_PROPERTIES_TREE_VIEW_FOLDERS_WIDGET,
NAUTILUS_PREFERENCES_TREE_SHOW_ONLY_DIRECTORIES);
diff -Nur nautilus-2.10.0/src/nautilus-file-management-properties.glade nautilus-2.10.0.new/src/nautilus-file-management-properties.glade
--- nautilus-2.10.0/src/nautilus-file-management-properties.glade 2005-03-01 12:32:57.000000000 +0100
+++ nautilus-2.10.0.new/src/nautilus-file-management-properties.glade 2005-04-03 18:08:48.774621024 +0200
@@ -1029,6 +1029,25 @@
False
+
+
+
+ True
+ True
+ C_lose previous folder when opening a subfolder
+ True
+ GTK_RELIEF_NORMAL
+ True
+ False
+ False
+ True
+
+
+ 0
+ False
+ False
+
+
0
diff -Nur nautilus-2.10.0/src/nautilus-file-management-properties.gladep nautilus-2.10.0.new/src/nautilus-file-management-properties.gladep
--- nautilus-2.10.0/src/nautilus-file-management-properties.gladep 1970-01-01 01:00:00.000000000 +0100
+++ nautilus-2.10.0.new/src/nautilus-file-management-properties.gladep 2005-04-03 18:07:11.586395880 +0200
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+ FALSE
+
diff -Nur nautilus-2.10.0/src/nautilus-spatial-window.c nautilus-2.10.0.new/src/nautilus-spatial-window.c
--- nautilus-2.10.0/src/nautilus-spatial-window.c 2005-02-22 11:26:18.000000000 +0100
+++ nautilus-2.10.0.new/src/nautilus-spatial-window.c 2005-04-03 18:07:11.587395728 +0200
@@ -431,7 +431,10 @@
{
close_behind = TRUE;
}
- nautilus_window_open_location_with_selection (NAUTILUS_WINDOW (window), location, selection, close_behind);
+ if (eel_preferences_get_boolean (NAUTILUS_PREFERENCES_CLOSE_PREVIOUS_WINDOWS))
+ nautilus_window_open_location_with_selection (NAUTILUS_WINDOW (window), location, selection, !close_behind);
+ else
+ nautilus_window_open_location_with_selection (NAUTILUS_WINDOW (window), location, selection, close_behind);
}
if (event != NULL) {
diff -Nur nautilus-2.10.0/src/nautilus-window.c nautilus-2.10.0.new/src/nautilus-window.c
--- nautilus-2.10.0/src/nautilus-window.c 2005-02-22 09:43:44.000000000 +0100
+++ nautilus-2.10.0.new/src/nautilus-window.c 2005-04-03 18:07:11.589395424 +0200
@@ -224,7 +224,10 @@
void
nautilus_window_go_to (NautilusWindow *window, const char *uri)
{
- nautilus_window_open_location (window, uri, FALSE);
+ if (eel_preferences_get_boolean (NAUTILUS_PREFERENCES_CLOSE_PREVIOUS_WINDOWS))
+ nautilus_window_open_location (window, uri, TRUE);
+ else
+ nautilus_window_open_location (window, uri, FALSE);
}