diff options
| author | Dana Jansens <danakj@orodu.net> | 2007-05-28 00:33:58 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2007-05-28 00:33:58 +0000 |
| commit | 16fcb1213d4ccfccd4e4a8ad5e8b0c826dc5c16e (patch) | |
| tree | 2cbd77bce08fa774a36b65070643a835e9178e97 /openbox/focus_cycle.c | |
| parent | 8874ec1fc4a142ea67d7c5a45ae9ea92ffdec5ea (diff) | |
when you focus a window, bring any modal children it has to that desktop
when falling back, return the window which actually was focused by client_focus
let you focus cycle to windows when their modal window is on another desktop (it will be brought over)
Diffstat (limited to 'openbox/focus_cycle.c')
| -rw-r--r-- | openbox/focus_cycle.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/openbox/focus_cycle.c b/openbox/focus_cycle.c index 46f5f058..74cabac6 100644 --- a/openbox/focus_cycle.c +++ b/openbox/focus_cycle.c @@ -150,7 +150,11 @@ gboolean focus_cycle_target_valid(ObClient *ft, !ft->skip_taskbar); /* it's not going to just send fous off somewhere else (modal window) */ - ok = ok && ft == client_focus_target(ft); + { + ObClient *cft = client_focus_target(ft); + ok = ok && (ft == cft || (cft->desktop != DESKTOP_ALL && + cft->desktop != ft->desktop)); + } return ok; } |
