summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-09-25 19:01:45 +0000
committerDana Jansens <danakj@orodu.net>2003-09-25 19:01:45 +0000
commit54ccb6a5428fbf33bf1a97d0f60f6623f0195fa3 (patch)
treeb3daeaa194ebaf36c30e33f9acf87e03a091bdf0
parent3a595d037dce79bd91e6ee975e6ac4265985d3e1 (diff)
focus new children if their direct parent is focused
-rw-r--r--openbox/client.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/openbox/client.c b/openbox/client.c
index 0952909c..266eea43 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -278,7 +278,9 @@ void client_manage(Window window)
/* focus the new window? */
if (ob_state() != OB_STATE_STARTING &&
- (config_focus_new || client_search_focus_tree_full(self)) &&
+ (config_focus_new || (self->transient_for &&
+ self->transient_for != TRAN_GROUP &&
+ client_focused(self->transient_for))) &&
/* note the check against Type_Normal/Dialog, not client_normal(self),
which would also include other types. in this case we want more
strict rules for focus */