Make it possible for an action name to choose whether it is interactive or not based...
[dana/openbox.git] / openbox / actions / omnipresent.c
1 #include "openbox/actions.h"
2 #include "openbox/client.h"
3 #include "openbox/screen.h"
4
5 static gboolean run_func_toggle(ObActionsData *data, gpointer options);
6
7 void action_omnipresent_startup(void)
8 {
9     actions_register("ToggleOmnipresent", NULL, NULL, run_func_toggle);
10 }
11
12 /* Always return FALSE because its not interactive */
13 static gboolean run_func_toggle(ObActionsData *data, gpointer options)
14 {
15     if (data->client) {
16         actions_client_move(data, TRUE);
17         client_set_desktop(data->client,
18                            data->client->desktop == DESKTOP_ALL ?
19                            screen_desktop : DESKTOP_ALL, FALSE, TRUE);
20         actions_client_move(data, FALSE);
21     }
22     return FALSE;
23 }