X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Factions%2Fif.c;h=4c989664b3470df060bfb0aaee038013cc4fad97;hb=d3a01a40f35cb3ae6c5ad8329291e86e2e599691;hp=0b9f842a92befed8b746327eee5fb963d7e66c26;hpb=7c1a00802326a608bc1baeb67731a9ab3eda8ba6;p=chaz%2Fopenbox diff --git a/openbox/actions/if.c b/openbox/actions/if.c index 0b9f842a..4c989664 100644 --- a/openbox/actions/if.c +++ b/openbox/actions/if.c @@ -3,6 +3,7 @@ #include "openbox/client.h" #include "openbox/frame.h" #include "openbox/screen.h" +#include "openbox/focus.h" #include typedef struct { @@ -26,7 +27,7 @@ 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_if_startup() +void action_if_startup(void) { actions_register("If", setup_func, @@ -85,7 +86,7 @@ static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node) m = parse_find_node("action", n->xmlChildrenNode); while (m) { ObActionsAct *action = actions_parse(i, doc, m); - if (action) o->thenacts = g_slist_prepend(o->thenacts, action); + if (action) o->thenacts = g_slist_append(o->thenacts, action); m = parse_find_node("action", m->next); } } @@ -95,7 +96,7 @@ static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node) m = parse_find_node("action", n->xmlChildrenNode); while (m) { ObActionsAct *action = actions_parse(i, doc, m); - if (action) o->elseacts = g_slist_prepend(o->elseacts, action); + if (action) o->elseacts = g_slist_append(o->elseacts, action); m = parse_find_node("action", m->next); } } @@ -127,8 +128,8 @@ static gboolean run_func(ObActionsData *data, gpointer options) (!o->maxvert_off || (c && !c->max_vert)) && (!o->maxfull_on || (c && c->max_vert && c->max_horz)) && (!o->maxfull_off || (c && !(c->max_vert && c->max_horz))) && - (!o->focused || (c && !(c == focus_client))) && - (!o->unfocused || (c && !(c != focus_client)))) + (!o->focused || (c && (c == focus_client))) && + (!o->unfocused || (c && !(c == focus_client)))) { acts = o->thenacts; }