My first try at this was buggy: it was restarting the window manager on
all configure events, whether or not they were on the root window.

The following fixes this misbehavior.
                        - Jim


jg@skiffcluster1:/home2/jg/blackbox/src$ cvs diff -u -r 1.2 Screen.cc blackbox.cc
Index: Screen.cc
=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d
RCS file: /cvs/blackbox/src/Screen.cc,v
retrieving revision 1.2
diff -u -r1.2 Screen.cc
--- Screen.cc   2001/03/17 08:14:30     1.2
+++ Screen.cc   2001/06/19 18:06:00
@@ -186,7 +186,7 @@

   event_mask =3d ColormapChangeMask | EnterWindowMask | PropertyChangeMask |
               SubstructureRedirectMask | KeyPressMask | KeyReleaseMask |
-              ButtonPressMask | ButtonReleaseMask;
+              ButtonPressMask | ButtonReleaseMask | StructureNotifyMask;

   XErrorHandler old =3d XSetErrorHandler((XErrorHandler) anotherWMRunning);
   XSelectInput(getBaseDisplay()->getXDisplay(), getRootWindow(), event_mask);
Index: blackbox.cc
=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d=3d
RCS file: /cvs/blackbox/src/blackbox.cc,v
retrieving revision 1.2
retrieving revision 1.4
diff -u -r1.2 -r1.4
--- blackbox.cc 2001/01/25 07:54:20     1.2
+++ blackbox.cc 2001/06/19 17:49:40     1.4
@@ -271,6 +271,19 @@
   }

   switch (e->type) {
+  case ConfigureNotify:
+    {
+      Window root;
+
+      LinkedListIterator<BScreen> it(screenList);
+
+       for (; it.current(); it++) {
+         BScreen *screen =3d it.current();
+         root =3d screen->getRootWindow();
+         if (root =3d=3d e->xconfigure.event)
+           blackbox->restart();
+       }
+    }
   case ButtonPress:
     {
       last_time =3d e->xbutton.time;
jg@skiffcluster1:/home2/jg/blackbox/src$

--
Jim Gettys
Technology and Corporate Development
Compaq Computer Corporation
[EMAIL PROTECTED]

Reply via email to