[cvs.lp.se #8] f.warpring patch

From: Richard Levitte via RT (ctwm-bugs@free.lp.se)
Date: Fri Feb 28 2003 - 17:41:58 CET


It took me a while to understand what was wrong here... Patch applied as is, and committed.

This ticket is now resolved

> More info about this patch: http://www.cis.upenn.edu/~bjornk/ctwm/
>
> To apply this patch:
>
> 1) cd to your CTWM source directory and
> 2) Run 'patch -l -p3 < path_to_this_file'
> 3) Run 'make install'
>
> f.warpring patch:
> -----------------
> I think I've finally fixed the f.warpring problem. I did not want to
> get into the hairy code in HandleEnterNotify(), but I did realize that
> the reason the problem came up in the first place was that the code in
> iconmgr.c was set up to generate events when the icons in the icon
> manager were entered/exited. If we don't have IconManagerFocus enabled,
> there is no reason to generate the events that eventually (!) cause
> the problem. My patch will thus disable the creation of these events
> when IconManagerFocus is disabled.
>
> This seems to fix the problem, but I invite comments and corrections.
> My patch is included below.
>
> -------------------
> Bjorn Knutsson http://www.cis.upenn.edu/~bjornk/
>
> Patch against CTWM 3.6:
>
> diff -cwr /tmp/ctwm-3.6/iconmgr.c /usr/local/src/ctwm-3.6/iconmgr.c
> *** /tmp/ctwm-3.6/iconmgr.c 2001-12-11 10:38:52.000000000 -0500
> --- /usr/local/src/ctwm-3.6/iconmgr.c 2003-01-25 13:55:21.000000000 -0500
> ***************
> *** 634,642 ****
> --- 634,647 ----
> valuemask = (CWBackPixel | CWBorderPixel | CWEventMask | CWCursor);
> attributes.background_pixel = tmp->cp.back;
> attributes.border_pixel = tmp->cp.back;
> + if (Scr->IconManagerFocus) {
> attributes.event_mask = (KeyPressMask | ButtonPressMask |
> ButtonReleaseMask | ExposureMask |
> EnterWindowMask | LeaveWindowMask);
> + } else {
> + attributes.event_mask = (KeyPressMask | ButtonPressMask |
> + ButtonReleaseMask | ExposureMask);
> + }
> attributes.cursor = Scr->IconMgrCursor;
> tmp->w = XCreateWindow (dpy, ip->w, 0, 0, (unsigned int) 1,
> (unsigned int) h, (unsigned int) 0,



This archive was generated by hypermail 2.1.4 : Sat Mar 01 2003 - 06:45:04 CET