diff options
author | Lukas Venhoda <lvenhoda@redhat.com> | 2015-04-29 17:39:21 +0200 |
---|---|---|
committer | Pavel Grunt <pgrunt@redhat.com> | 2015-05-21 13:06:30 +0200 |
commit | 772698a8a6e34c0b5051a3519f9284313426c1ca (patch) | |
tree | 6812071f28ad6b488c36ba077b45799ad6d7e35f /src/virt-viewer-display-vnc.c | |
parent | 35c5f7f745fe32b4843c43d9dc34d59e13c867e8 (diff) | |
download | virt-viewer-772698a8a6e34c0b5051a3519f9284313426c1ca.tar.gz virt-viewer-772698a8a6e34c0b5051a3519f9284313426c1ca.tar.xz virt-viewer-772698a8a6e34c0b5051a3519f9284313426c1ca.zip |
virt-viewer-display-vnc: Set guest name when using VNC
If it's not already set, set guest name field in virt-viewer-app when using VNC.
Wait for VNC to be initialized (virt_viewer_display_vnc_initialized()).
In this callback get field guest name from app and check whether it
was already set before (FE from libvirt).
If not, set the guest name to name provided by VNC from
vnc_display_get_name().
This fill fix issue in remote-viewer: Guest name is Unknown when using VNC.
Diffstat (limited to 'src/virt-viewer-display-vnc.c')
-rw-r--r-- | src/virt-viewer-display-vnc.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/virt-viewer-display-vnc.c b/src/virt-viewer-display-vnc.c index 6605b1b..5b57a32 100644 --- a/src/virt-viewer-display-vnc.c +++ b/src/virt-viewer-display-vnc.c @@ -116,9 +116,23 @@ static void virt_viewer_display_vnc_initialized(VncDisplay *vnc G_GNUC_UNUSED, VirtViewerDisplay *display) { + gchar *name = NULL; + VirtViewerSession *session = virt_viewer_display_get_session(display); + VirtViewerApp *app = virt_viewer_session_get_app(session); + + g_object_get(app, "guest-name", &name, NULL); + if (name == NULL || *name == '\0') { + const gchar * vnc_name = vnc_display_get_name(vnc); + if (vnc_name != NULL) { + g_object_set(app, "guest-name", vnc_name, NULL); + } + } + virt_viewer_display_set_show_hint(display, VIRT_VIEWER_DISPLAY_SHOW_HINT_READY, TRUE); g_signal_emit_by_name(display, "display-desktop-resize"); + + g_free(name); } static void |