summaryrefslogtreecommitdiff
path: root/openbox/event.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbox/event.c')
-rw-r--r--openbox/event.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/openbox/event.c b/openbox/event.c
index 62d317f7..51f93c3b 100644
--- a/openbox/event.c
+++ b/openbox/event.c
@@ -450,7 +450,16 @@ static void event_handle_client(Client *client, XEvent *e)
/* we shouldn't be able to get this unless we're iconic */
g_assert(client->iconic);
- /*HOOKFIRECLIENT(requestactivate, client);XXX*/
+ if (screen_showing_desktop)
+ screen_show_desktop(FALSE);
+ client_iconify(client, FALSE, TRUE);
+ if (!client->frame->visible)
+ /* if its not visible still, then don't mess with it */
+ break;
+ if (client->shaded)
+ client_shade(client, FALSE);
+ client_focus(client);
+ stacking_raise(client);
break;
case ClientMessage:
/* validate cuz we query stuff off the client here */