Date: Mon, 11 Oct 2010 16:57:16 +0200 From: Giuseppe Pagnoni <gpagnoni@gmail.com> To: Giuseppe Pagnoni <gpagnoni@gmail.com>, freebsd-questions@freebsd.org, freebsd-x11@freebsd.org Subject: Re: Xorg 7.5 and OpenMotif: mouse stuck in box Message-ID: <AANLkTimHmoYE2tw6BrS2661pbX1GAqfywsOE6Bh2QW%2Bj@mail.gmail.com> In-Reply-To: <20101011140730.GA81063@itcom245.staff.itd.umich.edu> References: <20101011140730.GA81063@itcom245.staff.itd.umich.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
Dear William, thank you very much for your reply, it does seem to be the same type of bug. However, and I apologize for being dense here, it is not immediate to me how to proceed practically to apply the patch from within the ports framework. Also, I still wonder why the patch hasn't been incorporated in the tree given that the bug is known.... thanks again giuseppe On Mon, Oct 11, 2010 at 4:07 PM, William Bulley <web@umich.edu> wrote: > > Giuseppe Pagnoni wrote: >> >> I am resending this because it seems to me a really critical bug >> (prevents you from using OpenMotif or lesstif applications), but >> apparently nothing has been changed since last july. =A0Upgrading xorg >> to 1.7.7 does fix the problem, but I wonder if this may cause >> dependency problems in the ports tree. =A0Also, if this is the correct >> fix, is there a reason why it hasn't been integrated in the ports yet? >> >> thanks again >> >> giuseppe >> >> >>>> >> I am having a problem with xorg 1.7.5 and OpenMotif resulting in the >> mouse being stuck in certain areas of the Motif windows that are >> supposed to open dialog boxes when right-clicked. =A0I noticed that >> somebody else reported the problem already in this list, and that it >> seems to have been fixed in xorg 1.7.7. =A0However xorg 1.7.7 is not yet >> available in the ports tree, nor it looks like a patch is in for the >> current version (I tried to recompile xorg today after a port tree >> update). =A0Is manually compiling Xorg the only solution right now? >> >> thanks in advance for any advice >> >> giuseppe >> >> >>>>> > > This is what I found recently. =A0Hope this helps you. > > ----- Forwarded message from William Bulley <web@umich.edu> ----- > > To: FreeBSD Questions <freebsd-questions@freebsd.org> > From: William Bulley <web@umich.edu> > Date: Thu, 2 Sep 2010 11:31:15 -0400 > Subject: SOLVED: serious (for me) Xorg 7.5 mouse/kbd problem in 8.1-STABL= E > Cc: x11@freebsd.org, steve@freebsd.org > > See below for details of solution. > > ----- Forwarded message from William Bulley <web@umich.edu> ----- > > To: FreeBSD Questions <freebsd-questions@freebsd.org> > From: William Bulley <web@umich.edu> > Date: Wed, 25 Aug 2010 07:38:34 -0400 > Subject: serious (for me) Xorg 7.5 mouse/kbd problem in 8.1-STABLE > > For years I have run Open-Motif on FreeBSD without issue. > > I use a USB keyboard and a USB three button mouse attached to a Dell > Optiplex 960. =A0This combination has worked fine for the past year. > > This week I upgraded from 8.0-STABLE circa January 2010 to 8.1-STABLE. > I do this by doing a buildworld/installworld sequence after csup-ing > stable-supfile and rebooting. =A0In this case I also pkg_deleted all of > my ports and am rebuilding them from source. =A0Building Xorg is one of > the very first ports I attempt since I prefer to work in xterms not > virtual terminals. > > This upgrade moved me from Xorg 7.3 to Xorg 7.5, but Open-Motif stayed > the same - open-motif-2.2.3_6 - it hasn't changed in years. > > After building Xorg, as root, I ran the "Xorg -configure" command to > generate my xorg.conf.new file. =A0Since a working /etc/X11/xorg.conf > file was still around after the upgrade from 8.0-STABLE/Xorg 7.3, I > felt no need to change anything in that file (later file comparisons > confirmed that nothing had changed). > > My only relevant additions to /etc/X11/xorg.conf are these: > > =A0 Section "ServerFlags" > =A0 =A0 =A0 =A0Option =A0"AutoAddDevices" "off" > =A0 =A0 =A0 =A0Option =A0"DontZap" "false" > =A0 EndSection > > In my /etc/rc.conf file I have dbus and hald enabled, and that has > not changed since the beginning of 2010 after the confusion abated. > > As a normal user, I start Xorg using /usr/local/bin/xinit as always. > I have several xterms configured in my ~/.xinitrc file. =A0All those > came up in the correct location and state. =A0I was able to open those > that started in iconic mode. =A0In an open/raised xterm I could enter > carriage returns and see my shell prompt move down the window. =A0But > when I tried to close/minimize an open/raised xterm, things failed. > > I use the following keyboard/mouse combination (configured in my > .mwmrc file) to close (minimize) an xterm (and other applications): > > =A0 Shift =A0 <Btn3Click> =A0 =A0 window =A0 =A0 =A0 =A0 =A0f.minimize > > This is also unchanged for some years. =A0This particular setting has > no bearing on the problem I came across yesterday. =A0I merely state > it for the record. =A0However, this configuration triggers the "bug". > > The problem is as soon as I use that Shift/Btn3Click combination, > my arrow cursor disappears, then I cannot move to or select other > xterms - I am frozen, or locked, into the xterm I was trying to > close/minimize. =A0All I can do at this point is to kill(1) the > /usr/local/bin/xinit command to return to the virtual terminal > where I launched my Xorg session. > > I am now reluctantly using the good old /usr/local/bin/twm which > is always built when Xorg is built from source. =A0I am at a loss > as to what to look for next. =A0I suspect Xorg, or the keyboard and > mouse driver, not the video driver, that came with. =A0It might be > a problem with hald(8), but again, I don't know how to debug this. > > Any help with this very odd bug would be greatly appreciated. > > ----- End forwarded message ----- > > This problem is known (and fixed) in newer versions of xorg-server. > > See this URL for details of the problem. > > =A0 <http://cgit.freedesktop.org/xorg/xserver/commit/?id=3D1884db430a5680= e37e94726dff46686e2218d525> > > I have also attached the changes I made to the dit/events.c file. > > After rebuilding xorg-server with those patches, the Open Motif > (mwm) window manager now works with the above minimize keyboard > and mouse squence. =A0Thanks for all the help. > > Regards, > > web... > > -- > William Bulley =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 Email: web@umich.e= du > > 72 characters width template ----------------------------------------->| > > > =A0 =A0for (; grab; grab =3D grab->next) > =A0 =A0{ > =A0 =A0 =A0 =A0DeviceIntPtr =A0 =A0gdev; > =A0 =A0 =A0 =A0XkbSrvInfoPtr =A0 xkbi =3D NULL; > /* 3471 Mask =A0 =A0 =A0 =A0 =A0 =A0mask =3D 0; */ > > =A0 =A0 =A0 =A0gdev=3D grab->modifierDevice; > > > =A0=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*= =3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D > > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0} > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0xE =3D &core; > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0count =3D 1; > /* 3586 =A0 =A0 =A0 =A0 mask =3D grab->eventMask; */ > =A0 =A0 =A0 =A0 =A0 =A0} else if (match & XI2_MATCH) > =A0 =A0 =A0 =A0 =A0 =A0{ > > > =A0=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*= =3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D > > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0count =3D 1; > > /* 3599 =A0 =A0 =A0 =A0 =A0* FIXME: EventToXI2 returns NULL for enter eve= nts, so > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 * dereferencing the event is bad. Interna= l event types are > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 * aligned with core events, so the else c= lause is valid. > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 * long-term we should use internal events= for enter/focus > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 * as well * > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0if (xE) > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0mask =3D grab->xi2mask[device->id]= [((xGenericEvent*)xE)->evtype/8]; > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0else if (event->type =3D=3D XI_Enter || ev= ent->type =3D=3D XI_FocusIn) > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0mask =3D grab->xi2mask[device->id]= [event->type/8]; */ > =A0 =A0 =A0 =A0 =A0 =A0} else > =A0 =A0 =A0 =A0 =A0 =A0{ > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0rc =3D EventToXI((InternalEvent*)event, &x= E, &count); > > > =A0=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*= =3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D > > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0"(%d, %d).= \n", device->name, event->type, rc); > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0continue; > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0} > /* 3618 =A0 =A0 =A0 =A0 mask =3D grab->eventMask; */ > =A0 =A0 =A0 =A0 =A0 =A0} > > =A0 =A0 =A0 =A0 =A0 =A0(*grabinfo->ActivateGrab)(device, grab, currentTim= e, TRUE); > > > =A0=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*= =3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D*=3D > > > =A0 =A0 =A0 =A0 =A0 =A0if (xE) > =A0 =A0 =A0 =A0 =A0 =A0{ > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0FixUpEventFromWindow(device, xE, grab->win= dow, None, TRUE); > > /* 3627 =A0 =A0 =A0 =A0 =A0 =A0TryClientEvents(rClient(grab), device, xE,= count, mask, */ > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 TryClientEvents(rClient(grab), device= , xE, count, > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 GetEventFilter(device, xE), > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 GetEventFilter(device, xE), grab); > =A0 =A0 =A0 =A0 =A0 =A0} > > =A0 =A0 =A0 =A0 =A0 =A0if (grabinfo->sync.state =3D=3D FROZEN_NO_EVENT) > > ----- End forwarded message ----- > > Regards, > > web... > > -- > William Bulley =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 Email: web@umich.e= du > > 72 characters width template ----------------------------------------->| > --=20 Giuseppe Pagnoni Dip. Scienze Biomediche Sezione Fisiologia Univ. di Modena e Reggio Emilia Via Campi 287 I-41125 Modena, Italy Tel: +39-059-205-5742 Fax: +39-059-205-5336
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTimHmoYE2tw6BrS2661pbX1GAqfywsOE6Bh2QW%2Bj>