summaryrefslogtreecommitdiff
path: root/openbox/frame.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbox/frame.c')
-rw-r--r--openbox/frame.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/openbox/frame.c b/openbox/frame.c
index 93263e27..40c15e00 100644
--- a/openbox/frame.c
+++ b/openbox/frame.c
@@ -189,6 +189,7 @@ void frame_show(ObFrame *self)
{
if (!self->visible) {
self->visible = TRUE;
+ XMapWindow(ob_display, self->client->window);
XMapWindow(ob_display, self->window);
}
}
@@ -197,8 +198,11 @@ void frame_hide(ObFrame *self)
{
if (self->visible) {
self->visible = FALSE;
- self->client->ignore_unmaps++;
+ self->client->ignore_unmaps += 2;
+ /* we unmap the client itself so that we can get MapRequest
+ events, and because the ICCCM tells us to! */
XUnmapWindow(ob_display, self->window);
+ XUnmapWindow(ob_display, self->client->window);
}
}