summaryrefslogtreecommitdiff
path: root/openbox/action.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2007-05-25 15:23:48 +0000
committerDana Jansens <danakj@orodu.net>2007-05-25 15:23:48 +0000
commit336011efb19600107313785b56c32dd12a69dc1f (patch)
tree3800e8547c1efb850b521c0f7831f1d7722c60a8 /openbox/action.c
parent7cf4c970ae89f06aa77345900f96a310400c8595 (diff)
prevent flicker in the follow actiosn again instead of in focus fallback. focus fallback needs to be very reliable.
Diffstat (limited to 'openbox/action.c')
-rw-r--r--openbox/action.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/openbox/action.c b/openbox/action.c
index 1d815efc..081b68f5 100644
--- a/openbox/action.c
+++ b/openbox/action.c
@@ -1588,7 +1588,7 @@ void action_send_to_desktop(union ActionData *data)
data->sendto.desk == DESKTOP_ALL) {
client_set_desktop(c, data->sendto.desk, data->sendto.follow);
if (data->sendto.follow && data->sendto.desk != screen_desktop)
- screen_set_desktop(data->sendto.desk, TRUE);
+ screen_set_desktop(data->sendto.desk, c != focus_client);
}
}
@@ -1601,7 +1601,7 @@ void action_desktop(union ActionData *data)
{
screen_set_desktop(data->desktop.desk, TRUE);
if (data->inter.any.interactive)
- screen_desktop_popup(data->desktop.desk, TRUE);
+ screen_desktop_popup(data->desktop.desk, focus_client->desktop != DESKTOP_ALL);
}
}
@@ -1621,7 +1621,7 @@ void action_desktop_dir(union ActionData *data)
if (!data->sendtodir.inter.any.interactive ||
(data->sendtodir.inter.final && !data->sendtodir.inter.cancel))
{
- if (d != screen_desktop) screen_set_desktop(d, TRUE);
+ if (d != screen_desktop) screen_set_desktop(d, focus_client->desktop != DESKTOP_ALL);
}
}
@@ -1645,7 +1645,7 @@ void action_send_to_desktop_dir(union ActionData *data)
{
client_set_desktop(c, d, data->sendtodir.follow);
if (data->sendtodir.follow && d != screen_desktop)
- screen_set_desktop(d, TRUE);
+ screen_set_desktop(d, c != focus_client);
}
}