case Corner_TopRight:
dlt = lt;
drb = rb + *h - c->frame->area.height;
+ g_message("dlt %d drb %d rb %d ab %d", dlt, drb, rb, ab);
if (rb <= ab && drb > ab && drb <= ab + resist.integer)
- *h = ar - lt + 1;
+ *h = ab - lt + 1;
break;
case Corner_BottomLeft:
case Corner_BottomRight:
dlt = lt - *h + c->frame->area.height;
drb = rb;
if (lt >= at && dlt < at && dlt >= at - resist.integer)
- *h = rb - al + 1;
+ *h = rb - at + 1;
break;
}
+
+ /* round down for size increments */
+ *w -= c->frame->area.width + c->frame->size.left + c->frame->size.right;
+ *w = *w / c->size_inc.width * c->size_inc.width;
+ *w += c->frame->area.width + c->frame->size.left + c->frame->size.right;
+
+ *h -= c->frame->area.height + c->frame->size.top + c->frame->size.bottom;
+ *h = *h / c->size_inc.height * c->size_inc.height;
+ *h += c->frame->area.height + c->frame->size.top + c->frame->size.bottom;
}
static void event(ObEvent *e, void *foo)