summaryrefslogtreecommitdiff
path: root/openbox
diff options
context:
space:
mode:
Diffstat (limited to 'openbox')
-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 */