files icon indicating copy to clipboard operation
files copied to clipboard

Removable Storage async File Write Parity

Open NjlsShade opened this issue 4 years ago • 4 comments

Problem

When removable storage devices are mounted with the default async option Linux file managers generally show the progress of transfer operations to said device as concluding once all data has been copied to the memory buffer, this is great for internal drives, as it frees up the files app to do other things while the operation continues in the background. However, the nature of removable media renders this just not a practical choice.

On slower storage devices this can cause confusion for inexperienced users and is a general inconvenience for anyone, as even if you unmount the device via the Files app while data is still being written from the buffer, there is no clear indication the system is doing so, nor is there a vivid confirmation on the completion of said data write (other then the drive disappearing from the Storage list, however, this is subtle, inconsistent, and can be missed).

Proposal

File transfers to removable media should follow the progress of the full async task via the progress bar, not just the copy to buffer. Optionally provide a button, check, or setting to force a sync operation if the user desires, making sure to state that this will write data the fastest speed possible at the expense of the device's longevity.

Also, providing clear notifications when a device has been unmounted successfully or removed incorrectly (without prior umounting) would go a long way as well.

Prior Art

From what I gather, Chromium OS visulaises the progress of removable media's async transfer via the file copy progress bar, thus eliminating this consistency issue. I do not know for certain, however, I would assume both Mac OS and Windows do the same as their file transfers also keep parity with the actual data being written to external hardware.

As someone who conducts file transfers regularly It's tedious to have to manually monitor the block device's dirty bytes for progress every time I write a large sum of data. Would love this feature to be included in some form, really enjoying Elementary OS 6 Beta so far and look forward to using it as my daily driver once released. Thanks!

NjlsShade avatar Jul 08 '21 14:07 NjlsShade