summaryrefslogtreecommitdiff
path: root/openbox/screen.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2007-08-04 13:29:13 -0400
committerDana Jansens <danakj@orodu.net>2007-08-04 13:29:13 -0400
commit0cfd92ab9e56d8f790c92b83436e981fa46efe20 (patch)
tree0742fe9d489d5ba1c32ba754ed90d0ba4e4c3208 /openbox/screen.c
parentac59dd4fe53330d717a12f55f6bfc17467ad2ae2 (diff)
don't make omnipresent windows lose focus when changing desktops. this is done by allowing focus_fallback to specify if focus has been lost or not. usually if you're call it, focus is lost, but not always.
Diffstat (limited to 'openbox/screen.c')
-rw-r--r--openbox/screen.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/openbox/screen.c b/openbox/screen.c
index 7e04d4dc..93ec57f5 100644
--- a/openbox/screen.c
+++ b/openbox/screen.c
@@ -560,7 +560,9 @@ static void screen_fallback_focus()
do this before hiding the windows so if helper windows are coming
with us, they don't get hidden
*/
- if ((c = focus_fallback(TRUE, !config_focus_last, allow_omni))) {
+ if ((c = focus_fallback(TRUE, !config_focus_last, allow_omni,
+ !allow_omni)))
+ {
/* only do the flicker reducing stuff ahead of time if we are going
to call xsetinputfocus on the window ourselves. otherwise there is
no guarantee the window will actually take focus.. */
@@ -1137,7 +1139,7 @@ void screen_show_desktop(gboolean show, ObClient *show_only)
else if (!show_only) {
ObClient *c;
- if ((c = focus_fallback(TRUE, FALSE, TRUE))) {
+ if ((c = focus_fallback(TRUE, FALSE, TRUE, FALSE))) {
/* only do the flicker reducing stuff ahead of time if we are going
to call xsetinputfocus on the window ourselves. otherwise there
is no guarantee the window will actually take focus.. */