diff options
author | Jakub Janků <jjanku@redhat.com> | 2020-05-29 17:59:38 +0200 |
---|---|---|
committer | Frediano Ziglio <freddy77@gmail.com> | 2020-09-09 14:42:37 +0100 |
commit | f33d589d747f4f7ee6a1241c344ca611a36e9c71 (patch) | |
tree | 2ec0b0753a1f903dbf513002408cf46485f7b9cf /meson.build | |
parent | 996bfb48dc5d1d17bb56b4936f79d8705bcd5c48 (diff) |
clipboard: enable copying files to guest using webdav
When an app advertises the "text/uri-list" target, the user
probably wants to copy/move files. Spice-gtk then sends
a grab message to the vdagent advertising the
VD_AGENT_CLIPBOARD_FILE_LIST type.
Vdagent can then request clipboard data in this type.
Spice-gtk tries to talk to the app that owns the clipboard
in its native format in order to determine the preferred
file operation (copy X move).
For GNOME Nautilus, that's simply "UTF8_TEXT",
for KDE Dolphin, "application/x-kde-cutselection".
Otherwise the generic "text/uri-list" is used that does not
provide any additional information.
Once the uri list is obtained from the app, spice-gtk
creates a unique virtual dir in the ".spice-clipboard"
directory that is designated for this purpose.
Each file is attached inside this virtual dir using
phodav_virtual_dir_attach_real_child(), see phodav API
for details.
A list of paths in the phodav server is then sent to vdagent,
as specified in the spice-protocol.
Such path can for example look like this:
/.spice-clipboard/b8f0249c-082a-4da9-9a38-2de3237a66f0/file
It is up to the vdagent to ensure that the spice shared folder
is accessible and to set the clipboard data in a format that
other apps understand.
This requires new phodav with PhodavVirtualDir API.
Signed-off-by: Jakub Janků <jjanku@redhat.com>
Acked-by: Frediano Ziglio <fziglio@redhat.com>
Diffstat (limited to 'meson.build')
-rw-r--r-- | meson.build | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/meson.build b/meson.build index 7ade460..e43139e 100644 --- a/meson.build +++ b/meson.build @@ -33,7 +33,7 @@ spice_glib_deps = [] spice_gtk_deps = [] spice_wayland_deps = [] spice_acl_deps = [] -spice_protocol_version = '0.14.2' +spice_protocol_version = '0.14.3' # # Set up subprojects |