From: SooChan Lim Date: Wed, 5 Jul 2023 07:00:17 +0000 (+0900) Subject: e_hwc: remove the use of ec->zone X-Git-Tag: accepted/tizen/unified/20230710.013140~5 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=83faaa1191f9c4f7164b8762bc9e2e60a5c8894b;p=platform%2Fupstream%2Fenlightenment.git e_hwc: remove the use of ec->zone The zone variable at ec will be deprecated. Change-Id: Ie7fd61c14839d1111f2d51f92a01f7f3efe0022d --- diff --git a/src/bin/e_hwc.c b/src/bin/e_hwc.c index 5328056..22ec8e0 100644 --- a/src/bin/e_hwc.c +++ b/src/bin/e_hwc.c @@ -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; } diff --git a/src/bin/e_hwc_window.c b/src/bin/e_hwc_window.c index 95ee449..3a21e19 100644 --- a/src/bin/e_hwc_window.c +++ b/src/bin/e_hwc_window.c @@ -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; diff --git a/src/bin/e_hwc_windows.c b/src/bin/e_hwc_windows.c index 0c63174..659fd8c 100644 --- a/src/bin/e_hwc_windows.c +++ b/src/bin/e_hwc_windows.c @@ -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))