1 #include "openbox/actions.h"
2 #include "openbox/client.h"
9 static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node);
10 static void free_func(gpointer options);
11 static gboolean run_func(ObActionsData *data, gpointer options);
13 void action_maximize_startup()
15 actions_register("Maximize",
22 static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node)
27 o = g_new0(Options, 1);
30 if ((n = parse_find_node("maximize", node))) {
31 gchar *s = parse_string(doc, n);
32 if (g_ascii_strcasecmp(s, "toggle")) {
34 o->on = parse_bool(doc, n);
42 static void free_func(gpointer options)
49 /* Always return FALSE because its not interactive */
50 static gboolean run_func(ObActionsData *data, gpointer options)
55 actions_client_move(data, TRUE);
58 client_maximize(data->client,
59 !data->client->max_horz || !data->client->max_vert,
62 client_maximize(data->client, o->on, 0);
64 actions_client_move(data, FALSE);