e_hwc: remove the use of ec->zone 92/295392/1
authorSooChan Lim <sc1.lim@samsung.com>
Wed, 5 Jul 2023 07:00:17 +0000 (16:00 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Thu, 6 Jul 2023 08:50:48 +0000 (17:50 +0900)
The zone variable at ec will be deprecated.

Change-Id: Ie7fd61c14839d1111f2d51f92a01f7f3efe0022d

src/bin/e_hwc.c
src/bin/e_hwc_window.c
src/bin/e_hwc_windows.c

index 5328056..22ec8e0 100644 (file)
@@ -880,22 +880,16 @@ E_API Eina_Bool
 e_client_hwc_available_properties_get(E_Client *ec, const hwc_prop **props, int *count)
 {
    E_Hwc *hwc;
-   E_Output *output;
-   E_Zone *zone;
    E_Hwc_Window *hwc_window;
    E_Hwc_Window_State state;
    const tdm_prop *tprops;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
    EINA_SAFETY_ON_NULL_RETURN_VAL(count, EINA_FALSE);
-   zone = ec->zone;
-   EINA_SAFETY_ON_NULL_RETURN_VAL(zone, EINA_FALSE);
-   output = e_output_find(zone->output_id);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(output, EINA_FALSE);
-   hwc = output->hwc;
-   EINA_SAFETY_ON_NULL_RETURN_VAL(hwc, EINA_FALSE);
    hwc_window = ec->hwc_window;
    EINA_SAFETY_ON_NULL_RETURN_VAL(hwc_window, EINA_FALSE);
+   hwc = hwc_window->hwc;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(hwc, EINA_FALSE);
 
    state = e_hwc_window_state_get(hwc_window);
    if (state == E_HWC_WINDOW_STATE_VIDEO)
@@ -1004,13 +998,15 @@ e_client_hwc_on_plane(E_Client *ec)
    E_Plane *plane = NULL;
    E_Client *plane_ec = NULL;
    E_Hwc_Window *hwc_window;
+   E_Zone *zone;
    Eina_List *l = NULL;
    Eina_Bool ret = EINA_FALSE;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(ec->zone, EINA_FALSE);
+   zone = e_comp_zone_find_by_ec(ec);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(zone, EINA_FALSE);
 
-   output = e_output_find(ec->zone->output_id);
+   output = e_output_find(zone->output_id);
    EINA_SAFETY_ON_NULL_RETURN_VAL(output, EINA_FALSE);
 
    if (e_hwc_policy_get(output->hwc) == E_HWC_POLICY_PLANES)
@@ -1104,17 +1100,13 @@ e_client_hwc_presentation_callback_add(E_Client *ec, E_Hwc_Presentation_Done_Cb
 {
    E_Hwc_Presentation_Callback *callback;
    E_Hwc *hwc;
-   E_Output *output;
+   E_Hwc_Window *hwc_window;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(ec, NULL);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(ec->hwc_window, NULL);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(ec->zone, NULL);
    EINA_SAFETY_ON_NULL_RETURN_VAL(cb, NULL);
-
-   output = e_output_find(ec->zone->output_id);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(output, NULL);
-
-   hwc = output->hwc;
+   hwc_window = ec->hwc_window;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(hwc_window, NULL);
+   hwc = hwc_window->hwc;
    EINA_SAFETY_ON_NULL_RETURN_VAL(hwc, NULL);
    EINA_SAFETY_ON_FALSE_RETURN_VAL(hwc->hwc_policy == E_HWC_POLICY_WINDOWS, NULL);
 
@@ -1125,7 +1117,7 @@ e_client_hwc_presentation_callback_add(E_Client *ec, E_Hwc_Presentation_Done_Cb
    callback->cb = cb;
    callback->data = data;
 
-   if (!e_hwc_window_presentation_callback_pending_set(ec->hwc_window, callback))
+   if (!e_hwc_window_presentation_callback_pending_set(hwc_window, callback))
      {
         ERR("fail to e_hwc_window_presentation_callback_set");
         free(callback);
@@ -1136,7 +1128,7 @@ e_client_hwc_presentation_callback_add(E_Client *ec, E_Hwc_Presentation_Done_Cb
          hwc,
          callback,
          ec,
-         ec->hwc_window);
+         hwc_window);
 
    return callback;
 }
index 95ee449..3a21e19 100644 (file)
@@ -703,8 +703,8 @@ _e_hwc_window_new(E_Hwc *hwc, E_Client *ec, E_Hwc_Window_State state)
    e_hwc_presentation_callback_list_init(&hwc_window->pending_presentation_callbacks);
    e_hwc_presentation_callback_list_init(&hwc_window->presentation_callbacks);
 
-   EHWINF("is created on eout:%p, zone_id:%d video:%d cursor:%d",
-          hwc_window->ec, hwc_window->hwc, hwc_window, hwc->output, ec->zone->id,
+   EHWINF("is created on eout:%p, video:%d cursor:%d",
+          hwc_window->ec, hwc_window->hwc, hwc_window, hwc->output,
           hwc_window->is_video, hwc_window->is_cursor);
 
 end:
@@ -725,7 +725,7 @@ _e_hwc_window_client_cb_del(void *data EINA_UNUSED, E_Client *ec)
 
    EINA_SAFETY_ON_NULL_RETURN(ec);
 
-   zone = ec->zone;
+   zone = e_comp_zone_find_by_ec(ec);
    EINA_SAFETY_ON_NULL_RETURN(zone);
    EINA_SAFETY_ON_NULL_RETURN(zone->output_id);
 
@@ -781,7 +781,7 @@ _e_hwc_window_client_cb_transform_change(void *data EINA_UNUSED, E_Client *ec)
 
    EINA_SAFETY_ON_NULL_RETURN(ec);
 
-   zone = ec->zone;
+   zone = e_comp_zone_find_by_ec(ec);
    EINA_SAFETY_ON_NULL_RETURN(zone);
    EINA_SAFETY_ON_NULL_RETURN(zone->output_id);
 
@@ -832,7 +832,7 @@ _e_hwc_window_client_cb_zone_set(void *data, int type, void *event)
    ec = ev->ec;
    EINA_SAFETY_ON_NULL_GOTO(ec, end);
 
-   zone = ec->zone;
+   zone = e_comp_zone_find_by_ec(ec);
    EINA_SAFETY_ON_NULL_GOTO(zone, end);
    EINA_SAFETY_ON_NULL_GOTO(zone->output_id, end);
 
@@ -1065,7 +1065,7 @@ _e_hwc_window_cursor_info_get(E_Hwc_Window *hwc_window, tdm_hwc_window_info *hwc
    EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
    EINA_SAFETY_ON_TRUE_RETURN_VAL(e_object_is_del(E_OBJECT(ec)), EINA_FALSE);
 
-   zone = ec->zone;
+   zone = e_comp_zone_find_by_ec(ec);
    EINA_SAFETY_ON_NULL_RETURN_VAL(zone, EINA_FALSE);
 
    pointer = e_pointer_get(ec);
@@ -1093,7 +1093,7 @@ _e_hwc_window_cursor_info_get(E_Hwc_Window *hwc_window, tdm_hwc_window_info *hwc
         int dst_x, dst_y;
 
         e_pixmap_size_get(ec->pixmap, &bw, &bh);
-        e_comp_wl_rect_convert(ec->zone->w, ec->zone->h,
+        e_comp_wl_rect_convert(zone->w, zone->h,
                                output->config.rotation / 90, 1,
                                hwc_win_info->dst_pos.x, hwc_win_info->dst_pos.y,
                                bw, bh,
@@ -1152,7 +1152,7 @@ _e_hwc_window_info_get(E_Hwc_Window *hwc_window, tdm_hwc_window_info *hwc_win_in
    hwc = hwc_window->hwc;
    EINA_SAFETY_ON_NULL_RETURN_VAL(hwc, EINA_FALSE);
 
-   zone = ec->zone;
+   zone = e_comp_zone_find_by_ec(ec);
    EINA_SAFETY_ON_NULL_RETURN_VAL(zone, EINA_FALSE);
 
    output = hwc->output;
@@ -1184,7 +1184,7 @@ _e_hwc_window_info_get(E_Hwc_Window *hwc_window, tdm_hwc_window_info *hwc_win_in
         int dst_x, dst_y;
 
         e_pixmap_size_get(ec->pixmap, &bw, &bh);
-        e_comp_wl_rect_convert(ec->zone->w, ec->zone->h,
+        e_comp_wl_rect_convert(zone->w, zone->h,
                                output->config.rotation / 90, 1,
                                hwc_win_info->dst_pos.x, hwc_win_info->dst_pos.y,
                                bw, bh,
@@ -1286,7 +1286,7 @@ _e_hwc_window_video_info_get(E_Hwc_Window *hwc_window, tdm_hwc_window_info *hwc_
    hwc = hwc_window->hwc;
    EINA_SAFETY_ON_NULL_RETURN_VAL(hwc, EINA_FALSE);
 
-   zone = ec->zone;
+   zone = e_comp_zone_find_by_ec(ec);
    EINA_SAFETY_ON_NULL_RETURN_VAL(zone, EINA_FALSE);
 
    if (!e_client_video_info_get(ec, &vinfo))
@@ -2057,10 +2057,13 @@ e_hwc_window_device_state_available_update(E_Hwc_Window *hwc_window)
    Eina_Bool available = EINA_TRUE;
    E_Hwc_Window_Restriction restriction = E_HWC_WINDOW_RESTRICTION_NONE;
    E_Desk *desk;
+   E_Zone *zone;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(hwc_window, EINA_FALSE);
 
    ec = hwc_window->ec;
+   zone = e_comp_zone_find_by_ec(ec);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(zone, EINA_FALSE);
 
    if ((hwc_window->is_deleted) || (!ec) || e_object_is_del(E_OBJECT(ec)))
      {
@@ -2149,7 +2152,7 @@ e_hwc_window_device_state_available_update(E_Hwc_Window *hwc_window)
         goto finish;
      }
 
-   eout = e_output_find(ec->zone->output_id);
+   eout = e_output_find(zone->output_id);
    if (!eout)
      {
         restriction = E_HWC_WINDOW_RESTRICTION_OUTPUT;
@@ -2173,11 +2176,11 @@ e_hwc_window_device_state_available_update(E_Hwc_Window *hwc_window)
         goto finish;
      }
 
-   desk = e_desk_current_get(ec->zone);
+   desk = e_desk_current_get(zone);
    if (desk)
      {
-        if ((desk->geom.x != ec->zone->x) || (desk->geom.y != ec->zone->y) ||
-            (desk->geom.w != ec->zone->w) || (desk->geom.h != ec->zone->h))
+        if ((desk->geom.x != zone->x) || (desk->geom.y != zone->y) ||
+            (desk->geom.w != zone->w) || (desk->geom.h != zone->h))
           {
              restriction = E_HWC_WINDOW_RESTRICTION_DESK_GEOMETRY;
              available = EINA_FALSE;
index 0c63174..659fd8c 100644 (file)
@@ -1114,6 +1114,7 @@ _e_hwc_windows_visible_windows_list_get(E_Hwc *hwc)
    Eina_List *windows_list = NULL;
    E_Hwc_Window *hwc_window;
    E_Client  *ec, *topmost_ec, *bottom = NULL;
+   E_Zone *zone;
    Evas_Object *o;
    int ee_w, ee_h;
    int x, y, w, h;
@@ -1156,8 +1157,9 @@ _e_hwc_windows_visible_windows_list_get(E_Hwc *hwc)
 
         if (hwc)
           {
-             if (!ec->zone) continue;
-             if (e_output_find(ec->zone->output_id) != hwc->output) continue;
+             zone = e_comp_zone_find_by_ec(ec);
+             if (!zone) continue;
+             if (e_output_find(zone->output_id) != hwc->output) continue;
           }
 
         if (eina_list_data_find(windows_list, hwc_window))