mate-desktop / caja

Caja, the file manager for the MATE desktop
https://mate-desktop.org/
Other
271 stars 145 forks source link

option(s) to disable queuing and/or pausing #844

Open aifluppeu opened 7 years ago

aifluppeu commented 7 years ago

MATE general version

1.18.0

Package version

1.18.4

Maybe some people like copy queuing, maybe it should even remain enabled by default, but there are definitely reasons some may prefer to have the ability to turn copy queuing off ... Example Scenario: user is copying (or even permanently deleting) a many GB folder which will take several minutes or even more. At some point while this copy is taking place, user attempts to drag and drop a tiny text file from a thumbdrive to their desktop ... prior to 1.18, that text file would have been copied over without delay, but since 1.18, every tiny copy action the user may take will be delayed e.g. several minutes until an earlier initiated large copy is completed. this is bad for the user experience. the user shouldn't be forced to manually decide a serial order for copys in order to be able to get the much smaller copy to occur in a timely fashion.

I therefore suggest, at a minimum, that there be an option to disable copy queuing independent of the copy pausing feature.

or, if it's felt that the two features are largely expected to be enabled or disabled together, there could be a single option that disables both.

if the option isn't combined, there could be an additional option to disable copy pausing, as it's usefulness is relatively obscure and it just adds clutter/noise to the dialog for many users.

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/48917448-option-s-to-disable-queuing-and-or-pausing?utm_campaign=plugin&utm_content=tracker%2F651521&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F651521&utm_medium=issues&utm_source=github).
lukefromdc commented 5 years ago

While we do not now have code to turn this on and off as a whole, it is of course possible to manually start queued jobs from the dialog. Ideal would be a gsetting key to enable or disable the entire feature, and a button on the copy dialog to enable to disable it.

A major reason this feature was implementedm(and the reason I worked on it) is probably what happens in multiple-device copy jobs without it: If the disk I/O is being saturated by a long copy job, I used to see slowdowns of as much as 90% if I forgot about that job and started a second copy job on the same devices. Worst of all, that slowdown could be persistant even after the second job finished, and interrupting a job proceeding at a snail's pace guaranteed at least one corrupted file (the one partially copied) and finding it could be difficult in a large, partially copied directory. Copying large directories (as in making backups) was a real headache without this.

One general limitation on adding features and options is this: they need to be discoverable (hence the value of a button on the dialog), they need to not be so complex as to confuse new users, and the sum total of all features and options should not make the whole program too heavy. In this case, the gsetting to turn it on and off would be a minimal amount of code compared to that needed for the overall feature.