[Spice-devel] [PATCH spice-gtk 5/5] main: send max-clipboard to agent
Jonathon Jongsma
jjongsma at redhat.com
Wed Nov 6 15:11:36 PST 2013
Is this meant to be a one-time-only configuration value? Or should we also send it down whenever the 'max-clipboard' property changes?
----- Original Message -----
> From: "Marc-André Lureau" <marcandre.lureau at gmail.com>
> To: spice-devel at freedesktop.org
> Sent: Wednesday, November 6, 2013 3:25:12 PM
> Subject: [Spice-devel] [PATCH spice-gtk 5/5] main: send max-clipboard to agent
>
> From: Marc-André Lureau <marcandre.lureau at redhat.com>
>
> Send configured max-clipboard size to the agent, after receiving agent
> capabilities.
>
> See also spice-protocol patch description:
> http://lists.freedesktop.org/archives/spice-devel/2013-November/015254.html
> ---
> gtk/channel-main.c | 19 ++++++++++++++++++-
> 1 file changed, 18 insertions(+), 1 deletion(-)
>
> diff --git a/gtk/channel-main.c b/gtk/channel-main.c
> index 2887208..d4a0246 100644
> --- a/gtk/channel-main.c
> +++ b/gtk/channel-main.c
> @@ -196,6 +196,7 @@ static const char *agent_caps[] = {
> [ VD_AGENT_CAP_SPARSE_MONITORS_CONFIG ] = "sparse monitors",
> [ VD_AGENT_CAP_GUEST_LINEEND_LF ] = "line-end lf",
> [ VD_AGENT_CAP_GUEST_LINEEND_CRLF ] = "line-end crlf",
> + [ VD_AGENT_CAP_MAX_CLIPBOARD ] = "max-clipboard",
> };
> #define NAME(_a, _i) ((_i) < SPICE_N_ELEMENTS(_a) ? (_a[(_i)] ?: "?") : "?")
>
> @@ -1210,6 +1211,16 @@ static void agent_display_config(SpiceMainChannel
> *channel)
>
> /* any context: the message is not flushed immediately,
> you can wakeup() the channel coroutine or send_msg_queue() */
> +static void agent_max_clipboard(SpiceMainChannel *channel)
> +{
> + SpiceMainChannelPrivate *c = channel->priv;
> + VDAgentMaxClipboard msg = { .max = c->max_clipboard};
> +
> + agent_msg_queue(channel, VD_AGENT_MAX_CLIPBOARD,
> sizeof(VDAgentMaxClipboard), &msg);
> +}
> +
> +/* any context: the message is not flushed immediately,
> + you can wakeup() the channel coroutine or send_msg_queue() */
> static void agent_announce_caps(SpiceMainChannel *channel)
> {
> SpiceMainChannelPrivate *c = channel->priv;
> @@ -1849,9 +1860,15 @@ static void main_agent_handle_msg(SpiceChannel
> *channel,
> if (test_agent_cap(self, VD_AGENT_CAP_DISPLAY_CONFIG) &&
> !c->agent_display_config_sent) {
> agent_display_config(self);
> - agent_send_msg_queue(self);
> c->agent_display_config_sent = true;
> }
> +
> + if (test_agent_cap(self, VD_AGENT_CAP_MAX_CLIPBOARD)) {
> + agent_max_clipboard(self);
> + }
> +
> + agent_send_msg_queue(self);
> +
> break;
> }
> case VD_AGENT_CLIPBOARD:
> --
> 1.8.3.1
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
>
More information about the Spice-devel
mailing list