X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fdispatch.c;h=87f41dcc69c76767578647da6a80decaa7d188be;hb=276b2be581c6cb138b439537761ff2ca42201805;hp=08690a3715c9e74e8ed1842400f2572f3eab4817;hpb=86a8d8031b089e8514b9b1656dc2c5f48fcb9a67;p=chaz%2Fopenbox diff --git a/openbox/dispatch.c b/openbox/dispatch.c index 08690a37..87f41dcc 100644 --- a/openbox/dispatch.c +++ b/openbox/dispatch.c @@ -153,6 +153,7 @@ void dispatch_client(EventType e, Client *c, int num0, int num1) obe.data.c.client = c; obe.data.c.num[0] = num0; obe.data.c.num[1] = num1; + obe.data.c.num[2] = 0; i = 0; while (e > 1) { @@ -213,8 +214,8 @@ void dispatch_signal(int signal) void dispatch_move(Client *c, int *x, int *y) { guint i; - EventType e = Event_Client_Moving; GSList *it; + EventType e = Event_Client_Moving; ObEvent obe; obe.type = e; @@ -236,3 +237,31 @@ void dispatch_move(Client *c, int *x, int *y) *x = obe.data.c.num[0]; *y = obe.data.c.num[1]; } + +void dispatch_resize(Client *c, int *w, int *h, ObCorner corner) +{ + guint i; + GSList *it; + EventType e = Event_Client_Resizing; + ObEvent obe; + + obe.type = e; + obe.data.c.client = c; + obe.data.c.num[0] = *w; + obe.data.c.num[1] = *h; + obe.data.c.num[2] = corner; + + i = 0; + while (e > 1) { + e >>= 1; + ++i; + } + + for (it = funcs[i]; it != NULL; it = it->next) { + Func *f = it->data; + f->h(&obe, f->data); + } + + *w = obe.data.c.num[0]; + *h = obe.data.c.num[1]; +}