[Spice-devel] [PATCH] vd_agent: add protocol messages for clipboard/selection-owner model
Alexander Larsson
alexl at redhat.com
Wed Sep 22 01:53:34 PDT 2010
On Tue, 2010-09-21 at 13:54 +0200, Hans de Goede wrote:
> Hi,
>
> On 09/21/2010 09:31 AM, Arnon Gilboa wrote:
> > pasting clipboard data is now "only-by-demand" from both sides (client and agent), whose behavior is symmetric.
> >
> > -VD_AGENT_CLIPBOARD_GRAB(type) - tell the other side that an application in our side ("we") got ownership of the clipboard.
> > -VD_AGENT_CLIPBOARD_REQUEST(type) - after we know the other side owns the clipboard (GRAB received), we notify the os we are the owner. when we are asked by the os/app for the clipboard data, we send this REQUEST msg to the other side.
> > -VD_AGENT_CLIPBOARD(type, data) - the existing message for sending the clipboard, is now sent only in response to REQUEST.
> > -VD_AGENT_CLIPBOARD_RELEASE - tell the other side that we are no longer the owner of the clipboard (e.g. the owner app was closed).
> >
> > this patch will be followed by agent& client patches handling the above messages.
> > ---
> > spice/vd_agent.h | 13 ++++++++++++-
> > 1 files changed, 12 insertions(+), 1 deletions(-)
> >
> > diff --git a/spice/vd_agent.h b/spice/vd_agent.h
> > index 9e5adec..0da23aa 100644
> > --- a/spice/vd_agent.h
> > +++ b/spice/vd_agent.h
> > @@ -65,6 +65,9 @@ enum {
> > VD_AGENT_CLIPBOARD,
> > VD_AGENT_DISPLAY_CONFIG,
> > VD_AGENT_ANNOUNCE_CAPABILITIES,
> > + VD_AGENT_CLIPBOARD_GRAB,
> > + VD_AGENT_CLIPBOARD_REQUEST,
> > + VD_AGENT_CLIPBOARD_RELEASE,
> > VD_AGENT_END_MESSAGE,
> > };
> >
> > @@ -121,7 +124,6 @@ enum {
> > VD_AGENT_ERROR,
> > };
> >
> > -//FIXME: size required?
> > typedef struct SPICE_ATTR_PACKED VDAgentClipboard {
> > uint32_t type;
> > uint8_t data[0];
> > @@ -129,8 +131,17 @@ typedef struct SPICE_ATTR_PACKED VDAgentClipboard {
>
> > enum {
> > VD_AGENT_CLIPBOARD_UTF8_TEXT = 1,
> > + VD_AGENT_CLIPBOARD_BITMAP,
> > };
> >
>
> Hmm, I'm not sure about this bit, wouldn't it be better to
> use a string with a mimetype in there, that brings us much
> larger flexibility. I think this is esp. usefull when the
> guest as and the client os are the same os, then
> copying of all kind of things could be .
Not sure about this, if we want full compatibility with same-os cut and
paste we need more features anyway, like multiple formats. I think its
more important to allow some common subset of clipboard types to work
across os types than supporting all native types.
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Alexander Larsson Red Hat, Inc
alexl at redhat.com alexander.larsson at gmail.com
He's a shy Amish sorceror trapped in a world he never made. She's a
disco-crazy Buddhist former first lady from a secret island of warrior women.
They fight crime!
More information about the Spice-devel
mailing list