From 1d9f3b76fb3628613facbd7964e80bb396cb4bdb Mon Sep 17 00:00:00 2001 From: Shawn Lee Date: Wed, 3 Jul 2013 18:56:56 +0900 Subject: [PATCH] Only if the window doesn't need to rotate, adjust the size by window's geometry hint in eval0. Because if the window need to rotate, adjusting the size will be handled at rotation job. Change-Id: I137279b9a100f298338b3e6d3d518db6ea966585 --- src/bin/e_border.c | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/src/bin/e_border.c b/src/bin/e_border.c index 2532fb9..36031d9 100644 --- a/src/bin/e_border.c +++ b/src/bin/e_border.c @@ -8674,7 +8674,6 @@ _e_border_is_vkbd(E_Border *bd) if ((rot.vkbd_ctrl_win) && (rot.vkbd == bd) && (!e_object_is_del(E_OBJECT(rot.vkbd))) && - (rot.vkbd->visible) && (rot.vkbd->zone == bd->zone) && (E_INTERSECTS(bd->zone->x, bd->zone->y, bd->zone->w, bd->zone->h, @@ -10322,20 +10321,19 @@ _e_border_eval0(E_Border *bd) ELB(ELBT_ROT, "NEED ROT", bd->client.win); bd->client.e.state.rot.changes = _e_border_rotation_angle_get(bd); - if (bd->client.e.state.rot.changes != -1) + if (bd->client.e.state.rot.changes == -1) { - ang = bd->client.e.state.rot.changes; - bd->changed = 1; - } - else ang = bd->client.e.state.rot.curr; + ang = bd->client.e.state.rot.curr; - hint = _e_border_rotation_geom_get(bd, bd->zone, ang, &x, &y, &w, &h, &move); - if (hint) - { - _e_border_move_resize_internal(bd, x, y, w, h, EINA_TRUE, move); - ELBF(ELBT_ROT, 0, bd->client.win, "RESIZE_BY_HINT name:%s (%d,%d) %dx%d", - bd->client.icccm.name, x, y, w, h); + hint = _e_border_rotation_geom_get(bd, bd->zone, ang, &x, &y, &w, &h, &move); + if (hint) + { + _e_border_move_resize_internal(bd, x, y, w, h, EINA_TRUE, move); + ELBF(ELBT_ROT, 0, bd->client.win, "RESIZE_BY_HINT name:%s (%d,%d) %dx%d", + bd->client.icccm.name, x, y, w, h); + } } + else bd->changed = 1; } } #endif -- 2.7.4