[virt-tools-list] [PATCH virt-viewer 14/19] Use SpiceDisplay:ready property instead of channel mark
Christophe Fergeau
cfergeau at redhat.com
Tue Jul 17 14:37:00 UTC 2012
ACK
On Mon, Jul 16, 2012 at 06:57:49PM +0200, Marc-André Lureau wrote:
> The display can now check several conditions before the display can be
> shown, use that instead of display mark, which was not high-level
> enough.
> ---
> src/virt-viewer-display-spice.c | 38 +++++++++++++++-----------------------
> 1 file changed, 15 insertions(+), 23 deletions(-)
>
> diff --git a/src/virt-viewer-display-spice.c b/src/virt-viewer-display-spice.c
> index 101abc5..53430dd 100644
> --- a/src/virt-viewer-display-spice.c
> +++ b/src/virt-viewer-display-spice.c
> @@ -122,31 +122,25 @@ virt_viewer_display_spice_get_pixbuf(VirtViewerDisplay *display)
> }
>
> static void
> -display_mark(SpiceChannel *channel G_GNUC_UNUSED,
> - gint mark,
> - VirtViewerDisplay *display)
> +display_ready(GObject *display,
> + GParamSpec *pspec G_GNUC_UNUSED,
> + VirtViewerDisplay *self)
> {
> - DEBUG_LOG("Toggle monitor visibility %p %d", channel, mark);
> + guint hint;
> + gboolean ready;
>
> - virt_viewer_display_set_show_hint(display, mark);
> -}
> + g_object_get(display, "ready", &ready, NULL);
> + DEBUG_LOG("display %p ready:%d", self, ready);
>
> -static void
> -primary_create(SpiceChannel *channel G_GNUC_UNUSED,
> - gint format G_GNUC_UNUSED,
> - gint width,
> - gint height,
> - gint stride G_GNUC_UNUSED,
> - gint shmid G_GNUC_UNUSED,
> - gpointer imgdata G_GNUC_UNUSED,
> - VirtViewerDisplay *display)
> -{
> - DEBUG_LOG("spice desktop resize %dx%d", width, height);
> + hint = virt_viewer_display_get_show_hint(self);
> + if (ready)
> + hint |= VIRT_VIEWER_DISPLAY_SHOW_HINT_READY;
> + else
> + hint &= ~VIRT_VIEWER_DISPLAY_SHOW_HINT_READY;
>
> - virt_viewer_display_set_desktop_size(display, width, height);
> + virt_viewer_display_set_show_hint(self, hint);
> }
>
> -
> static void
> virt_viewer_display_spice_keyboard_grab(SpiceDisplay *display G_GNUC_UNUSED,
> int grabbed,
> @@ -239,10 +233,8 @@ virt_viewer_display_spice_new(VirtViewerSessionSpice *session,
> self->priv->display = spice_display_new(s, channelid);
> g_object_unref(s);
>
> - virt_viewer_signal_connect_object(channel, "display-primary-create",
> - G_CALLBACK(primary_create), self, 0);
> - virt_viewer_signal_connect_object(channel, "display-mark",
> - G_CALLBACK(display_mark), self, 0);
> + virt_viewer_signal_connect_object(self->priv->display, "notify::ready",
> + G_CALLBACK(display_ready), self, 0);
>
> gtk_container_add(GTK_CONTAINER(self), g_object_ref(self->priv->display));
> gtk_widget_show(GTK_WIDGET(self->priv->display));
> --
> 1.7.10.4
>
> _______________________________________________
> virt-tools-list mailing list
> virt-tools-list at redhat.com
> https://www.redhat.com/mailman/listinfo/virt-tools-list
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/virt-tools-list/attachments/20120717/6cc0d53c/attachment.sig>
More information about the virt-tools-list
mailing list