@@ -4,6 +4,7 @@ use std::fs;
44use czkawka_core:: common:: check_if_folder_contains_only_empty_folders;
55use gtk4:: prelude:: * ;
66use gtk4:: { Align , CheckButton , Dialog , Orientation , ResponseType , TextView } ;
7+ use log:: debug;
78
89use crate :: flg;
910use crate :: gui_structs:: gui_data:: GuiData ;
@@ -290,6 +291,10 @@ pub(crate) fn empty_folder_remover(
290291 return ; // No selected rows
291292 }
292293
294+ debug ! ( "Starting to delete {} folders" , selected_rows. len( ) ) ;
295+ let start_time = std:: time:: Instant :: now ( ) ;
296+ let mut deleted_folders: u32 = 0 ;
297+
293298 let mut messages: String = String :: new ( ) ;
294299
295300 // Must be deleted from end to start, because when deleting entries, TreePath(and also TreeIter) will points to invalid data
@@ -308,13 +313,15 @@ pub(crate) fn empty_folder_remover(
308313 match fs:: remove_dir_all ( & full_path) {
309314 Ok ( ( ) ) => {
310315 model. remove ( & iter) ;
316+ deleted_folders += 1 ;
311317 }
312318 Err ( _inspected) => error_happened = true ,
313319 }
314320 } else {
315321 match trash:: delete ( & full_path) {
316322 Ok ( ( ) ) => {
317323 model. remove ( & iter) ;
324+ deleted_folders += 1 ;
318325 }
319326 Err ( _inspected) => error_happened = true ,
320327 }
@@ -328,6 +335,8 @@ pub(crate) fn empty_folder_remover(
328335 }
329336 }
330337
338+ debug ! ( "Deleted {deleted_folders} folders in {:?}" , start_time. elapsed( ) ) ;
339+
331340 text_view_errors. buffer ( ) . set_text ( messages. as_str ( ) ) ;
332341}
333342
@@ -363,6 +372,10 @@ pub(crate) fn basic_remove(
363372 return ; // No selected rows
364373 }
365374
375+ debug ! ( "Starting to delete {} files" , selected_rows. len( ) ) ;
376+ let start_time = std:: time:: Instant :: now ( ) ;
377+ let mut deleted_files: u32 = 0 ;
378+
366379 // Must be deleted from end to start, because when deleting entries, TreePath(and also TreeIter) will points to invalid data
367380 for tree_path in selected_rows. iter ( ) . rev ( ) {
368381 let iter = model. iter ( tree_path) . expect ( "Using invalid tree_path" ) ;
@@ -374,6 +387,7 @@ pub(crate) fn basic_remove(
374387 match fs:: remove_file ( get_full_name_from_path_name ( & path, & name) ) {
375388 Ok ( ( ) ) => {
376389 model. remove ( & iter) ;
390+ deleted_files += 1 ;
377391 }
378392
379393 Err ( e) => {
@@ -385,6 +399,7 @@ pub(crate) fn basic_remove(
385399 match trash:: delete ( get_full_name_from_path_name ( & path, & name) ) {
386400 Ok ( ( ) ) => {
387401 model. remove ( & iter) ;
402+ deleted_files += 1 ;
388403 }
389404 Err ( e) => {
390405 messages += flg ! ( "delete_file_failed" , name = get_full_name_from_path_name( & path, & name) , reason = e. to_string( ) ) . as_str ( ) ;
@@ -394,6 +409,8 @@ pub(crate) fn basic_remove(
394409 }
395410 }
396411
412+ debug ! ( "Deleted {deleted_files} files in {:?}" , start_time. elapsed( ) ) ;
413+
397414 text_view_errors. buffer ( ) . set_text ( messages. as_str ( ) ) ;
398415}
399416
0 commit comments