Fix transform_core in order to update correctly 06/80206/1 accepted/tizen/common/20160715.175525 accepted/tizen/ivi/20160717.034736 accepted/tizen/mobile/20160717.034657 accepted/tizen/tv/20160717.034626 accepted/tizen/wearable/20160717.034611 submit/tizen/20160715.083412
authorSeungjin Park <sj8808.park@samsung.com>
Fri, 15 Jul 2016 08:02:14 +0000 (17:02 +0900)
committerSeungjin Park <sj8808.park@samsung.com>
Fri, 15 Jul 2016 08:02:57 +0000 (17:02 +0900)
Signed-off-by: Seungjin Park <sj8808.park@samsung.com>
Change-Id: I368dea1c2c08480c3253e86cc62a2ec372b2f862

src/bin/e_client.c
src/bin/e_client.h

index e856210902d600ed55e4ddad1946a7bb0a15ccec..b4b72acdab4cd47535e11eb6075f088322e8bc36 100644 (file)
@@ -2857,20 +2857,39 @@ static Eina_Bool
 _e_client_transform_core_check_change(E_Client *ec)
 {
    Eina_Bool check = EINA_FALSE;
+   int w = 0;
+   int h = 0;
 
    if (!ec) return EINA_FALSE;
 
+   if (ec->frame)
+     evas_object_geometry_get(ec->frame, 0, 0, &w, &h);
+
    // check client position or size change
    if (ec->x != ec->transform_core.backup.client_x ||
        ec->y != ec->transform_core.backup.client_y ||
        ec->w != ec->transform_core.backup.client_w ||
-       ec->h != ec->transform_core.backup.client_h)
+       ec->h != ec->transform_core.backup.client_h ||
+           w != ec->transform_core.backup.frame_w  ||
+           h != ec->transform_core.backup.frame_h)
      {
         check = EINA_TRUE;
         ec->transform_core.backup.client_x = ec->x;
         ec->transform_core.backup.client_y = ec->y;
         ec->transform_core.backup.client_w = ec->w;
         ec->transform_core.backup.client_h = ec->h;
+
+        if (ec->frame)
+          {
+             evas_object_geometry_get(ec->frame, 0, 0,
+                                      &ec->transform_core.backup.frame_w,
+                                      &ec->transform_core.backup.frame_h);
+          }
+        else
+          {
+             ec->transform_core.backup.frame_w = 0;
+             ec->transform_core.backup.frame_h = 0;
+          }
      }
 
    // check new transform or del transform
index 99f92f1963838f2327d46793e5a3f53057d58035..272ead0d6d84d556014717c8e787942b904fc23b 100644 (file)
@@ -825,6 +825,7 @@ struct E_Client
        struct
        {
            int client_x, client_y, client_w, client_h;
+           int frame_w, frame_h;
        } backup;
 
        struct