merge r6895-6896 from trunk
authorDana Jansens <danakj@orodu.net>
Sat, 26 May 2007 19:51:20 +0000 (19:51 +0000)
committerDana Jansens <danakj@orodu.net>
Sat, 26 May 2007 19:51:20 +0000 (19:51 +0000)
openbox/frame.c

index a03a876afbf6b56439859f739b2510a41a78bba5..dbb17681601fb0249b9608650862c4aaa3675e50 100644 (file)
@@ -842,6 +842,11 @@ void frame_adjust_icon(ObFrame *self)
 
 void frame_grab_client(ObFrame *self)
 {
+    /* DO NOT map the client window here. we used to do that, but it is bogus.
+       we need to set up the client's dimensions and everything before we
+       send a mapnotify or we create race conditions.
+    */
+
     /* reparent the client to the frame */
     XReparentWindow(ob_display, self->client->window, self->plate, 0, 0);
 
@@ -860,9 +865,6 @@ void frame_grab_client(ObFrame *self)
        req's) the ButtonPress is to catch clicks on the client border */
     XSelectInput(ob_display, self->plate, PLATE_EVENTMASK);
 
-    /* map the client so it maps when the frame does */
-    XMapWindow(ob_display, self->client->window);
-
     /* set all the windows for the frame in the window_map */
     g_hash_table_insert(window_map, &self->window, self->client);
     g_hash_table_insert(window_map, &self->plate, self->client);