e_client: move E_Client structure to internal header 63/325463/1
authorSooChan Lim <sc1.lim@samsung.com>
Mon, 9 Jun 2025 11:29:22 +0000 (20:29 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Tue, 10 Jun 2025 11:03:04 +0000 (20:03 +0900)
Change-Id: Ie9b410fbd73179d20d1e1daafb4a3b5e2283d308

src/bin/core/e_client_intern.h
src/include/e_client.h

index ccf03286d51d9b47e3e69baf0c1a923f13824cff..12868da583ccafc979f90290372a33357ace8758 100644 (file)
@@ -45,6 +45,520 @@ struct _E_Event_Mouse_Wheel
    unsigned int timestamp;
 };
 
+struct _E_Client
+{
+   E_Object e_obj_inherit;
+   EINA_INLIST;
+
+   E_Pixmap *pixmap;
+
+   int x, y, w, h; //frame+client geom
+   struct {
+      int x, y, w, h; //frame+client geom before move or resize callback
+   } pre_cb;
+   Eina_Rectangle client; //client geom
+   Evas_Object *frame; //comp object
+   E_Zone *zone;
+   E_Desk *desk;
+
+   E_DEPRECATED Ecore_Poller              *ping_poller;
+   Ecore_Timer               *kill_timer;
+
+   E_Client                  *parent;
+   Eina_List                 *transients;
+
+   E_Layer                    layer;
+
+   Eina_Rectangle           *shape_rects;
+   unsigned int              shape_rects_num;
+
+   Eina_Rectangle           *shape_input_rects;
+   unsigned int              shape_input_rects_num;
+
+   E_Comp_Wl_Client_Data    *comp_data;
+
+   E_Action                  *cur_mouse_action;
+
+   E_DEPRECATED int               border_size; //size of client's border
+
+   struct
+   {
+      struct
+      {
+         int x, y, w, h;
+         int mx, my;
+      } current, last_down[3], last_up[3];
+      Eina_Bool in : 1;
+   } mouse;
+
+   struct
+   {
+      struct
+      {
+         int x, y, w, h;
+         int mx, my;
+         int button;
+      } down;
+   } moveinfo;
+
+   E_Pointer_Mode     resize_mode;
+
+   struct
+   {
+      unsigned char changed : 1;
+      unsigned char user_selected : 1;
+      Eina_Stringshare *name;
+   } border;
+
+   struct
+   {
+      int          x, y, w, h;
+      E_Layer      layer;
+      int          zone;
+      E_Maximize   maximized;
+   } saved;
+
+   struct
+   {
+      unsigned char valid : 1;
+      int           x, y, w, h;
+      struct
+      {
+         int x, y, w, h;
+      } saved;
+   } pre_res_change;
+
+   E_DEPRECATED unsigned char  shaped : 1;
+   unsigned char  argb : 1;
+
+   /* ICCCM */
+   struct
+   {
+      Eina_Stringshare        *title;
+      Eina_Stringshare        *name;
+#if defined(__cplusplus) || defined(c_plusplus)
+      Eina_Stringshare        *cpp_class; /* for C++ TODO: change the implementation for this */
+#else
+      Eina_Stringshare        *class;
+#endif
+      int                       min_w, min_h;
+      int                       max_w, max_h;
+      Ecore_Window            transient_for;
+      Eina_Stringshare         *window_role;
+      unsigned char             take_focus : 1;
+      unsigned char             accepts_focus : 1;
+      unsigned char             delete_request : 1;
+      struct
+      {
+         unsigned char transient_for : 1;
+      } fetch;
+   } icccm;
+
+   /* NetWM */
+   struct
+   {
+      pid_t         pid;
+      Eina_Stringshare *name;
+
+      unsigned char opacity;
+      Eina_Bool     opacity_changed : 1; // prevent fetching opacity next prop change
+      E_DEPRECATED unsigned char ping : 1;
+
+      /* NetWM Window state */
+      struct
+      {
+         unsigned char modal : 1;
+         unsigned char skip_taskbar : 1;
+         unsigned char skip_pager : 1;
+      } state;
+
+      /* NetWM Window allowed actions */
+      E_Window_Type  type;
+   } netwm;
+
+   /* Extra e stuff */
+   struct
+   {
+      struct
+      {
+         struct
+         {
+            E_Client_Rotation_Type type;
+            struct
+              {
+                 E_Client_Rotation_Angle prev, curr, next, reserve;
+              } ang;
+            struct
+              {
+                 int x, y, w, h;
+              } geom[4];
+            unsigned char support : 1;
+            unsigned char geom_hint: 1;
+            unsigned char pending_change_request : 1;
+            unsigned char pending_show : 1;  // newly created window that has to be rotated will be show after rotating done.
+                                             // so, it will be used pending e_border_show called at main eval time.
+            unsigned char wait_for_done: 1;
+            unsigned char app_set : 1;    // app wants to communicate with the window manager
+            int           rot;            // decided rotation by the window manager
+            E_Client_Rotation_Angle  preferred_rot;  // app specified rotation
+            E_Client_Rotation_Angle *available_rots; // app specified available rotations
+            unsigned int  count;          // number of elements of available rotations
+            unsigned int  nopending_render : 1; // app wants to show rendering jobs before sending rotation_done
+                                                // it is set by 'wm.policy.win.rot.render.nopending' aux hint
+         } rot;
+      } state;
+
+      struct
+      {
+         struct
+         {
+            unsigned char support : 1;
+            unsigned char geom_hint : 1;
+            unsigned char app_set : 1;        // app wants to communicate with the window manager
+            unsigned char preferred_rot : 1;  // app specified rotation
+            unsigned char available_rots : 1; // app specified available rotations
+            unsigned char need_rotation : 1;
+         } rot;
+      } fetch;
+   } e;
+
+   struct
+   {
+      struct
+      {
+         unsigned char state : 1;
+         unsigned char vkbd : 1;
+      } fetch;
+      unsigned char                  have_property : 1;
+      unsigned char                  vkbd : 1;
+#ifdef _F_E_VIRTUAL_KEYBOARD_TYPE_
+      E_Virtual_Keyboard_Window_Type win_type;
+#endif
+      unsigned char                  floating : 1;
+   } vkbd;
+
+   struct
+   {
+      unsigned char visible : 1;
+      unsigned char pos : 1;
+      unsigned char size : 1;
+      unsigned char stack : 1;
+      unsigned char prop : 1;
+      unsigned char border : 1;
+      unsigned char reset_gravity : 1;
+      unsigned char shape : 1;
+      unsigned char shape_input : 1;
+      unsigned char icon : 1;
+      Eina_Bool internal_state : 1;
+      Eina_Bool need_maximize : 1;
+      Eina_Bool need_unmaximize : 1;
+      Eina_Bool rotation : 1;
+      Eina_Bool accepts_focus : 1;
+      Eina_Bool tz_position : 1; /* true when new position is set using tizen_position interface */
+      unsigned char title : 1;
+      E_DEPRECATED unsigned char buf_size : 1;
+   } changes;
+
+   struct
+   {
+      E_Alpha_Opaque opaque;
+      int obscured;
+      unsigned char changed : 1;
+      Eina_Bool skip : 1;
+      Eina_Bool force_obscured : 1;
+      int last_sent_type;
+      Eina_Bool ignore_geometry : 1;
+
+      //view listener
+      E_DEPRECATED struct wl_listener show_listener;
+      E_DEPRECATED struct wl_listener hide_listener;
+      E_DEPRECATED struct wl_listener move_listener;
+      E_DEPRECATED struct wl_listener resize_listener;
+      E_DEPRECATED struct wl_listener restack_listener;
+   } visibility;
+
+   struct
+   {
+      E_DEPRECATED double zoom;
+      E_DEPRECATED double angle;
+
+      E_DEPRECATED Evas_Point center;
+      E_DEPRECATED Evas_Point adjusted;
+
+      struct
+      {
+         E_DEPRECATED double x, y, z;
+      } E_DEPRECATED saved[4];
+   } E_DEPRECATED transform;
+
+   unsigned int       visible : 1; // client is set to be visible by display server (never use this)
+   unsigned int       hidden : 1; // set when window has been hidden by api and should not be shown
+   unsigned int       moving : 1;
+   unsigned int       focused : 1;
+   unsigned int       new_client : 1;
+   unsigned int       re_manage : 1; // client is persisting from before E restart
+   unsigned int       placed : 1;
+   unsigned int       iconic : 1;
+   unsigned int       deskshow : 1;
+   unsigned int       sticky : 1;
+   unsigned int       fullscreen : 1;
+   unsigned int       need_fullscreen : 1;
+   unsigned int       skip_fullscreen : 1;
+   unsigned int       need_reparent : 1;
+   unsigned int       delete_requested : 1;
+   E_DEPRECATED unsigned int       ping_ok : 1;
+   E_DEPRECATED unsigned int       hung : 1;
+   unsigned int       take_focus : 1;
+   unsigned int       want_focus : 1;
+   unsigned int       user_skip_winlist : 1;
+   E_Maximize         maximized;
+   E_Fullscreen       fullscreen_policy;
+   E_Layer            fullscreen_layer;
+   E_Transient        transient_policy;
+   unsigned int       borderless : 1;
+   Eina_Stringshare  *bordername;
+
+   unsigned int       lock_user_location : 1; /*DONE*/
+   unsigned int       lock_client_location : 1; /*DONE*/
+   unsigned int       lock_user_size : 1; /*DONE*/
+   unsigned int       lock_client_size : 1; /*DONE*/
+   unsigned int       lock_user_stacking : 1; /*DONE*/
+   unsigned int       lock_client_stacking : 1; /*DONE*/
+   unsigned int       lock_user_iconify : 1; /*DONE*/
+   unsigned int       lock_client_iconify : 1; /*DONE*/
+   unsigned int       lock_user_desk : 1;
+   unsigned int       lock_client_desk : 1;
+   unsigned int       lock_user_sticky : 1; /*DONE*/
+   unsigned int       lock_client_sticky : 1; /*DONE*/
+   unsigned int       lock_user_maximize : 1; /*DONE*/
+   unsigned int       lock_client_maximize : 1; /*DONE*/
+   unsigned int       lock_user_fullscreen : 1; /*DONE*/
+   unsigned int       lock_client_fullscreen : 1; /*DONE*/
+   unsigned int       lock_border : 1; /*DONE*/
+   unsigned int       lock_close : 1; /*DONE*/
+   unsigned int       lock_focus_in : 1; /*DONE*/
+   unsigned int       lock_focus_out : 1; /*DONE*/
+
+   unsigned int       internal : 1;
+   E_DEPRECATED Eina_Bool          dead : 1;
+
+   E_DEPRECATED double             ping;
+
+   unsigned char      changed : 1;
+
+   E_DEPRECATED E_Client_Move_Intercept_Cb move_intercept_cb;
+
+   unsigned char              comp_hidden   : 1;
+
+   E_Focus_Policy             focus_policy_override;
+
+   Eina_Bool override : 1;
+   E_DEPRECATED Eina_Bool input_only : 1;
+   Eina_Bool dialog : 1;
+   Eina_Bool redirected : 1;
+   Eina_Bool layer_block : 1; // client is doing crazy stuff and should not be relayered in protocol
+   Eina_Bool layer_pending : 1; // change inlist stack but postpone evas stack
+   Eina_Bool ignored : 1; // client is comp-ignored
+   Eina_Bool maximize_override : 1; // client is doing crazy stuff and should "just do it" when moving/resizing
+   E_DEPRECATED Eina_Bool transformed : 1;
+   Eina_Bool keyboard_resizing : 1;
+   Eina_Bool gesture_disable : 1;
+   Eina_Bool floating : 1; //client is set as floating mode
+   Eina_Bool first_mapped : 1;
+   Eina_Bool post_raise : 1;
+   Eina_Bool post_lower : 1;
+   Eina_Bool animatable : 1; //client is animatable (can apply animation)
+
+   Eina_Bool on_post_updates : 1; // client is on the post update list
+   uuid_t uuid;
+
+   int client_type; //e_client_type
+
+   struct
+   {
+      unsigned char by_client : 1; // will be deprecated
+      unsigned char not_raise : 1;
+      unsigned char skip_iconify : 1;
+      unsigned char skip_by_remote : 1;    // skip iconify by remote surface client
+      unsigned char deiconify_update : 1;  // wait client render if deiconify_update is 1
+      unsigned char buffer_flush : 1;      // 0: no flush, 1: flush buffer when iconify
+      unsigned char last_sent_iconic : 1;  // 0: uniconify, 1: iconify
+      E_Iconified_Type type;
+   } exp_iconify;
+
+   struct
+   {
+      Eina_Bool set;
+      Eina_Bool saved;
+      E_Layer   saved_layer; // original layer
+   } changable_layer[E_CHANGABLE_LAYER_TYPE_MAX];
+
+   struct
+   {
+      Eina_List *transform_list;
+      Eina_Bool  background;
+      Eina_Bool  changed;
+
+      struct
+      {
+         int client_x, client_y, client_w, client_h;
+         int frame_w, frame_h;
+         unsigned char argb : 1;
+      } backup;
+
+      struct
+      {
+         Eina_Bool                    enable;
+         E_Util_Transform_Matrix      matrix;
+         E_Util_Transform_Matrix      inv_matrix;
+         E_Util_Transform_Rect_Vertex vertices;
+         E_Util_Transform             transform;
+
+         struct
+         {
+            E_Util_Transform_Rect_Vertex vertices;
+            int x, y, w, h;
+         } boundary;
+
+      } result;
+
+      struct
+      {
+         Eina_Bool               enable;
+         E_Util_Transform_Matrix matrix;
+         E_Util_Transform_Zoom   zoom;
+      } parent;
+
+      Eina_Bool direct_render;
+      Eina_Bool activate;
+      Eina_Bool update_lock;
+   } transform_core;
+
+   Ecore_Timer *map_timer;
+   Eina_Bool pointer_enter_sent;
+   Eina_Bool has_cursor_unset : 1; // The client has set cursor null to hide cursor image
+
+   Eina_Bool launching : 1;
+   Eina_Bool extra_animating : 1;
+   Eina_Bool bg_state : 1;
+
+   struct
+   {
+      E_Indicator_State        state;
+      E_Indicator_Opacity_Mode opacity_mode;
+      E_Indicator_Visible_Type visible_type;
+   } indicator;
+
+   struct
+   {
+      Eina_Bool provider : 1;
+      Eina_Bool consumer : 1;
+      int       bind_ref;
+   } remote_surface;
+
+   Eina_Bool is_cursor : 1; // The client is a cursor client
+
+   int effect_type;
+   Eina_Bool use_splash : 1;
+   Eina_Bool saved_img : 1; // indicates that window has been saved as the image file even once
+   E_DEPRECATED Eina_Bool skip_save_img: 1; // indicates that window doesn't want to save its image file
+
+   E_Hwc_Window *hwc_window; // hwc window for the tdm_hwc.
+   Eina_Bool explicit_sync;
+   int acquire_fence_fd;
+   int comp_override;
+
+   struct
+   {
+      Eina_Bool    wait_commit : 1;
+      E_DEPRECATED unsigned int serial;
+      Eina_List   *pending_geometry; // E_Client_Pending_Geometry
+   } surface_sync;
+
+   Eina_Bool on_render_list : 1; // client is on the render list
+
+   // flag to check event pairing
+   struct
+   {
+      Eina_Bool add  : 1; // ADD / REMOVE
+      Eina_Bool show : 1; // SHOW / HIDE
+   } reg_ev;
+
+   E_View_Image *magnifier_proxy;  // The proxy object used by magnifier
+   Eina_Bool    is_magnifier : 1;  // The client is a magnifier client
+
+   struct
+   {
+      Eina_Bool    use : 1; // use the base output resolution
+      int          w;
+      int          h;
+      E_Util_Transform *transform;
+      E_Comp_Wl_Hook *hook_subsurf_create;
+   } base_output_resolution;
+
+   Eina_Bool hwc_visible_skip : 1;
+
+   struct
+   {
+      Eina_Bool     enable;
+      E_Desk_Area  *desk_area;
+      E_Util_Transform *transform;
+   } desk_area;
+
+   Eina_Bool transient_for_always_on_top;
+   Eina_Bool belong_to_parent;
+   struct
+   {
+      int count;
+      Eina_Bool running;
+   } show_pending;
+
+   E_Layer floating_saved_layer;
+
+   struct
+   {
+      int x, y, w, h;
+      Eina_Bool enable_aspect_ratio;
+      Evas_Object *resize_obj;
+      float aw, ah;
+      int header_h, footer_h;
+      unsigned int unit_size;
+      struct
+      {
+         int t, b, l, r;
+      } shadow;
+   } manage_resize;
+
+   Eina_Bool move_after_resize;
+
+   struct
+   {
+      int x, y, w, h;
+   } maximized_info;
+
+   struct
+   {
+      Eina_Bool enable;
+      E_Util_Transform *transform;
+      E_Comp_Wl_Hook *hook_subsurf_create;
+   } desk_zoom;
+
+   E_Maximize_Direction maximize_dir;
+   E_Maximize_Type      maximize_type;
+
+   struct
+   {
+      Eina_Bool            enabled;
+      double               fps;
+      double               old_fps;
+      double               frametime;
+      double               time;
+      double               lapse;
+      int                  cframes;
+      int                  flapse;
+   } E_DEPRECATED fps;
+};
+
 
 EINTERN Eina_Bool e_client_init(void);
 EINTERN void      e_client_shutdown(void);
index e923b96c0f519480aed889f7f97aaf1c072563e8..046808e9f94690769cb01905d74af233d18407ab 100644 (file)
@@ -356,520 +356,6 @@ struct _E_Client_Pending_Geometry
    E_DEPRECATED unsigned int                  serial;
 };
 
-struct _E_Client
-{
-   E_Object e_obj_inherit;
-   EINA_INLIST;
-
-   E_Pixmap *pixmap;
-
-   int x, y, w, h; //frame+client geom
-   struct {
-      int x, y, w, h; //frame+client geom before move or resize callback
-   } pre_cb;
-   Eina_Rectangle client; //client geom
-   Evas_Object *frame; //comp object
-   E_Zone *zone;
-   E_Desk *desk;
-
-   E_DEPRECATED Ecore_Poller              *ping_poller;
-   Ecore_Timer               *kill_timer;
-
-   E_Client                  *parent;
-   Eina_List                 *transients;
-
-   E_Layer                    layer;
-
-   Eina_Rectangle           *shape_rects;
-   unsigned int              shape_rects_num;
-
-   Eina_Rectangle           *shape_input_rects;
-   unsigned int              shape_input_rects_num;
-
-   E_Comp_Wl_Client_Data    *comp_data;
-
-   E_Action                  *cur_mouse_action;
-
-   E_DEPRECATED int               border_size; //size of client's border
-
-   struct
-   {
-      struct
-      {
-         int x, y, w, h;
-         int mx, my;
-      } current, last_down[3], last_up[3];
-      Eina_Bool in : 1;
-   } mouse;
-
-   struct
-   {
-      struct
-      {
-         int x, y, w, h;
-         int mx, my;
-         int button;
-      } down;
-   } moveinfo;
-
-   E_Pointer_Mode     resize_mode;
-
-   struct
-   {
-      unsigned char changed : 1;
-      unsigned char user_selected : 1;
-      Eina_Stringshare *name;
-   } border;
-
-   struct
-   {
-      int          x, y, w, h;
-      E_Layer      layer;
-      int          zone;
-      E_Maximize   maximized;
-   } saved;
-
-   struct
-   {
-      unsigned char valid : 1;
-      int           x, y, w, h;
-      struct
-      {
-         int x, y, w, h;
-      } saved;
-   } pre_res_change;
-
-   E_DEPRECATED unsigned char  shaped : 1;
-   unsigned char  argb : 1;
-
-   /* ICCCM */
-   struct
-   {
-      Eina_Stringshare        *title;
-      Eina_Stringshare        *name;
-#if defined(__cplusplus) || defined(c_plusplus)
-      Eina_Stringshare        *cpp_class; /* for C++ TODO: change the implementation for this */
-#else
-      Eina_Stringshare        *class;
-#endif
-      int                       min_w, min_h;
-      int                       max_w, max_h;
-      Ecore_Window            transient_for;
-      Eina_Stringshare         *window_role;
-      unsigned char             take_focus : 1;
-      unsigned char             accepts_focus : 1;
-      unsigned char             delete_request : 1;
-      struct
-      {
-         unsigned char transient_for : 1;
-      } fetch;
-   } icccm;
-
-   /* NetWM */
-   struct
-   {
-      pid_t         pid;
-      Eina_Stringshare *name;
-
-      unsigned char opacity;
-      Eina_Bool     opacity_changed : 1; // prevent fetching opacity next prop change
-      E_DEPRECATED unsigned char ping : 1;
-
-      /* NetWM Window state */
-      struct
-      {
-         unsigned char modal : 1;
-         unsigned char skip_taskbar : 1;
-         unsigned char skip_pager : 1;
-      } state;
-
-      /* NetWM Window allowed actions */
-      E_Window_Type  type;
-   } netwm;
-
-   /* Extra e stuff */
-   struct
-   {
-      struct
-      {
-         struct
-         {
-            E_Client_Rotation_Type type;
-            struct
-              {
-                 E_Client_Rotation_Angle prev, curr, next, reserve;
-              } ang;
-            struct
-              {
-                 int x, y, w, h;
-              } geom[4];
-            unsigned char support : 1;
-            unsigned char geom_hint: 1;
-            unsigned char pending_change_request : 1;
-            unsigned char pending_show : 1;  // newly created window that has to be rotated will be show after rotating done.
-                                             // so, it will be used pending e_border_show called at main eval time.
-            unsigned char wait_for_done: 1;
-            unsigned char app_set : 1;    // app wants to communicate with the window manager
-            int           rot;            // decided rotation by the window manager
-            E_Client_Rotation_Angle  preferred_rot;  // app specified rotation
-            E_Client_Rotation_Angle *available_rots; // app specified available rotations
-            unsigned int  count;          // number of elements of available rotations
-            unsigned int  nopending_render : 1; // app wants to show rendering jobs before sending rotation_done
-                                                // it is set by 'wm.policy.win.rot.render.nopending' aux hint
-         } rot;
-      } state;
-
-      struct
-      {
-         struct
-         {
-            unsigned char support : 1;
-            unsigned char geom_hint : 1;
-            unsigned char app_set : 1;        // app wants to communicate with the window manager
-            unsigned char preferred_rot : 1;  // app specified rotation
-            unsigned char available_rots : 1; // app specified available rotations
-            unsigned char need_rotation : 1;
-         } rot;
-      } fetch;
-   } e;
-
-   struct
-   {
-      struct
-      {
-         unsigned char state : 1;
-         unsigned char vkbd : 1;
-      } fetch;
-      unsigned char                  have_property : 1;
-      unsigned char                  vkbd : 1;
-#ifdef _F_E_VIRTUAL_KEYBOARD_TYPE_
-      E_Virtual_Keyboard_Window_Type win_type;
-#endif
-      unsigned char                  floating : 1;
-   } vkbd;
-
-   struct
-   {
-      unsigned char visible : 1;
-      unsigned char pos : 1;
-      unsigned char size : 1;
-      unsigned char stack : 1;
-      unsigned char prop : 1;
-      unsigned char border : 1;
-      unsigned char reset_gravity : 1;
-      unsigned char shape : 1;
-      unsigned char shape_input : 1;
-      unsigned char icon : 1;
-      Eina_Bool internal_state : 1;
-      Eina_Bool need_maximize : 1;
-      Eina_Bool need_unmaximize : 1;
-      Eina_Bool rotation : 1;
-      Eina_Bool accepts_focus : 1;
-      Eina_Bool tz_position : 1; /* true when new position is set using tizen_position interface */
-      unsigned char title : 1;
-      E_DEPRECATED unsigned char buf_size : 1;
-   } changes;
-
-   struct
-   {
-      E_Alpha_Opaque opaque;
-      int obscured;
-      unsigned char changed : 1;
-      Eina_Bool skip : 1;
-      Eina_Bool force_obscured : 1;
-      int last_sent_type;
-      Eina_Bool ignore_geometry : 1;
-
-      //view listener
-      E_DEPRECATED struct wl_listener show_listener;
-      E_DEPRECATED struct wl_listener hide_listener;
-      E_DEPRECATED struct wl_listener move_listener;
-      E_DEPRECATED struct wl_listener resize_listener;
-      E_DEPRECATED struct wl_listener restack_listener;
-   } visibility;
-
-   struct
-   {
-      E_DEPRECATED double zoom;
-      E_DEPRECATED double angle;
-
-      E_DEPRECATED Evas_Point center;
-      E_DEPRECATED Evas_Point adjusted;
-
-      struct
-      {
-         E_DEPRECATED double x, y, z;
-      } E_DEPRECATED saved[4];
-   } E_DEPRECATED transform;
-
-   unsigned int       visible : 1; // client is set to be visible by display server (never use this)
-   unsigned int       hidden : 1; // set when window has been hidden by api and should not be shown
-   unsigned int       moving : 1;
-   unsigned int       focused : 1;
-   unsigned int       new_client : 1;
-   unsigned int       re_manage : 1; // client is persisting from before E restart
-   unsigned int       placed : 1;
-   unsigned int       iconic : 1;
-   unsigned int       deskshow : 1;
-   unsigned int       sticky : 1;
-   unsigned int       fullscreen : 1;
-   unsigned int       need_fullscreen : 1;
-   unsigned int       skip_fullscreen : 1;
-   unsigned int       need_reparent : 1;
-   unsigned int       delete_requested : 1;
-   E_DEPRECATED unsigned int       ping_ok : 1;
-   E_DEPRECATED unsigned int       hung : 1;
-   unsigned int       take_focus : 1;
-   unsigned int       want_focus : 1;
-   unsigned int       user_skip_winlist : 1;
-   E_Maximize         maximized;
-   E_Fullscreen       fullscreen_policy;
-   E_Layer            fullscreen_layer;
-   E_Transient        transient_policy;
-   unsigned int       borderless : 1;
-   Eina_Stringshare  *bordername;
-
-   unsigned int       lock_user_location : 1; /*DONE*/
-   unsigned int       lock_client_location : 1; /*DONE*/
-   unsigned int       lock_user_size : 1; /*DONE*/
-   unsigned int       lock_client_size : 1; /*DONE*/
-   unsigned int       lock_user_stacking : 1; /*DONE*/
-   unsigned int       lock_client_stacking : 1; /*DONE*/
-   unsigned int       lock_user_iconify : 1; /*DONE*/
-   unsigned int       lock_client_iconify : 1; /*DONE*/
-   unsigned int       lock_user_desk : 1;
-   unsigned int       lock_client_desk : 1;
-   unsigned int       lock_user_sticky : 1; /*DONE*/
-   unsigned int       lock_client_sticky : 1; /*DONE*/
-   unsigned int       lock_user_maximize : 1; /*DONE*/
-   unsigned int       lock_client_maximize : 1; /*DONE*/
-   unsigned int       lock_user_fullscreen : 1; /*DONE*/
-   unsigned int       lock_client_fullscreen : 1; /*DONE*/
-   unsigned int       lock_border : 1; /*DONE*/
-   unsigned int       lock_close : 1; /*DONE*/
-   unsigned int       lock_focus_in : 1; /*DONE*/
-   unsigned int       lock_focus_out : 1; /*DONE*/
-
-   unsigned int       internal : 1;
-   E_DEPRECATED Eina_Bool          dead : 1;
-
-   E_DEPRECATED double             ping;
-
-   unsigned char      changed : 1;
-
-   E_DEPRECATED E_Client_Move_Intercept_Cb move_intercept_cb;
-
-   unsigned char              comp_hidden   : 1;
-
-   E_Focus_Policy             focus_policy_override;
-
-   Eina_Bool override : 1;
-   E_DEPRECATED Eina_Bool input_only : 1;
-   Eina_Bool dialog : 1;
-   Eina_Bool redirected : 1;
-   Eina_Bool layer_block : 1; // client is doing crazy stuff and should not be relayered in protocol
-   Eina_Bool layer_pending : 1; // change inlist stack but postpone evas stack
-   Eina_Bool ignored : 1; // client is comp-ignored
-   Eina_Bool maximize_override : 1; // client is doing crazy stuff and should "just do it" when moving/resizing
-   E_DEPRECATED Eina_Bool transformed : 1;
-   Eina_Bool keyboard_resizing : 1;
-   Eina_Bool gesture_disable : 1;
-   Eina_Bool floating : 1; //client is set as floating mode
-   Eina_Bool first_mapped : 1;
-   Eina_Bool post_raise : 1;
-   Eina_Bool post_lower : 1;
-   Eina_Bool animatable : 1; //client is animatable (can apply animation)
-
-   Eina_Bool on_post_updates : 1; // client is on the post update list
-   uuid_t uuid;
-
-   int client_type; //e_client_type
-
-   struct
-   {
-      unsigned char by_client : 1; // will be deprecated
-      unsigned char not_raise : 1;
-      unsigned char skip_iconify : 1;
-      unsigned char skip_by_remote : 1;    // skip iconify by remote surface client
-      unsigned char deiconify_update : 1;  // wait client render if deiconify_update is 1
-      unsigned char buffer_flush : 1;      // 0: no flush, 1: flush buffer when iconify
-      unsigned char last_sent_iconic : 1;  // 0: uniconify, 1: iconify
-      E_Iconified_Type type;
-   } exp_iconify;
-
-   struct
-   {
-      Eina_Bool set;
-      Eina_Bool saved;
-      E_Layer   saved_layer; // original layer
-   } changable_layer[E_CHANGABLE_LAYER_TYPE_MAX];
-
-   struct
-   {
-      Eina_List *transform_list;
-      Eina_Bool  background;
-      Eina_Bool  changed;
-
-      struct
-      {
-         int client_x, client_y, client_w, client_h;
-         int frame_w, frame_h;
-         unsigned char argb : 1;
-      } backup;
-
-      struct
-      {
-         Eina_Bool                    enable;
-         E_Util_Transform_Matrix      matrix;
-         E_Util_Transform_Matrix      inv_matrix;
-         E_Util_Transform_Rect_Vertex vertices;
-         E_Util_Transform             transform;
-
-         struct
-         {
-            E_Util_Transform_Rect_Vertex vertices;
-            int x, y, w, h;
-         } boundary;
-
-      } result;
-
-      struct
-      {
-         Eina_Bool               enable;
-         E_Util_Transform_Matrix matrix;
-         E_Util_Transform_Zoom   zoom;
-      } parent;
-
-      Eina_Bool direct_render;
-      Eina_Bool activate;
-      Eina_Bool update_lock;
-   } transform_core;
-
-   Ecore_Timer *map_timer;
-   Eina_Bool pointer_enter_sent;
-   Eina_Bool has_cursor_unset : 1; // The client has set cursor null to hide cursor image
-
-   Eina_Bool launching : 1;
-   Eina_Bool extra_animating : 1;
-   Eina_Bool bg_state : 1;
-
-   struct
-   {
-      E_Indicator_State        state;
-      E_Indicator_Opacity_Mode opacity_mode;
-      E_Indicator_Visible_Type visible_type;
-   } indicator;
-
-   struct
-   {
-      Eina_Bool provider : 1;
-      Eina_Bool consumer : 1;
-      int       bind_ref;
-   } remote_surface;
-
-   Eina_Bool is_cursor : 1; // The client is a cursor client
-
-   int effect_type;
-   Eina_Bool use_splash : 1;
-   Eina_Bool saved_img : 1; // indicates that window has been saved as the image file even once
-   E_DEPRECATED Eina_Bool skip_save_img: 1; // indicates that window doesn't want to save its image file
-
-   E_Hwc_Window *hwc_window; // hwc window for the tdm_hwc.
-   Eina_Bool explicit_sync;
-   int acquire_fence_fd;
-   int comp_override;
-
-   struct
-   {
-      Eina_Bool    wait_commit : 1;
-      E_DEPRECATED unsigned int serial;
-      Eina_List   *pending_geometry; // E_Client_Pending_Geometry
-   } surface_sync;
-
-   Eina_Bool on_render_list : 1; // client is on the render list
-
-   // flag to check event pairing
-   struct
-   {
-      Eina_Bool add  : 1; // ADD / REMOVE
-      Eina_Bool show : 1; // SHOW / HIDE
-   } reg_ev;
-
-   E_View_Image *magnifier_proxy;  // The proxy object used by magnifier
-   Eina_Bool    is_magnifier : 1;  // The client is a magnifier client
-
-   struct
-   {
-      Eina_Bool    use : 1; // use the base output resolution
-      int          w;
-      int          h;
-      E_Util_Transform *transform;
-      E_Comp_Wl_Hook *hook_subsurf_create;
-   } base_output_resolution;
-
-   Eina_Bool hwc_visible_skip : 1;
-
-   struct
-   {
-      Eina_Bool     enable;
-      E_Desk_Area  *desk_area;
-      E_Util_Transform *transform;
-   } desk_area;
-
-   Eina_Bool transient_for_always_on_top;
-   Eina_Bool belong_to_parent;
-   struct
-   {
-      int count;
-      Eina_Bool running;
-   } show_pending;
-
-   E_Layer floating_saved_layer;
-
-   struct
-   {
-      int x, y, w, h;
-      Eina_Bool enable_aspect_ratio;
-      Evas_Object *resize_obj;
-      float aw, ah;
-      int header_h, footer_h;
-      unsigned int unit_size;
-      struct
-      {
-         int t, b, l, r;
-      } shadow;
-   } manage_resize;
-
-   Eina_Bool move_after_resize;
-
-   struct
-   {
-      int x, y, w, h;
-   } maximized_info;
-
-   struct
-   {
-      Eina_Bool enable;
-      E_Util_Transform *transform;
-      E_Comp_Wl_Hook *hook_subsurf_create;
-   } desk_zoom;
-
-   E_Maximize_Direction maximize_dir;
-   E_Maximize_Type      maximize_type;
-
-   struct
-   {
-      Eina_Bool            enabled;
-      double               fps;
-      double               old_fps;
-      double               frametime;
-      double               time;
-      double               lapse;
-      int                  cframes;
-      int                  flapse;
-   } E_DEPRECATED fps;
-};
-
 #define EC_CHANGED(EC) e_client_changed_set(EC, EINA_TRUE)
 
 #define E_CLIENT_FOREACH(EC) \