mike@faline.bellcore.com (Mike A. Caplinger) (07/13/87)
Is there some accepted way to write a Mac-style window manager in X? That is, each window would be surrounded by a border containing controls to move, resize, delete, and iconify that particular window. I've studied the X11 protocol, but still don't see any way to do this short of: 1) forcing each application to link against a standard interface package, which blows the whole notion of separate window managers out of the water, or 2) possibly keeping track of all subwindow moves and resizes and manipulating the window hierarchy so as to imbed a newly created window inside a window- manager window providing the border controls. Neither of these options seems attractive. Am I missing something obvious, or is this kind of interface just hard to implement in X? Certainly I know of no current window manager that behaves that way, and I can't say I'm happy with the current window managers. Mike Caplinger mike@bellcore.com
RWS@ZERMATT.LCS.MIT.EDU (Robert Scheifler) (07/15/87)
2) possibly keeping track of all subwindow moves and resizes and manipulating the window hierarchy so as to imbed a newly created window inside a window- manager window providing the border controls. This is essentially the right thing, and isn't as bad as you think. There are already several X11 managers that work this way.
jg@jumbo.dec.com (Jim Gettys) (07/15/87)
In article <684@faline.bellcore.com> mike@faline.bellcore.com (Mike A. Caplinger) writes: >Is there some accepted way to write a Mac-style window manager in X? >That is, each window would be surrounded by a border containing controls >to move, resize, delete, and iconify that particular window. I've studied >the X11 protocol, but still don't see any way to do this short of: > >1) forcing each application to link against a standard interface package, >which blows the whole notion of separate window managers out of the >water, or > >2) possibly keeping track of all subwindow moves and resizes and manipulating >the window hierarchy so as to imbed a newly created window inside a window- >manager window providing the border controls. I don't know how hard it is to implement (Hania Gajewska and Mark Manasse have been implementing it), but I am composing this response under V11 using a window manager which provides title bars, and various controls and icon management. It also controls the input focus. It is vaguely reminicent of the Mac (which is reminicent of the Xerox, etc..), so the answer is emphatically yes. A very simple subset prototype of this window manager is on the V11 beta distribution as "wm". You might look at it for ideas of how to use the V11 facilities. 2) is the correct approach, and the one used to implement this window manager. 1) is a very bad idea indeed.