diff options
author | John Sullivan <sullivan@src.gnome.org> | 2000-09-15 22:46:21 +0000 |
---|---|---|
committer | John Sullivan <sullivan@src.gnome.org> | 2000-09-15 22:46:21 +0000 |
commit | 27eb8cbd2051282005af19d81bb974950048c1c0 (patch) | |
tree | a0dbe6aecc0744c7d1fd96ef39b98cd44b1c15bd /libnautilus-extensions | |
parent | 43b1302dd815348fbb7c918143672a5b05ada193 (diff) | |
download | nautilus-27eb8cbd2051282005af19d81bb974950048c1c0.tar.gz |
Fixed bug 1563 (Optionally hide ~-suffix files created by emacs)
Fixed bug 2274 (Implement Empty Trash confirmation preference)
* libnautilus-extensions/nautilus-global-preferences.h:
define NAUTILUS_PREFERENCES_CONFIRM_TRASH and
NAUTILUS_PREFERENCES_SHOW_BACKUP_FILES.
* libnautilus-extensions/nautilus-global-preferences.c:
(global_preferences_create_dialog): Put these two new preferences
on the Directory Views page; rename it Folder Views.
(global_preferences_register): Register default values for new
preferences.
* libnautilus-extensions/nautilus-preferences-dialog.c:
Increase initial height of window to account for new preferences.
There's an open bug about reorganizing the whole window for later.
* libnautilus-extensions/nautilus-file-operations.c:
(confirm_empty_trash): Don't confirm if preference says not to.
* src/file-manager/fm-directory-view.c:
(fm_directory_view_initialize), (fm_directory_view_destroy):
Add & remove callbacks to monitor these two new preferences.
(queue_pending_files): Take SHOW_BACKUP_FILES preference into
account.
(file_name_from_uri): New helper routine to save a little code
duplication.
(fm_directory_view_confirm_deletion): Use yes_no dialog instead
of simple dialog to match other usage; improve dialog title.
(confirm_delete_from_trash): New function, confirms deleting
items from trash unless preference says not to bother.
(fm_directory_view_trash_or_delete_files): Call
confirm_delete_from_trash before deleting items from trash.
(compute_menu_item_info): Do or don't add ellipses to "Empty Trash"
and "Delete From Trash" depending on preference setting.
(schedule_update_menus_callback): New function, simple wrapper for
schedule_update_menus (called when CONFIRM_TRASH preference changes).
(filtering_changed_callback): Renamed and slightly generalized from
show_hidden_files_changed_callback, called when either the
SHOW_HIDDEN_FILES or SHOW_BACKUP_FILES preference changes.
Diffstat (limited to 'libnautilus-extensions')
4 files changed, 43 insertions, 8 deletions
diff --git a/libnautilus-extensions/nautilus-file-operations.c b/libnautilus-extensions/nautilus-file-operations.c index fc019d452..0101b81b0 100644 --- a/libnautilus-extensions/nautilus-file-operations.c +++ b/libnautilus-extensions/nautilus-file-operations.c @@ -35,6 +35,7 @@ #include <libnautilus-extensions/nautilus-file-changes-queue.h> #include <libnautilus-extensions/nautilus-file-utilities.h> #include <libnautilus-extensions/nautilus-glib-extensions.h> +#include <libnautilus-extensions/nautilus-global-preferences.h> #include <libnautilus-extensions/nautilus-stock-dialogs.h> #include "fm-directory-view.h" @@ -1424,6 +1425,11 @@ confirm_empty_trash (GtkWidget *parent_view) GnomeDialog *dialog; GtkWindow *parent_window; + /* Just Say Yes if the preference says not to confirm. */ + if (!nautilus_preferences_get_boolean (NAUTILUS_PREFERENCES_CONFIRM_TRASH, TRUE)) { + return TRUE; + } + parent_window = GTK_WINDOW (gtk_widget_get_toplevel (parent_view)); dialog = nautilus_yes_no_dialog ( diff --git a/libnautilus-extensions/nautilus-global-preferences.c b/libnautilus-extensions/nautilus-global-preferences.c index b536da761..4ec4d8265 100644 --- a/libnautilus-extensions/nautilus-global-preferences.c +++ b/libnautilus-extensions/nautilus-global-preferences.c @@ -109,8 +109,8 @@ global_preferences_create_dialog (void) * Directory Views pane */ directory_views_pane = nautilus_preferences_box_add_pane (preference_box, - _("Directory Views"), - _("Directory Views Settings")); + _("Folder Views"), + _("Folder Views Settings")); nautilus_preferences_pane_add_group (NAUTILUS_PREFERENCES_PANE (directory_views_pane), _("Window Behavior")); @@ -126,15 +126,27 @@ global_preferences_create_dialog (void) NAUTILUS_PREFERENCES_CLICK_POLICY, NAUTILUS_PREFERENCE_ITEM_ENUM); - nautilus_preferences_pane_add_group (NAUTILUS_PREFERENCES_PANE (directory_views_pane), _("Display")); + nautilus_preferences_pane_add_group (NAUTILUS_PREFERENCES_PANE (directory_views_pane), _("Trash Behavior")); nautilus_preferences_pane_add_item_to_nth_group (NAUTILUS_PREFERENCES_PANE (directory_views_pane), 2, + NAUTILUS_PREFERENCES_CONFIRM_TRASH, + NAUTILUS_PREFERENCE_ITEM_BOOLEAN); + + nautilus_preferences_pane_add_group (NAUTILUS_PREFERENCES_PANE (directory_views_pane), _("Display")); + + nautilus_preferences_pane_add_item_to_nth_group (NAUTILUS_PREFERENCES_PANE (directory_views_pane), + 3, NAUTILUS_PREFERENCES_SHOW_HIDDEN_FILES, NAUTILUS_PREFERENCE_ITEM_BOOLEAN); nautilus_preferences_pane_add_item_to_nth_group (NAUTILUS_PREFERENCES_PANE (directory_views_pane), - 2, + 3, + NAUTILUS_PREFERENCES_SHOW_BACKUP_FILES, + NAUTILUS_PREFERENCE_ITEM_BOOLEAN); + + nautilus_preferences_pane_add_item_to_nth_group (NAUTILUS_PREFERENCES_PANE (directory_views_pane), + 3, NAUTILUS_PREFERENCES_SHOW_SPECIAL_FLAGS, NAUTILUS_PREFERENCE_ITEM_BOOLEAN); @@ -241,7 +253,7 @@ global_preferences_create_dialog (void) NAUTILUS_PREFERENCE_ITEM_SHORT_ENUM); /* FIXME bugzilla.eazel.com 2560: This title phrase needs improvement. */ - nautilus_preferences_pane_add_group (NAUTILUS_PREFERENCES_PANE (tradeoffs_pane), _("Make Directory Appearance Details Public")); + nautilus_preferences_pane_add_group (NAUTILUS_PREFERENCES_PANE (tradeoffs_pane), _("Make Folder Appearance Details Public")); nautilus_preferences_pane_add_item_to_nth_group (NAUTILUS_PREFERENCES_PANE (tradeoffs_pane), 2, @@ -634,6 +646,13 @@ global_preferences_register (void) FALSE, FALSE); + /* Trash confirm */ + global_preferences_register_boolean_with_defaults (NAUTILUS_PREFERENCES_CONFIRM_TRASH, + _("Ask before deleting items from the trash"), + TRUE, + TRUE, + TRUE); + /* Click activation type */ global_preferences_register_enum_with_defaults (NAUTILUS_PREFERENCES_CLICK_POLICY, _("Click policy"), @@ -665,7 +684,7 @@ global_preferences_register (void) NAUTILUS_SPEED_TRADEOFF_ALWAYS); global_preferences_register_speed_tradeoff_with_defaults (NAUTILUS_PREFERENCES_USE_PUBLIC_METADATA, - _("Read and write metadata in each directory"), + _("Read and write metadata in each folder"), NAUTILUS_SPEED_TRADEOFF_ALWAYS, NAUTILUS_SPEED_TRADEOFF_ALWAYS, NAUTILUS_SPEED_TRADEOFF_ALWAYS); @@ -745,7 +764,13 @@ global_preferences_register (void) global_preferences_register_boolean_with_defaults (NAUTILUS_PREFERENCES_SHOW_HIDDEN_FILES, - _("Show hidden files"), + _("Show hidden files (starting with \".\")"), + FALSE, + FALSE, + TRUE); + + global_preferences_register_boolean_with_defaults (NAUTILUS_PREFERENCES_SHOW_BACKUP_FILES, + _("Show backup files (ending with \"~\")"), FALSE, FALSE, TRUE); diff --git a/libnautilus-extensions/nautilus-global-preferences.h b/libnautilus-extensions/nautilus-global-preferences.h index 111652db7..fe2fdde43 100644 --- a/libnautilus-extensions/nautilus-global-preferences.h +++ b/libnautilus-extensions/nautilus-global-preferences.h @@ -57,8 +57,12 @@ BEGIN_GNOME_DECLS /* Window options */ #define NAUTILUS_PREFERENCES_WINDOW_ALWAYS_NEW "preferences/window_always_new" +/* Trash options */ +#define NAUTILUS_PREFERENCES_CONFIRM_TRASH "preferences/confirm_trash" + /* Display */ #define NAUTILUS_PREFERENCES_SHOW_HIDDEN_FILES "preferences/show_hidden_files" +#define NAUTILUS_PREFERENCES_SHOW_BACKUP_FILES "preferences/show_backup_files" #define NAUTILUS_PREFERENCES_SHOW_SPECIAL_FLAGS "preferences/show_special_flags" /* Home URI */ diff --git a/libnautilus-extensions/nautilus-preferences-dialog.c b/libnautilus-extensions/nautilus-preferences-dialog.c index eea159403..48d0dfd27 100644 --- a/libnautilus-extensions/nautilus-preferences-dialog.c +++ b/libnautilus-extensions/nautilus-preferences-dialog.c @@ -57,7 +57,7 @@ static const gint DEFAULT_BUTTON = 0; static const guint DEFAULT_BORDER_WIDTH = 0; static const guint PREFS_DIALOG_DEFAULT_WIDTH = 500; -static const guint PREFS_DIALOG_DEFAULT_HEIGHT = 300; +static const guint PREFS_DIALOG_DEFAULT_HEIGHT = 375; enum { |