mirror of
https://github.com/veeso/termscp.git
synced 2025-12-07 09:36:00 -08:00
Write progress bar only if a significant progress has been made (0.5% at least)
This commit is contained in:
@@ -344,6 +344,7 @@ impl FileTransferActivity {
|
|||||||
"Uploading \"{}\"",
|
"Uploading \"{}\"",
|
||||||
file_name
|
file_name
|
||||||
)));
|
)));
|
||||||
|
let mut last_progress_val: f64 = 0.0;
|
||||||
loop {
|
loop {
|
||||||
// Read till you can
|
// Read till you can
|
||||||
let mut buffer: [u8; 8192] = [0; 8192];
|
let mut buffer: [u8; 8192] = [0; 8192];
|
||||||
@@ -372,8 +373,12 @@ impl FileTransferActivity {
|
|||||||
}
|
}
|
||||||
// Increase progress
|
// Increase progress
|
||||||
self.set_progress(total_bytes_written, file_size);
|
self.set_progress(total_bytes_written, file_size);
|
||||||
|
// Draw only if a significant progress has been made (performance improvement)
|
||||||
|
if last_progress_val + 0.5 >= self.transfer_progress {
|
||||||
// Draw
|
// Draw
|
||||||
self.draw();
|
self.draw();
|
||||||
|
last_progress_val = self.transfer_progress;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
self.log(
|
self.log(
|
||||||
LogLevel::Info,
|
LogLevel::Info,
|
||||||
@@ -507,6 +512,7 @@ impl FileTransferActivity {
|
|||||||
)));
|
)));
|
||||||
let mut total_bytes_written: usize = 0;
|
let mut total_bytes_written: usize = 0;
|
||||||
// Write local file
|
// Write local file
|
||||||
|
let mut last_progress_val: f64 = 0.0;
|
||||||
loop {
|
loop {
|
||||||
// Read till you can
|
// Read till you can
|
||||||
let mut buffer: [u8; 8192] = [0; 8192];
|
let mut buffer: [u8; 8192] = [0; 8192];
|
||||||
@@ -538,8 +544,12 @@ impl FileTransferActivity {
|
|||||||
}
|
}
|
||||||
// Set progress
|
// Set progress
|
||||||
self.set_progress(total_bytes_written, file_size);
|
self.set_progress(total_bytes_written, file_size);
|
||||||
|
// Draw only if a significant progress has been made (performance improvement)
|
||||||
|
if last_progress_val + 0.5 >= self.transfer_progress {
|
||||||
// Draw
|
// Draw
|
||||||
self.draw();
|
self.draw();
|
||||||
|
last_progress_val = self.transfer_progress;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Log
|
// Log
|
||||||
self.log(
|
self.log(
|
||||||
|
|||||||
Reference in New Issue
Block a user