[comp.windows.x] two interesting bugs

jkh@VIOLET.BERKELEY.EDU (Jordan K. Hubbard) (12/17/87)

If someone is willing to help me a little with some interesting problems,
it would be much appreciated. I'm currently stumped and don't have
as much time as I'd like to work on them. 

They all pertain to my changed uwm, so you should get all the patches
(currently 1-5) applied before you look at the problems.

1. In DestroyTitle (TitleBar.c), I'm forced to reparent the "titled window"
back to root (which probably isn't correct) and remove it from the saveset
before I do a DestroyWindow on the title frame (called parent). If
I've read the documentation correctly, all I should have to do is delete
the parent and the fact that the titled window is in my SaveSet should
reparent it back to its closes living ancestor and remap it. Right?
Well, try removing the Reparent and RemoveFromSaveSet calls and see
what happens.

2. XTranslateCoordinates returns the "child" window information
correctly sometimes and sometimes it doesn't. Turn DEBUG on in
uwm.c and add a printf to print event_win as well (this has been
added in a subsequent patch). Put a "title" context action in your
.uwmrc (so that a passive grab is done on titlebars) and roam around
the screen clicking on titlebars. Sometimes the proper information will
be received (the event_win will contain the XID of the titlebar) and
sometimes the event_win will be the XID of the frame instead.

3. Finally, try iconifying a bunch of windows and restarting (f.restart)
the window manager. Some of your windows will disappear. sort of. Try
moving the mouse over the areas once occupied by the windows (not the
icons). surprise! Neat, huh? I suspect that this has something to do
with the stuff in DestroyTitle, but I'm not sure.


I'd like to add that these are not necessarily bugs with X! I'm
not sure *who's* fault they are, so I appeal to the outside world. I've
been looking at this code too long and have become somewhat blind to
glaring errors.

I'd be happy to return the favor if you have some weird code as well!


					Jordan Hubbard
					jkh@violet.berkeley.edu