all repos — openbox @ 78dfba0195c7e930b0b327afc9bf0bea4c8c0f35

openbox fork - make it a bit more like ryudo

stop doing stupid shit for the size increments in client_configure, it belongs in the moveresize code. add it there.
Dana Jansens danakj@orodu.net
commit

78dfba0195c7e930b0b327afc9bf0bea4c8c0f35

parent

5cac2437c29f7da80e0326238e1092f88834424a

2 files changed, 16 insertions(+), 33 deletions(-)

jump to
M openbox/client.copenbox/client.c

@@ -1833,7 +1833,6 @@ }

if (!(w == self->area.width && h == self->area.height)) { int basew, baseh, minw, minh; - int mw, mh, aw, ah; /* base size is substituted with min size if not specified */ if (self->base_size.width || self->base_size.height) {

@@ -1852,23 +1851,6 @@ minw = self->base_size.width;

minh = self->base_size.height; } - /* for interactive resizing. have to move half an increment in each - direction. */ - - /* how far we are towards the next size inc */ - mw = (w - basew) % self->size_inc.width; - mh = (h - baseh) % self->size_inc.height; - /* amount to add */ - aw = self->size_inc.width / 2; - ah = self->size_inc.height / 2; - /* don't let us move into a new size increment */ - if (mw + aw >= self->size_inc.width) - aw = self->size_inc.width - mw - 1; - if (mh + ah >= self->size_inc.height) - ah = self->size_inc.height - mh - 1; - w += aw; - h += ah; - /* if this is a user-requested resize, then check against min/max sizes */
M openbox/moveresize.copenbox/moveresize.c

@@ -79,8 +79,8 @@

moveresize_client = c; start_cx = c->frame->area.x; start_cy = c->frame->area.y; - start_cw = c->area.width; - start_ch = c->area.height; + start_cw = c->area.width + (c->size_inc.width + 1) / 2; + start_ch = c->area.height + (c->size_inc.height + 1) / 2; start_x = x; start_y = y; corner = cnr;

@@ -164,7 +164,8 @@ {

Rect *a; if (resist) - resist_move(moveresize_client, &cur_x, &cur_y); + resist_move_windows(moveresize_client, &cur_x, &cur_y); + resist_move_monitors(moveresize_client, &cur_x, &cur_y); /* get where the client should be */ frame_frame_gravity(moveresize_client->frame, &cur_x, &cur_y);

@@ -181,20 +182,20 @@ }

static void do_resize(gboolean resist) { - if (resist) { - /* resist_size needs the frame size */ - cur_x += moveresize_client->frame->size.left + - moveresize_client->frame->size.right; - cur_y += moveresize_client->frame->size.top + - moveresize_client->frame->size.bottom; + /* resist_size_* needs the frame size */ + cur_x += moveresize_client->frame->size.left + + moveresize_client->frame->size.right; + cur_y += moveresize_client->frame->size.top + + moveresize_client->frame->size.bottom; - resist_size(moveresize_client, &cur_x, &cur_y, lockcorner); + if (resist) + resist_size_windows(moveresize_client, &cur_x, &cur_y, lockcorner); + resist_size_monitors(moveresize_client, &cur_x, &cur_y, lockcorner); - cur_x -= moveresize_client->frame->size.left + - moveresize_client->frame->size.right; - cur_y -= moveresize_client->frame->size.top + - moveresize_client->frame->size.bottom; - } + cur_x -= moveresize_client->frame->size.left + + moveresize_client->frame->size.right; + cur_y -= moveresize_client->frame->size.top + + moveresize_client->frame->size.bottom; client_configure(moveresize_client, lockcorner, moveresize_client->area.x, moveresize_client->area.y,