All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: qemu-devel@nongnu.org
Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>,
	Gerd Hoffmann <kraxel@redhat.com>
Subject: [Qemu-devel] [PULL 06/11] sdl2: set window ID
Date: Wed,  4 Jan 2017 12:21:18 +0100	[thread overview]
Message-ID: <1483528883-1753-7-git-send-email-kraxel@redhat.com> (raw)
In-Reply-To: <1483528883-1753-1-git-send-email-kraxel@redhat.com>

From: Samuel Thibault <samuel.thibault@ens-lyon.org>

This uses the console API to record the window ID of the SDL2 windows.

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Message-id: 20161221003806.22412-4-samuel.thibault@ens-lyon.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 ui/sdl2.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/ui/sdl2.c b/ui/sdl2.c
index 30d2a3c..9a79b17 100644
--- a/ui/sdl2.c
+++ b/ui/sdl2.c
@@ -761,6 +761,7 @@ void sdl_display_init(DisplayState *ds, int full_screen, int no_frame)
     uint8_t data = 0;
     char *filename;
     int i;
+    SDL_SysWMinfo info;
 
     if (no_frame) {
         gui_noframe = 1;
@@ -786,6 +787,8 @@ void sdl_display_init(DisplayState *ds, int full_screen, int no_frame)
         exit(1);
     }
     SDL_SetHint(SDL_HINT_GRAB_KEYBOARD, "1");
+    memset(&info, 0, sizeof(info));
+    SDL_VERSION(&info.version);
 
     for (i = 0;; i++) {
         QemuConsole *con = qemu_console_lookup_by_index(i);
@@ -813,6 +816,10 @@ void sdl_display_init(DisplayState *ds, int full_screen, int no_frame)
 #endif
         sdl2_console[i].dcl.con = con;
         register_displaychangelistener(&sdl2_console[i].dcl);
+
+        if (SDL_GetWindowWMInfo(sdl2_console[i].real_window, &info)) {
+            qemu_console_set_window_id(con, info.info.x11.window);
+        }
     }
 
     /* Load a 32x32x4 image. White pixels are transparent. */
-- 
1.8.3.1

  parent reply	other threads:[~2017-01-04 11:21 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-04 11:21 [Qemu-devel] [PULL 00/11] ui patch queue Gerd Hoffmann
2017-01-04 11:21 ` [Qemu-devel] [PULL 01/11] ui/gtk: fix crash at startup when no console is available Gerd Hoffmann
2017-01-04 11:21 ` [Qemu-devel] [PULL 02/11] ui: use evdev keymap when running under wayland Gerd Hoffmann
2017-01-04 11:21 ` [Qemu-devel] [PULL 03/11] ps2: Fix lost scancodes by recent changes Gerd Hoffmann
2017-01-04 11:21 ` [Qemu-devel] [PULL 04/11] console: add API to get underlying gui window ID Gerd Hoffmann
2017-01-04 11:21 ` [Qemu-devel] [PULL 05/11] console: move window ID code from baum to sdl Gerd Hoffmann
2017-01-04 11:21 ` Gerd Hoffmann [this message]
2017-01-04 11:21 ` [Qemu-devel] [PULL 07/11] egl-helpers: Change file licensing to LGPLv2 Gerd Hoffmann
2017-01-04 11:21 ` [Qemu-devel] [PULL 08/11] gtk: avoid oob array access Gerd Hoffmann
2017-01-04 11:21 ` [Qemu-devel] [PULL 09/11] ui: drop unused MOUSE_EVENT_WHEEL{UP, DN} defines Gerd Hoffmann
2017-01-04 11:21 ` [Qemu-devel] [PULL 10/11] ui/vnc: Fix problem with sending too many bytes as server name Gerd Hoffmann
2017-01-04 11:21 ` [Qemu-devel] [PULL 11/11] curses: Fix compiler warnings (Mingw-w64 redefinition of macro KEY_EVENT) Gerd Hoffmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1483528883-1753-7-git-send-email-kraxel@redhat.com \
    --to=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=samuel.thibault@ens-lyon.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.