diff options
author | Connor Behan | 2015-06-08 18:19:09 -0400 |
---|---|---|
committer | Connor Behan | 2015-06-08 18:19:09 -0400 |
commit | c2a5167e51ad6df995988005cb9baae6f2ec94d5 (patch) | |
tree | 080e5c971d7696362f356b121e99a9b967cdb674 /notrash.patch | |
download | aur-c2a5167e51ad6df995988005cb9baae6f2ec94d5.tar.gz |
Initial import
Diffstat (limited to 'notrash.patch')
-rw-r--r-- | notrash.patch | 161 |
1 files changed, 161 insertions, 0 deletions
diff --git a/notrash.patch b/notrash.patch new file mode 100644 index 000000000000..7ce8a53ffef6 --- /dev/null +++ b/notrash.patch @@ -0,0 +1,161 @@ +diff -rudp Thunar-1.6.6.orig/thunar/thunar-application.c Thunar-1.6.6/thunar/thunar-application.c +--- Thunar-1.6.6.orig/thunar/thunar-application.c 2015-03-09 23:42:56.000000000 -0400 ++++ Thunar-1.6.6/thunar/thunar-application.c 2015-03-09 23:43:34.000000000 -0400 +@@ -1776,9 +1776,16 @@ thunar_application_unlink_files (ThunarA + gchar *message; + guint n_path_list = 0; + gint response; ++ gboolean isTrashEnabled; + + _thunar_return_if_fail (parent == NULL || GDK_IS_SCREEN (parent) || GTK_IS_WIDGET (parent)); + _thunar_return_if_fail (THUNAR_IS_APPLICATION (application)); ++ ++ g_object_get (G_OBJECT (application->preferences), "misc-enable-trash", &isTrashEnabled, NULL); ++ if (!isTrashEnabled) ++ { ++ permanently = TRUE; ++ } + + /* determine the paths for the files */ + for (lp = g_list_last (file_list); lp != NULL; lp = lp->prev, ++n_path_list) +@@ -1800,8 +1807,8 @@ thunar_application_unlink_files (ThunarA + if (G_UNLIKELY (permanently)) + { + /* parse the parent pointer */ +- screen = thunar_util_parse_parent (parent, &window); +- ++ screen = thunar_util_parse_parent (parent, &window); ++ + /* generate the question to confirm the delete operation */ + if (G_LIKELY (n_path_list == 1)) + { +diff -rudp Thunar-1.6.6.orig/thunar/thunar-preferences.c Thunar-1.6.6/thunar/thunar-preferences.c +--- Thunar-1.6.6.orig/thunar/thunar-preferences.c 2015-03-09 23:42:56.000000000 -0400 ++++ Thunar-1.6.6/thunar/thunar-preferences.c 2015-03-09 23:46:00.000000000 -0400 +@@ -75,6 +75,7 @@ enum + PROP_MISC_VOLUME_MANAGEMENT, + PROP_MISC_CASE_SENSITIVE, + PROP_MISC_DATE_STYLE, ++ PROP_MISC_ENABLE_TRASH, + PROP_EXEC_SHELL_SCRIPTS_BY_DEFAULT, + PROP_MISC_FOLDERS_FIRST, + PROP_MISC_FULL_PATH_IN_TITLE, +@@ -759,6 +760,18 @@ thunar_preferences_class_init (ThunarPre + THUNAR_ICON_SIZE_SMALLEST, + EXO_PARAM_READWRITE); + ++ /** ++ * ThunarPreferences:misc-enable-trash: ++ * ++ * If trash is disabled, files will be deleted permanently ++ **/ ++ preferences_props[PROP_MISC_ENABLE_TRASH] = ++ g_param_spec_boolean ("misc-enable-trash", ++ "misc-enable-trash", ++ NULL, ++ TRUE, ++ EXO_PARAM_READWRITE); ++ + /* install all properties */ + g_object_class_install_properties (gobject_class, N_PROPERTIES, preferences_props); + } +diff -rudp Thunar-1.6.6.orig/thunar/thunar-preferences-dialog.c Thunar-1.6.6/thunar/thunar-preferences-dialog.c +--- Thunar-1.6.6.orig/thunar/thunar-preferences-dialog.c 2015-03-09 23:42:56.000000000 -0400 ++++ Thunar-1.6.6/thunar/thunar-preferences-dialog.c 2015-03-09 23:43:34.000000000 -0400 +@@ -381,7 +381,7 @@ thunar_preferences_dialog_init (ThunarPr + gtk_frame_set_label_widget (GTK_FRAME (frame), label); + gtk_widget_show (label); + +- table = gtk_table_new (2, 2, FALSE); ++ table = gtk_table_new (3, 2, FALSE); + gtk_table_set_row_spacings (GTK_TABLE (table), 6); + gtk_table_set_col_spacings (GTK_TABLE (table), 12); + gtk_container_set_border_width (GTK_CONTAINER (table), 12); +@@ -599,7 +599,7 @@ thunar_preferences_dialog_init (ThunarPr + gtk_frame_set_label_widget (GTK_FRAME (frame), label); + gtk_widget_show (label); + +- table = gtk_table_new (2, 2, FALSE); ++ table = gtk_table_new (3, 2, FALSE); + gtk_table_set_row_spacings (GTK_TABLE (table), 6); + gtk_table_set_col_spacings (GTK_TABLE (table), 12); + gtk_container_set_border_width (GTK_CONTAINER (table), 12); +@@ -626,12 +626,18 @@ thunar_preferences_dialog_init (ThunarPr + gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, TRUE, 0); + gtk_widget_show (frame); + ++ button = gtk_check_button_new_with_mnemonic (_("Move items to Trash on _deletion.")); ++ exo_mutual_binding_new (G_OBJECT (dialog->preferences), "misc-enable-trash", G_OBJECT (button), "active"); ++ thunar_gtk_widget_set_tooltip (button, _( "By default, items are sent to the Trash on deletion. By disabling this option, items will be removed on deletion and will be lost forever. (DANGEROUS)" ) ); ++ gtk_table_attach (GTK_TABLE (table), button, 0,1,2,3, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0); ++ gtk_widget_show (button); ++ + label = gtk_label_new (_("Volume Management")); + gtk_label_set_attributes (GTK_LABEL (label), thunar_pango_attr_list_bold ()); + gtk_frame_set_label_widget (GTK_FRAME (frame), label); + gtk_widget_show (label); + +- table = gtk_table_new (2, 2, FALSE); ++ table = gtk_table_new (3, 2, FALSE); + gtk_table_set_row_spacings (GTK_TABLE (table), 6); + gtk_table_set_col_spacings (GTK_TABLE (table), 12); + gtk_container_set_border_width (GTK_CONTAINER (table), 12); +diff -rudp Thunar-1.6.6.orig/thunar/thunar-shortcuts-model.c Thunar-1.6.6/thunar/thunar-shortcuts-model.c +--- Thunar-1.6.6.orig/thunar/thunar-shortcuts-model.c 2015-03-09 23:42:56.000000000 -0400 ++++ Thunar-1.6.6/thunar/thunar-shortcuts-model.c 2015-03-09 23:43:34.000000000 -0400 +@@ -952,6 +952,8 @@ thunar_shortcuts_model_shortcut_places ( + GFile *desktop; + GFile *trash; + ThunarFile *file; ++ gboolean isTrashEnabled; ++ ThunarPreferences *preferences; + + /* add the places heading */ + shortcut = g_slice_new0 (ThunarShortcut); +@@ -992,9 +994,13 @@ thunar_shortcuts_model_shortcut_places ( + } + g_object_unref (desktop); + g_object_unref (home); ++ ++ preferences = thunar_preferences_get(); ++ g_object_get (G_OBJECT (preferences), "misc-enable-trash", &isTrashEnabled, NULL); ++ g_object_unref(preferences); + + /* append the trash icon if the trash is supported */ +- if (thunar_g_vfs_is_uri_scheme_supported ("trash")) ++ if (isTrashEnabled && thunar_g_vfs_is_uri_scheme_supported ("trash")) + { + trash = thunar_g_file_new_for_trash (); + file = thunar_file_get (trash, NULL); +diff -rudp Thunar-1.6.6.orig/thunar/thunar-tree-model.c Thunar-1.6.6/thunar/thunar-tree-model.c +--- Thunar-1.6.6.orig/thunar/thunar-tree-model.c 2015-03-09 23:42:56.000000000 -0400 ++++ Thunar-1.6.6/thunar/thunar-tree-model.c 2015-03-09 23:43:34.000000000 -0400 +@@ -286,12 +286,18 @@ thunar_tree_model_init (ThunarTreeModel + GList *devices; + GList *lp; + GNode *node; +- ++ ThunarPreferences *preferences; ++ gboolean isTrashEnabled; ++ + /* generate a unique stamp if we're in debug mode */ + #ifndef NDEBUG + model->stamp = g_random_int (); + #endif + ++ preferences = thunar_preferences_get(); ++ g_object_get (G_OBJECT (preferences), "misc-enable-trash", &isTrashEnabled, NULL); ++ g_object_unref(preferences); ++ + /* initialize the model data */ + model->sort_case_sensitive = TRUE; + model->visible_func = (ThunarTreeModelVisibleFunc) exo_noop_true; +@@ -324,7 +330,7 @@ thunar_tree_model_init (ThunarTreeModel + g_object_unref (desktop); + + /* append the trash icon if the trash is supported */ +- if (thunar_g_vfs_is_uri_scheme_supported ("trash")) ++ if (isTrashEnabled && thunar_g_vfs_is_uri_scheme_supported ("trash")) + system_paths = g_list_append (system_paths, thunar_g_file_new_for_trash ()); + + /* append the network icon if browsing the network is supported */ |