X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Factions%2Funfocus.c;h=3db00ca361400ca780b2678f878632b1e0c8e19b;hb=7c4fae0312dc7af7578e0fe345cec0a92ea87c9f;hp=d581864e99ec8afff4ace2713fd04f6a515bc7f2;hpb=b0fa629769ef17cae28f137aad80f8c4798f7592;p=chaz%2Fopenbox diff --git a/openbox/actions/unfocus.c b/openbox/actions/unfocus.c index d581864e..3db00ca3 100644 --- a/openbox/actions/unfocus.c +++ b/openbox/actions/unfocus.c @@ -1,53 +1,17 @@ #include "openbox/actions.h" #include "openbox/focus.h" -typedef struct { - gboolean tobottom; -} Options; - -static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node); -static void free_func(gpointer options); static gboolean run_func(ObActionsData *data, gpointer options); -void action_unfocus_startup() -{ - actions_register("Unfocus", - setup_func, - free_func, - run_func, - NULL, NULL); -} - -static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node) -{ - xmlNodePtr n; - Options *o; - - o = g_new0(Options, 1); - o->tobottom = TRUE; - - if ((n = parse_find_node("tobottom", node))) - o->tobottom = parse_bool(doc, n); - return o; -} - -static void free_func(gpointer options) +void action_unfocus_startup(void) { - Options *o = options; - - g_free(o); + actions_register("Unfocus", NULL, NULL, run_func); } /* Always return FALSE because its not interactive */ static gboolean run_func(ObActionsData *data, gpointer options) { - Options *o = options; - - if (data->client && data->client == focus_client) { - if (o->tobottom) - focus_order_to_bottom(data->client); - focus_fallback(FALSE, FALSE, TRUE); - } - + if (data->client && data->client == focus_client) + focus_fallback(FALSE, FALSE, TRUE, FALSE); return FALSE; }