Happy New Year! And the new year brings new updates on the gvfs MTP front. I received a bunch of useful feedback from the gvfs maintainers last month, which I was finally able to get time to sit down and address over the last few days. Accordingly, I’ve made a series of updates that fix a variety of things, from small memory leaks all the way to, finally, implementing the right way to tell Nautilus to do directory downloads/uploads in the right way (You’ve got to return a specific error code) – which fixes the one remaining functional gap in the code. Uploading a directory is still not fully working as I need to handle the way Nautilus ends up referring to uploaded directories by name when trying to upload their contents. Right now there’s no logic to remap the name to the MTP entity ID so the file uploads fail, but I know what has to be done.
I think we’re nearing the finish line, with respect to getting this merged upstream. *phew*
As always, the easiest way to try the code out is to install the packages from my PPA. I have also put a build of libmtp 1.1.5 in there so that unlock events and thumbnails work out of the box too.