diff options
author | Philip Langdale <philipl@overt.org> | 2018-03-15 21:59:53 -0700 |
---|---|---|
committer | Philip Langdale <philipl@overt.org> | 2018-03-26 19:34:03 -0700 |
commit | c4cf671d1c845488d512b2cabac50fb49bf767d8 (patch) | |
tree | 04b2ec07c9e55998697b2f3066a4d560955a294b /daemon/gvfsbackendmtp.h | |
parent | 06c28a632d738b0141b619ea1c500d2563a20298 (diff) | |
download | gvfs-c4cf671d1c845488d512b2cabac50fb49bf767d8.tar.gz |
mtp: Implement support for move and copy operations
Android P has introduced support for these operations, and they
are useful - making device->device moves and copies much faster
and less vulnerable to messy failures.
After making the relevant changes in libmtp, I've now added
implementations here. The basic mechanics are simple, but we
need to include the precise handling of file vs directory
combinations that were first put together for the push operation.
The one main difference is that moves and copies of folders work
correctly, and these do not need to be decomposed.
Note that these operations provide no progress information (the
MTP spec does not provide for it), but they can take a long time,
especially for copies. This results in the client (eg: Nautilus)
spinning without progress reporting. Unfortunately, there's nothing
we can do; at least the operation is faster.
https://bugzilla.gnome.org/show_bug.cgi?id=794388
Diffstat (limited to 'daemon/gvfsbackendmtp.h')
-rw-r--r-- | daemon/gvfsbackendmtp.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/daemon/gvfsbackendmtp.h b/daemon/gvfsbackendmtp.h index 2f1b27a9..34e049f4 100644 --- a/daemon/gvfsbackendmtp.h +++ b/daemon/gvfsbackendmtp.h @@ -60,6 +60,8 @@ struct _GVfsBackendMtp gboolean android_extension; gboolean get_partial_object_capability; + gboolean move_object_capability; + gboolean copy_object_capability; #ifdef HAVE_LIBMTP_1_1_5 GThreadPool *event_pool; |