summaryrefslogtreecommitdiff
path: root/openbox/event.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2010-04-16 20:35:04 -0400
committerDana Jansens <danakj@orodu.net>2010-04-16 21:32:38 -0400
commit550e961c0e4e5b512d2cc4408bda03201dee5089 (patch)
treef154883896f0a7f410185d05532ad0d59e824efc /openbox/event.c
parent77ee361f5cedb415c1189b0a75bde83a1a275f35 (diff)
when client removes its transient_for hint, don't keep the window as transient for the group when it shouldn't be (fixes bug #4586)
Diffstat (limited to 'openbox/event.c')
-rw-r--r--openbox/event.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/openbox/event.c b/openbox/event.c
index d63ae2b3..3126ef92 100644
--- a/openbox/event.c
+++ b/openbox/event.c
@@ -1622,8 +1622,11 @@ static void event_handle_client(ObClient *client, XEvent *e)
} else if (msgtype == XA_WM_HINTS) {
client_update_wmhints(client);
} else if (msgtype == XA_WM_TRANSIENT_FOR) {
- client_update_transient_for(client);
+ /* get the transient-ness first, as this affects if the client
+ decides to be transient for the group or not in
+ client_update_transient_for() */
client_get_type_and_transientness(client);
+ client_update_transient_for(client);
/* type may have changed, so update the layer */
client_calc_layer(client);
client_setup_decor_and_functions(client, TRUE);