X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Factions%2Fif.c;fp=openbox%2Factions%2Fif.c;h=fd1280d2c1fece54e376e14a79a87cf5fb08e6e5;hb=bced74beaa9ff03e0810ff1d61a3704040841942;hp=7087d6a4922a3546b2ec0f97acbc0c9eb3c80cee;hpb=f8aa8cf5bb901b6f056c6efabf0b48902a837a0d;p=chaz%2Fopenbox diff --git a/openbox/actions/if.c b/openbox/actions/if.c index 7087d6a4..fd1280d2 100644 --- a/openbox/actions/if.c +++ b/openbox/actions/if.c @@ -29,6 +29,7 @@ typedef struct { gboolean desktop_other; guint desktop_number; guint screendesktop_number; + guint client_monitor; GPatternSpec *matchtitle; GRegex *regextitle; gchar *plaintitle; @@ -107,6 +108,9 @@ static gpointer setup_func(xmlNodePtr node) g_free(s); } } + if ((n = obt_xml_find_node(node, "monitor"))) { + o->client_monitor = obt_xml_node_int(n); + } if ((n = obt_xml_find_node(node, "then"))) { xmlNodePtr m; @@ -192,7 +196,9 @@ static gboolean run_func(ObActionsData *data, gpointer options) (!o->regextitle || (g_regex_match(o->regextitle, c->original_title, 0, NULL))) && (!o->plaintitle || - (!strcmp(o->plaintitle, c->original_title)))) + (!strcmp(o->plaintitle, c->original_title))) && + (!o->client_monitor || + (o->client_monitor == client_monitor(c) + 1))) { acts = o->thenacts; }