-
-
Save itzexor/1286e527f55fed04e21d to your computer and use it in GitHub Desktop.
blah
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| diff --git a/libnemo-private/nemo-file-operations.c b/libnemo-private/nemo-file-operations.c | |
| index cfb7bf3..70fe2ba 100644 | |
| --- a/libnemo-private/nemo-file-operations.c | |
| +++ b/libnemo-private/nemo-file-operations.c | |
| @@ -147,6 +147,7 @@ typedef struct { | |
| gboolean should_confirm; | |
| NemoOpCallback done_callback; | |
| gpointer done_callback_data; | |
| + int num_deletions_since_progress; | |
| } EmptyTrashJob; | |
| typedef struct { | |
| @@ -6437,6 +6438,7 @@ nemo_file_operations_new_file (GtkWidget *parent_view, | |
| static void | |
| delete_trash_file (CommonJob *job, | |
| GFile *file, | |
| + int *progress_counter, | |
| gboolean del_file, | |
| gboolean del_children) | |
| { | |
| @@ -6460,7 +6462,7 @@ delete_trash_file (CommonJob *job, | |
| (info = g_file_enumerator_next_file (enumerator, job->cancellable, NULL)) != NULL) { | |
| child = g_file_get_child (file, | |
| g_file_info_get_name (info)); | |
| - delete_trash_file (job, child, TRUE, | |
| + delete_trash_file (job, child, progress_counter, TRUE, | |
| g_file_info_get_file_type (info) == G_FILE_TYPE_DIRECTORY); | |
| g_object_unref (child); | |
| g_object_unref (info); | |
| @@ -6472,7 +6474,10 @@ delete_trash_file (CommonJob *job, | |
| if (!job_aborted (job) && del_file) { | |
| g_file_delete (file, job->cancellable, NULL); | |
| - nemo_progress_info_pulse_progress (job->progress); | |
| + if ((*progress_counter)++ > 100) { | |
| + nemo_progress_info_pulse_progress (job->progress); | |
| + *progress_counter = 0; | |
| + } | |
| } | |
| } | |
| @@ -6507,7 +6512,7 @@ empty_trash_job (GIOSchedulerJob *io_job, | |
| common = (CommonJob *)job; | |
| common->io_job = io_job; | |
| - nemo_progress_info_start (common->progress); | |
| + nemo_progress_info_start (common->progress); | |
| if (job->should_confirm && !job_aborted (common)) { | |
| confirmed = confirm_empty_trash (common); | |
| @@ -6521,7 +6526,7 @@ empty_trash_job (GIOSchedulerJob *io_job, | |
| for (l = job->trash_dirs; | |
| l != NULL && !job_aborted (common); | |
| l = l->next) { | |
| - delete_trash_file (common, l->data, FALSE, TRUE); | |
| + delete_trash_file (common, l->data, &job->num_deletions_since_progress, FALSE, TRUE); | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment