rotation: allowed 32bit dependent window to be rotated to any angle even if current... 51/115051/1
authorGwanglim Lee <gl77.lee@samsung.com>
Thu, 16 Feb 2017 07:18:02 +0000 (16:18 +0900)
committerGwanglim Lee <gl77.lee@samsung.com>
Thu, 16 Feb 2017 07:18:02 +0000 (16:18 +0900)
Change-Id: Ie780cce9b461815f5726ad1155a95043538d815f

src/rotation/e_mod_rotation_wl.c

index 57b7b71..84947f0 100644 (file)
@@ -850,7 +850,19 @@ _e_client_rotation_zone_set(E_Zone *zone, E_Client *include_ec, E_Client *exclud
              /* TODO: Fix me. To prevent rotation of 180 degrees for normal app */
              if ((!_camera_check(ec)) &&
                  (!e_mod_pol_conf_rot_enable_get(cur_angle)))
-               continue;
+               {
+                  EDBG(ec, "CHECK dependent '%s'(%p) ang:%d rot.type:%d dependent:%d",
+                       ec->icccm.name, ec, cur_angle,
+                       ec->e.state.rot.type,
+                       E_CLIENT_ROTATION_TYPE_DEPENDENT);
+
+                  /* check whether the window is 32bit and has the dependent rotation type.
+                   * if true, then it can be rotated according to below normal window
+                   * even if current zone angle is not allowed by configuration value.
+                   */
+                  if (!((ec->argb) && (e_client_rotation_is_available(ec, cur_angle))))
+                    continue;
+               }
 
              EDBG(ec, "Append Rotation List '%s'(%p)", ec->icccm.name, ec);
              target_list = eina_list_append(target_list, ec);