At the moment, the Caja (the file manager) on Ubuntu MATE runs in a single process, which makes it unreliable when something causes the whole thing to freeze up temporarily or worst… crash!
It’s mildly a nuisance when all open windows are closed, a large file transfer is interrupted or other Caja windows are preventing others from actually doing anything else while something holds the whole thing up (I’m looking at you, sshfs mounted folders…)
Would it be possible to consider multi-processing / multi-threading Caja for individual open windows, the desktop and file transfers? It would definitely help off-load some of the processing so it doesn’t hang other usage.
Otherwise, Caja is like Windows Explorer when it comes to one little hiccup that causes the whole lot to go down.
Thanks for that pointer @wimpy. When you say “has been discussed up stream” do you mean that the Caja/MATE developers have already come together to discuss this direction?
Reported the issue here:
Some scenarios this would have been handy:
Yesterday, the “Open With” dialog somehow froze/crashed when I clicked “Open” → File transfer interrupted.
rsync was copying a large file over a sshfs mounted folder in /tmp, Caja just froze for ages when opening another folder while rsync was sending the large file. Neither of those folders were open.
Modal confirmation dialogs like “Replace this file?” or “Delete this?” prevent interaction with other windows, especially if they’re tucked away on different workspaces.