From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49481) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VMbJX-0000f9-BL for qemu-devel@nongnu.org; Thu, 19 Sep 2013 06:18:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VMbJR-00076b-CL for qemu-devel@nongnu.org; Thu, 19 Sep 2013 06:18:23 -0400 Received: from mx1.redhat.com ([209.132.183.28]:35137) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VMbJR-00076X-4a for qemu-devel@nongnu.org; Thu, 19 Sep 2013 06:18:17 -0400 Message-ID: <1379585892.19425.31.camel@nilsson.home.kraxel.org> From: Gerd Hoffmann Date: Thu, 19 Sep 2013 12:18:12 +0200 In-Reply-To: References: <1379580693.19425.14.camel@nilsson.home.kraxel.org> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] Why X grabs for absolute windows? List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Burton, Ross" Cc: qemu-devel@nongnu.org Hi, > I put printf statements in ui/sdl.c in sdl_grab_start() and _end(), > and entering the window with either tablet or wacom-tablet causes > those methods to be called and grabs taken. To the user it doesn't > appear to be grabbed as the grab gets released when the pointer > reaches the edge, but the grab is still taken (and busy-loops if it > can't be taken successfully). > > This isn't at boot time, this is with a Linux guest running X. Ah, yes, there is also the keyboard grab, forgot about that one. That is needed to make sure the hotkeys go to the guest and don't get catched by apps such as the window manager on the host. Seems SDL has no separate keyboard/pointer grabs, so it grabs (all) input no matter what. Hmm. Any chance to try the gtk frontend? That should behave better, and it also has an option to turn off the keyboard grab. > Similar patches to SDL have been rejected before because it breaks the > API, so I don't see the bug in SDL getting resolved. Oh, didn't realize the bug is in the sdl library. That is a bit more complicated then. SDL would need a new grab function with proper error handling then. cheers, Gerd