From owner-freebsd-ports-bugs@FreeBSD.ORG Fri Feb 13 15:20:01 2009 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 64D6E1065713 for ; Fri, 13 Feb 2009 15:20:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 3584D8FC1A for ; Fri, 13 Feb 2009 15:20:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n1DFK1iu077360 for ; Fri, 13 Feb 2009 15:20:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n1DFK19X077359; Fri, 13 Feb 2009 15:20:01 GMT (envelope-from gnats) Resent-Date: Fri, 13 Feb 2009 15:20:01 GMT Resent-Message-Id: <200902131520.n1DFK19X077359@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Harald Schmalzbauer Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3543D1065688 for ; Fri, 13 Feb 2009 15:15:39 +0000 (UTC) (envelope-from harry@omnilan.de) Received: from host.omnilan.net (host.omnilan.net [62.245.232.135]) by mx1.freebsd.org (Postfix) with ESMTP id B080E8FC1A for ; Fri, 13 Feb 2009 15:15:38 +0000 (UTC) (envelope-from harry@omnilan.de) Received: from tek.flintsbach.schmalzbauer.de (tek.flintsbach.schmalzbauer.de [172.21.2.3]) by host.omnilan.net (8.13.8/8.13.8) with ESMTP id n1DF3dwo026758 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 13 Feb 2009 16:03:44 +0100 (CET) (envelope-from harry@titan.flintsbach.schmalzbauer.de) Received: from titan.flintsbach.schmalzbauer.de (titan.flintsbach.schmalzbauer.de [IPv6:fec0::1:0:0:1:1]) by tek.flintsbach.schmalzbauer.de (8.13.8/8.13.8) with ESMTP id n1DF3db0010670 for ; Fri, 13 Feb 2009 16:03:39 +0100 (CET) (envelope-from harry@titan.flintsbach.schmalzbauer.de) Received: (from harry@localhost) by titan.flintsbach.schmalzbauer.de (8.14.3/8.14.3/Submit) id n1DF3dfE007410; Fri, 13 Feb 2009 16:03:39 +0100 (CET) (envelope-from harry) Message-Id: <200902131503.n1DF3dfE007410@titan.flintsbach.schmalzbauer.de> Date: Fri, 13 Feb 2009 16:03:39 +0100 (CET) From: Harald Schmalzbauer To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/131644: Xinerama mouse event (focus freeze) problem X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Harald Schmalzbauer List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 Feb 2009 15:20:04 -0000 >Number: 131644 >Category: ports >Synopsis: Xinerama mouse event (focus freeze) problem >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Feb 13 15:20:00 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Harald Schmalzbauer >Release: FreeBSD 7.1-STABLE i386 >Organization: OmniLAN >Environment: System: FreeBSD titan.flintsbach.schmalzbauer.de 7.1-STABLE FreeBSD 7.1-STABLE #3: Tue Feb 3 09:13:42 CET 2009 root@titan.flintsbach.schmalzbauer.de:/usr/obj/usr/src/sys/TITAN i386 >Description: When focus changings happen with windows on different monitors on a xinerama setup the mouse events get lost to the root window. For further details see this thread: http://bugs.freedesktop.org/show_bug.cgi?id=18668 >How-To-Repeat: Place two windows on two different monitors and frequently change the focus. After about 100 changes the mouse event's don't show any reaction any more. >Fix: Like the link above tells there is a problem in mipointer.c Create the following patch file in x11-servers/xorg-server/files/ patch-mipointer.c --- mi/mipointer.c.orig +++ mi/mipointer.c @@ -260,7 +260,14 @@ miPointerWarpCursor (pScreen, x, y) miPointer.pScreen = pScreen; } - if (changedScreen) + /* Don't call USFS if we use Xinerama, otherwise the root window is + * updated to the second screen, and we never receive any events. + * (FDO bug #18668) */ + if (changedScreen +#ifdef PANORAMIX + && noPanoramiXExtension +#endif + ) UpdateSpriteForScreen (pScreen) ; } >Release-Note: >Audit-Trail: >Unformatted: