summaryrefslogtreecommitdiff
path: root/openbox/screen.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2007-04-22 20:40:22 +0000
committerDana Jansens <danakj@orodu.net>2007-04-22 20:40:22 +0000
commitf37382b66d89f9ecc7bdbe9be3dd6122d56790a8 (patch)
tree13d843886e45f19aa8e663e9ce641468f7a4b391 /openbox/screen.c
parent5f428bdeb20a36f395ddac39ebd7495e19256a49 (diff)
focus properly on desktop change
Diffstat (limited to 'openbox/screen.c')
-rw-r--r--openbox/screen.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/openbox/screen.c b/openbox/screen.c
index a54b2b56..c0569c29 100644
--- a/openbox/screen.c
+++ b/openbox/screen.c
@@ -460,10 +460,14 @@ void screen_set_desktop(guint num)
}
}
- /* reduce flicker by hiliting now rather than waiting for the server
- FocusIn event */
- if ((c = focus_fallback_target(TRUE, focus_client)))
+ /* have to try focus here because when you leave an empty desktop
+ there is no focus out to watch for */
+ if ((c = focus_fallback_target(TRUE, focus_client))) {
+ /* reduce flicker by hiliting now rather than waiting for the server
+ FocusIn event */
frame_adjust_focus(c->frame, TRUE);
+ client_focus(c);
+ }
event_ignore_queued_enters();
}