X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fframe.c;h=991e9adc71872a38900362c81bcdc6daecb42b77;hb=f999797f01755dcb5de3db010ad282feb8e3ac37;hp=06b0117340bae7c3bce80030c5788935998d79ea;hpb=c018e212200dfece62b49c6ed385d379eb4e45e9;p=chaz%2Fopenbox diff --git a/openbox/frame.c b/openbox/frame.c index 06b01173..991e9adc 100644 --- a/openbox/frame.c +++ b/openbox/frame.c @@ -245,7 +245,7 @@ void frame_hide(ObFrame *self) { if (self->visible) { self->visible = FALSE; - self->client->ignore_unmaps += 2; + self->client->ignore_unmaps += 1; /* we unmap the client itself so that we can get MapRequest events, and because the ICCCM tells us to! */ XUnmapWindow(ob_display, self->window); @@ -498,6 +498,7 @@ void frame_adjust_focus(ObFrame *self, gboolean hilite) { self->focused = hilite; framerender_frame(self); + XFlush(ob_display); } void frame_adjust_title(ObFrame *self) @@ -531,11 +532,11 @@ void frame_grab_client(ObFrame *self, ObClient *client) req's) the ButtonPress is to catch clicks on the client border */ XSelectInput(ob_display, self->plate, PLATE_EVENTMASK); + frame_adjust_area(self, TRUE, TRUE, FALSE); + /* map the client so it maps when the frame does */ XMapWindow(ob_display, client->window); - frame_adjust_area(self, TRUE, TRUE, FALSE); - /* set all the windows for the frame in the window_map */ g_hash_table_insert(window_map, &self->window, client); g_hash_table_insert(window_map, &self->plate, client); @@ -977,6 +978,7 @@ void frame_flash_start(ObFrame *self) G_USEC_PER_SEC * 0.6, flash_timeout, self, + g_direct_equal, flash_done); g_get_current_time(&self->flash_end); g_time_val_add(&self->flash_end, G_USEC_PER_SEC * 5);