don't resist when resizing terminals with the keyboard

This commit is contained in:
Dana Jansens 2007-07-19 15:52:46 -04:00
parent 730062cac9
commit 7f741ba919

View file

@ -531,7 +531,7 @@ static void move_with_keys(gint keycode, gint state)
static void resize_with_keys(gint keycode, gint state) static void resize_with_keys(gint keycode, gint state)
{ {
gint dw = 0, dh = 0, pdx = 0, pdy = 0, opx, opy, px, py; gint dw = 0, dh = 0, pdx = 0, pdy = 0, opx, opy, px, py;
gint dist = 0; gint dist = 0, resist = 0;
ObDirection dir; ObDirection dir;
ObCorner cor; ObCorner cor;
@ -595,18 +595,30 @@ static void resize_with_keys(gint keycode, gint state)
gint distw, disth; gint distw, disth;
/* control means fine grained */ /* control means fine grained */
if (moveresize_client->size_inc.width > 1) if (moveresize_client->size_inc.width > 1) {
distw = moveresize_client->size_inc.width; distw = moveresize_client->size_inc.width;
else if (state & modkeys_key_to_mask(OB_MODKEY_KEY_CONTROL)) resist = 1;
}
else if (state & modkeys_key_to_mask(OB_MODKEY_KEY_CONTROL)) {
distw = 1; distw = 1;
else resist = 1;
}
else {
distw = KEY_DIST; distw = KEY_DIST;
if (moveresize_client->size_inc.height > 1) resist = KEY_DIST;
}
if (moveresize_client->size_inc.height > 1) {
disth = moveresize_client->size_inc.height; disth = moveresize_client->size_inc.height;
else if (state & modkeys_key_to_mask(OB_MODKEY_KEY_CONTROL)) resist = 1;
}
else if (state & modkeys_key_to_mask(OB_MODKEY_KEY_CONTROL)) {
disth = 1; disth = 1;
else resist = 1;
}
else {
disth = KEY_DIST; disth = KEY_DIST;
resist = KEY_DIST;
}
if (key_resize_edge == OB_DIRECTION_WEST) { if (key_resize_edge == OB_DIRECTION_WEST) {
if (dir == OB_DIRECTION_WEST) if (dir == OB_DIRECTION_WEST)
@ -644,7 +656,7 @@ static void resize_with_keys(gint keycode, gint state)
else if (key_resize_edge == OB_DIRECTION_SOUTH) else if (key_resize_edge == OB_DIRECTION_SOUTH)
cor = OB_CORNER_TOPLEFT; cor = OB_CORNER_TOPLEFT;
calc_resize(TRUE, dist, &dw, &dh, cor); calc_resize(TRUE, resist, &dw, &dh, cor);
if (key_resize_edge == OB_DIRECTION_WEST) if (key_resize_edge == OB_DIRECTION_WEST)
cur_x -= dw; cur_x -= dw;
else if (key_resize_edge == OB_DIRECTION_NORTH) else if (key_resize_edge == OB_DIRECTION_NORTH)