1 #include "openbox/actions.h"
2 #include "openbox/screen.h"
10 static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node);
11 static void free_func(gpointer options);
12 static gboolean run_func(ObActionsData *data, gpointer options);
14 void action_desktop_startup()
16 actions_register("Desktop",
23 static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node)
28 o = g_new0(Options, 1);
30 if ((n = parse_find_node("desktop", node))) {
31 gchar *s = parse_string(doc, n);
32 if (!g_ascii_strcasecmp(s, "last"))
35 o->desktop = parse_int(doc, n) - 1;
41 static void free_func(gpointer options)
48 /* Always return FALSE because its not interactive */
49 static gboolean run_func(ObActionsData *data, gpointer options)
55 d = screen_last_desktop;
59 if (d < screen_num_desktops)
60 screen_set_desktop(d, TRUE);