diff options
Diffstat (limited to 'openbox/focus.c')
| -rw-r--r-- | openbox/focus.c | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/openbox/focus.c b/openbox/focus.c index a756a9b5..72588a30 100644 --- a/openbox/focus.c +++ b/openbox/focus.c @@ -280,19 +280,15 @@ ObClient* focus_fallback(gboolean allow_refocus) old = focus_client; new = focus_fallback_target(allow_refocus, focus_client); - /* send focus somewhere if it is moving or if it was NULL before, - in which case it may not even be on the screen */ - if (!old || new != old) { - /* unfocus any focused clients.. they can be focused by Pointer events - and such, and then when we try focus them, we won't get a FocusIn - event at all for them. */ - focus_nothing(); - - if (new) { - client_focus(new); - /* remember that we tried to send focus here */ - focus_tried = new; - } + /* unfocus any focused clients.. they can be focused by Pointer events + and such, and then when we try focus them, we won't get a FocusIn + event at all for them. */ + focus_nothing(); + + if (new) { + client_focus(new); + /* remember that we tried to send focus here */ + focus_tried = new; } return new; |
