This program is gwm, the Gratuitous Window Manager (for the X Window System). This release is for gwm-basic, a stripped-down variant which aims to be more an example of how to implement a window manager using the XCB library than a fully functional and practical manager. Features: * Minimal resource requirements. gwm is very light on CPU and memory usage. (This is partly because of its modest goals, and partly because XCB is also very efficient.) * Almost entirely asynchronous operation. gwm tries very hard to process events, replies and errors in the order they arrive, not merely whichever order would be the most convenient (such as waiting for the reply to a request which has only just been sent). This is largely a consequence of XCB making this approach much more feasible than essentially all preceding X client libraries did. * ICCCM 2.0 compliance. * Support for multiple screens per display. Deliberately omitted features: * Any sophisticated focus model, keyboard/mouse bindings, or window decorations. Basic placeholder code (focus follows mouse, simple bindings, and core protocol frame decoration) has been implemented to indicate where replacements should be made, and so that basic functionality will work. * Configuration handling. * EWMH hints, or any others beyond ICCCM. * Recognition and support for X extensions. (Actually, the SHAPE extension will be supported if present: this is partly as an example of how to handle extensions, and partly because SHAPEd windows work very badly with reparenting but non-SHAPEd window managers.) See the SHAPE handling code for a demonstration of how to add other extensions. Unforunately omitted features: * Any sort of documentation. Sorry about that.