[comp.windows.x] Xt/Xaw/twm and multiple Displays

J.Crowcroft@ucl-cs.UUCP (05/30/89)

From: Jon Crowcroft <J.Crowcroft@uk.ac.ucl.cs>


I hope this is the right place for these comments - 
I have a lot of uses for
programs that run on many displays - it would seem that some sort of
discipline is required in making sure the various libs and
applications do the right thing when keeping track of windows on
multiple displays - one clue to problems is consideration of server
state versus application versus window manager...

1. Seems to me that some bugs are to do with static's being used a little
hairily: 

e.g. in
...lib/Xt/GCManager.c

XtGetGC

uses 
static Drawable GCparents[256]; /* static initialized to zero, K&R ss 4.9 */

but doesnt check whether the Drawable is on the same Display as 
cur-dpy,

so XCreateGC fails on a second display under certain circumstances...

2. in
...lib/Xaw/Simple.c and Scroll.c

the Realize routines rely on the Initialize routines or other
code to have set up Pixmap's for Cursors for the class, rather than 
this realization of the class.... This fails on the second display
again, because the lib has a reference to a GC that is only valid on
the first Display.

These would seem to be generic problems through the Intrinsics and
Athena Widget set - are they addressed by R4???

The twm problem i have been having is related, and is to do with event
Dispatching in an application on one machine being a client on many
servers - The Enter and Leave notify handlers refer to a single
Display (again a single global for twm) which causes confusion, since
they call XSetInputFocus with this Display when the event came from
another one...should use event.xany.display rather than single dpy...

If i want to post my attempts at fixes - whats the right list?
plus if i have a contrib application, where does that go to?

(sorry if i'm bothering list, just we are a bit far away in the 
net here...)

cheers

jon 

rws@EXPO.LCS.MIT.EDU (05/31/89)

    These would seem to be generic problems through the Intrinsics and
    Athena Widget set - are they addressed by R4???

I suspect most of the major multiple-display Intrinsics bugs are known about;
whether or not they'll be fixed in R4 is unknown at the present time.  You are
encouraged to report any bugs you know about to xbugs, to make sure they aren't
missed.  Multiple-display support for the Athena widgets is not currently a
priority, although we have done some basic groundwork to make the task easier.
Again, no commitments about R4 on this.  Again, you are encouraged to submit
bug reports.