summaryrefslogtreecommitdiff
path: root/ui/gtk.c
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2013-03-15 15:45:54 +0100
committerGerd Hoffmann <kraxel@redhat.com>2013-04-16 09:26:20 +0200
commit284d1c6b3bf4ece6278f4b9831c7192e3777290c (patch)
treea768e1d5c63c5404f0c239b1488bc2935775f35c /ui/gtk.c
parent81c0d5a66295024d0a42e3d28efcd102a32f93c3 (diff)
downloadqemu-284d1c6b3bf4ece6278f4b9831c7192e3777290c.tar.gz
console: allow pinning displaychangelisteners to consoles
DisplayChangeListener gets a new QemuConsole field, which can be set to non-NULL before registering. This will pin the QemuConsole, so that particular DisplayChangeListener will not follow console switches. spice+gtk (which don't support text console input anyway) are switched over to be pinned to console 0, which usually is the graphical display. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'ui/gtk.c')
-rw-r--r--ui/gtk.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ui/gtk.c b/ui/gtk.c
index d0e444cece..e9ebbd3cbf 100644
--- a/ui/gtk.c
+++ b/ui/gtk.c
@@ -327,7 +327,7 @@ static void gd_update(DisplayChangeListener *dcl,
static void gd_refresh(DisplayChangeListener *dcl)
{
- graphic_hw_update(NULL);
+ graphic_hw_update(dcl->con);
}
static void gd_switch(DisplayChangeListener *dcl,
@@ -1368,6 +1368,7 @@ void gtk_display_init(DisplayState *ds)
gtk_init(NULL, NULL);
s->dcl.ops = &dcl_ops;
+ s->dcl.con = qemu_console_lookup_by_index(0);
s->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
#if GTK_CHECK_VERSION(3, 2, 0)