[virt-tools-list] [PATCH 08/12] Add spice_get_option_group()

Daniel P. Berrange berrange at redhat.com
Thu Jan 26 16:31:26 UTC 2012


On Tue, Dec 13, 2011 at 08:35:06PM +0100, Marc-André Lureau wrote:
> ---
>  configure.ac                    |    2 +-
>  src/remote-viewer-main.c        |    3 +++
>  src/virt-viewer-main.c          |   22 +++++++++++++---------
>  src/virt-viewer-session-spice.c |    6 +++++-
>  4 files changed, 22 insertions(+), 11 deletions(-)
> 
> diff --git a/configure.ac b/configure.ac
> index b2d7e8f..77838fe 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -16,7 +16,7 @@ LIBVIRT_REQUIRED="0.6.0"
>  GTK2_REQUIRED="2.12.0"
>  GTK3_REQUIRED="3.0"
>  GTK_VNC_REQUIRED="0.4.3"
> -SPICE_GTK_REQUIRED="0.6"
> +SPICE_GTK_REQUIRED="0.6.174"
>  
>  AC_PROG_CC
>  AM_PROG_CC_C_O
> diff --git a/src/remote-viewer-main.c b/src/remote-viewer-main.c
> index 2256528..89ef25f 100644
> --- a/src/remote-viewer-main.c
> +++ b/src/remote-viewer-main.c
> @@ -91,6 +91,9 @@ main(int argc, char **argv)
>  #ifdef HAVE_GTK_VNC
>  	g_option_context_add_group (context, vnc_display_get_option_group ());
>  #endif
> +#ifdef HAVE_SPICE_GTK
> +	g_option_context_add_group (context, spice_get_option_group ());
> +#endif
>  	g_option_context_parse (context, &argc, &argv, &error);
>  	if (error) {
>  		g_printerr("%s\n%s\n",
> diff --git a/src/virt-viewer-main.c b/src/virt-viewer-main.c
> index 7e2886b..c8e1082 100644
> --- a/src/virt-viewer-main.c
> +++ b/src/virt-viewer-main.c
> @@ -25,11 +25,12 @@
>  #include <gtk/gtk.h>
>  #include <glib/gi18n.h>
>  #include <stdlib.h>
> -
>  #ifdef HAVE_GTK_VNC
>  #include <vncdisplay.h>
>  #endif
> -
> +#ifdef HAVE_SPICE_GTK
> +#include <spice-option.h>
> +#endif
>  #include "virt-viewer.h"
>  
>  static void virt_viewer_version(void)
> @@ -58,21 +59,21 @@ int main(int argc, char **argv)
>  	const char *help_msg = N_("Run '" PACKAGE " --help' to see a full list of available command line options");
>  	const GOptionEntry options [] = {
>  		{ "version", 'V', G_OPTION_FLAG_NO_ARG, G_OPTION_ARG_CALLBACK,
> -		  virt_viewer_version, N_("display version information"), NULL },
> +		  virt_viewer_version, N_("Display version information"), NULL },
>  		{ "verbose", 'v', 0, G_OPTION_ARG_NONE, &verbose,
> -		  N_("display verbose information"), NULL },
> +		  N_("Display verbose information"), NULL },
>  		{ "direct", 'd', 0, G_OPTION_ARG_NONE, &direct,
> -		  N_("direct connection with no automatic tunnels"), NULL },
> +		  N_("Direct connection with no automatic tunnels"), NULL },
>  		{ "connect", 'c', 0, G_OPTION_ARG_STRING, &uri,
> -		  N_("connect to hypervisor"), "URI"},
> +		  N_("Connect to hypervisor"), "URI"},
>  		{ "wait", 'w', 0, G_OPTION_ARG_NONE, &waitvm,
> -		  N_("wait for domain to start"), NULL },
> +		  N_("Wait for domain to start"), NULL },
>  		{ "reconnect", 'r', 0, G_OPTION_ARG_NONE, &reconnect,
> -		  N_("reconnect to domain upon restart"), NULL },
> +		  N_("Reconnect to domain upon restart"), NULL },
>  		{ "zoom", 'z', 0, G_OPTION_ARG_INT, &zoom,
>  		  N_("Zoom level of window, in percentage"), "ZOOM" },
>  		{ "debug", '\0', 0, G_OPTION_ARG_NONE, &debug,
> -		  N_("display debugging information"), NULL },
> +		  N_("Display debugging information"), NULL },
>  		{ "full-screen", 'f', 0, G_OPTION_ARG_NONE, &fullscreen,
>  		  N_("Open in full screen mode"), NULL },
>  		{ G_OPTION_REMAINING, '\0', 0, G_OPTION_ARG_STRING_ARRAY, &args,

This hunk could be separate ideally.


> @@ -94,6 +95,9 @@ int main(int argc, char **argv)
>  #ifdef HAVE_GTK_VNC
>  	g_option_context_add_group (context, vnc_display_get_option_group ());
>  #endif
> +#ifdef HAVE_SPICE_GTK
> +	g_option_context_add_group (context, spice_get_option_group ());
> +#endif
>  	g_option_context_parse (context, &argc, &argv, &error);
>  	if (error) {
>  		g_printerr("%s\n%s\n",
> diff --git a/src/virt-viewer-session-spice.c b/src/virt-viewer-session-spice.c
> index f89d042..de2da3d 100644
> --- a/src/virt-viewer-session-spice.c
> +++ b/src/virt-viewer-session-spice.c
> @@ -23,9 +23,9 @@
>   */
>  
>  #include <spice-audio.h>
> -
>  #include <glib/gi18n.h>
>  
> +#include <spice-option.h>
>  #include "virt-viewer-util.h"
>  #include "virt-viewer-session-spice.h"
>  #include "virt-viewer-display-spice.h"
> @@ -154,7 +154,9 @@ virt_viewer_session_spice_close(VirtViewerSession *session)
>  		self->priv->audio = NULL;
>  	}
>  
> +	/* FIXME: version 0.7 of spice-gtk allows reuse of session */
>  	self->priv->session = spice_session_new();
> +	spice_set_session_option(self->priv->session);
>  	g_signal_connect(self->priv->session, "channel-new",
>  			 G_CALLBACK(virt_viewer_session_spice_channel_new), self);
>  	g_signal_connect(self->priv->session, "channel-destroy",
> @@ -351,6 +353,8 @@ virt_viewer_session_spice_new(void)
>  	self = g_object_new(VIRT_VIEWER_TYPE_SESSION_SPICE, NULL);
>  
>  	self->priv->session = spice_session_new();
> +	spice_set_session_option(self->priv->session);
> +
>  	g_signal_connect(self->priv->session, "channel-new",
>  			 G_CALLBACK(virt_viewer_session_spice_channel_new), self);
>  	g_signal_connect(self->priv->session, "channel-destroy",

ACK

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the virt-tools-list mailing list