From: Inhong Han Date: Thu, 14 Nov 2024 07:04:46 +0000 (+0900) Subject: Modified to prevent setting invalid geometry of the floating IME X-Git-Tag: accepted/tizen/unified/20241114.153916~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F75%2F320375%2F1;p=platform%2Fcore%2Fuifw%2Fe-mod-tizen-wl-textinput.git Modified to prevent setting invalid geometry of the floating IME Change-Id: I9069e5b52124f6be9898486b869168973d2774ea --- diff --git a/src/e_mod_input_panel.c b/src/e_mod_input_panel.c index 93e6d11..28ea88a 100644 --- a/src/e_mod_input_panel.c +++ b/src/e_mod_input_panel.c @@ -1881,6 +1881,9 @@ void e_input_panel_floating_position_align_set(int x, int y, int align) void e_input_panel_floating_panel_move_resize(int x, int y, int w, int h) { + E_Input_Panel_Surface *floating_ips = NULL; + int angle = 0; + LOGI("x : %d, y : %d, w : %d, h : %d", x, y, w, h); if (g_floating_info->align_position.x >= 0 || g_floating_info->align_position.y >= 0) @@ -1889,8 +1892,20 @@ void e_input_panel_floating_panel_move_resize(int x, int y, int w, int h) g_floating_info->align_position.y = -1; } - g_floating_info->new_width = w; - g_floating_info->new_height = h; + floating_ips = _e_input_floating_panel_surface_get(); + if (floating_ips && floating_ips->ec) + angle = floating_ips->ec->e.state.rot.ang.curr; + + if (angle == 90 || angle == 270) + { + g_floating_info->new_width = h; + g_floating_info->new_height = w; + } + else + { + g_floating_info->new_width = w; + g_floating_info->new_height = h; + } e_input_panel_floating_position_set(x, y); }