From 6f8704cd6db08acaf60b67711629444233a7e01b Mon Sep 17 00:00:00 2001 From: Seunghun Lee Date: Fri, 26 Apr 2013 19:32:04 +0900 Subject: [PATCH] Added logic to send rotation done message to wm, even if window is already rotated. That's why wm must be wait for comming rotation done message after sending rotation request. Change-Id: I8b83a3476c744f5cb22889c8c1428d829bdd9899 --- src/lib/ecore_evas/ecore_evas_x.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/lib/ecore_evas/ecore_evas_x.c b/src/lib/ecore_evas/ecore_evas_x.c index 7d26f54..f62e67c 100644 --- a/src/lib/ecore_evas/ecore_evas_x.c +++ b/src/lib/ecore_evas/ecore_evas_x.c @@ -1896,9 +1896,26 @@ _ecore_evas_x_rotation_set(Ecore_Evas *ee, int rotation, int resize) { Eina_Bool ch_prop = EINA_FALSE; - if (ee->rotation == rotation) return; if (!strcmp(ee->driver, "xrender_x11")) return; + /* send rotation done message to wm, even if window is already rotated. + * that's why wm must be wait for comming rotation done message + * after sending rotation request. + */ + if (ee->rotation == rotation) + { + if (ee->engine.x.wm_rot.request) + { + ecore_x_e_window_rotation_change_done_send(ee->engine.x.win_root, + ee->prop.window, + ee->rotation, + ee->w, + ee->h); + ee->engine.x.wm_rot.request = 0; + } + return; + } + if (ee->prop.wm_rot.supported) { if (!_ecore_evas_x_wm_rotation_check(ee)) return; -- 2.7.4