From c2364010645fba6cc9a4d2646918d2b005e5fa7f Mon Sep 17 00:00:00 2001 From: Doyoun Kang Date: Tue, 5 Dec 2023 09:25:17 +0900 Subject: [PATCH] ecore_wl2: change code not to destroy zxdg resource in ecore_wl2_window_hide We changed code that the zxdg resource is not destroyed even if ecore_wl2_window_hide() is called. The zxdg resource will be destroyed in _ecore_wl2_window_semi_free. Change-Id: I61152fba98cd8784f264ed55a1f4635ba922caf3 --- src/lib/ecore_wl2/ecore_wl2_window.c | 47 +++++++++++++----------------------- 1 file changed, 17 insertions(+), 30 deletions(-) diff --git a/src/lib/ecore_wl2/ecore_wl2_window.c b/src/lib/ecore_wl2/ecore_wl2_window.c index 87c6c6d..66108ac 100644 --- a/src/lib/ecore_wl2/ecore_wl2_window.c +++ b/src/lib/ecore_wl2/ecore_wl2_window.c @@ -96,6 +96,13 @@ _ecore_wl2_window_semi_free(Ecore_Wl2_Window *window) if (window->zxdg_surface) zxdg_surface_v6_destroy(window->zxdg_surface); window->zxdg_surface = NULL; + window->xdg_configure_ack = NULL; + window->xdg_set_min_size = NULL; + window->xdg_set_max_size = NULL; + window->zxdg_configure_ack = NULL; + window->zxdg_set_min_size = NULL; + window->zxdg_set_max_size = NULL; + if (window->www_surface) www_surface_destroy(window->www_surface); window->www_surface = NULL; @@ -1362,6 +1369,7 @@ EAPI void ecore_wl2_window_show(Ecore_Wl2_Window *window) { EINA_SAFETY_ON_NULL_RETURN(window); + ERR("[WINDOW] ecore_wl2_window_show. win:%d", window->resource_id); _ecore_wl2_window_surface_create(window); @@ -1395,7 +1403,10 @@ ecore_wl2_window_show(Ecore_Wl2_Window *window) { uint32_t ver = wl_proxy_get_version((struct wl_proxy *)window->display->wl.tz_policy); if (ver >= TIZEN_POLICY_SHOW_SINCE_VERSION) - tizen_policy_show(window->display->wl.tz_policy, window->surface); + { + ERR("[WINDOW] call tizen_policy_show. win:%d, surface:%p", window->resource_id, window->surface); + tizen_policy_show(window->display->wl.tz_policy, window->surface); + } } #endif // @@ -1405,6 +1416,7 @@ EAPI void ecore_wl2_window_hide(Ecore_Wl2_Window *window) { EINA_SAFETY_ON_NULL_RETURN(window); + ERR("[WINDOW] ecore_wl2_window_hide. win:%d", window->resource_id); // TIZEN_ONLY(20201125) : support tizen protocol to notify hide request #ifdef TIZEN_POLICY_HIDE_SINCE_VERSION @@ -1412,7 +1424,10 @@ ecore_wl2_window_hide(Ecore_Wl2_Window *window) { uint32_t ver = wl_proxy_get_version((struct wl_proxy *)window->display->wl.tz_policy); if (ver >= TIZEN_POLICY_HIDE_SINCE_VERSION) - tizen_policy_hide(window->display->wl.tz_policy, window->surface); + { + ERR("[WINDOW] call tizen_policy_hide. win:%d, surface:%p", window->resource_id, window->surface); + tizen_policy_hide(window->display->wl.tz_policy, window->surface); + } } #endif // @@ -1454,37 +1469,9 @@ ecore_wl2_window_hide(Ecore_Wl2_Window *window) window->callback = NULL; } - // TIZEN_ONLY(20180614) : destroy shell surface and its role - if (window->zxdg_popup) zxdg_popup_v6_destroy(window->zxdg_popup); - window->zxdg_popup = NULL; - - if (window->zxdg_toplevel) zxdg_toplevel_v6_destroy(window->zxdg_toplevel); - window->zxdg_toplevel = NULL; - - if (window->zxdg_surface) zxdg_surface_v6_destroy(window->zxdg_surface); - window->zxdg_surface = NULL; - // END of TIZEN_ONLY(20180614) - - // TIZEN_ONLY(20181011) : destroy shell surface and its role - if (window->xdg_popup) xdg_popup_destroy(window->xdg_popup); - window->xdg_popup = NULL; - - if (window->xdg_toplevel) xdg_toplevel_destroy(window->xdg_toplevel); - window->xdg_toplevel = NULL; - - if (window->xdg_surface) xdg_surface_destroy(window->xdg_surface); - window->xdg_surface = NULL; - // END of TIZEN_ONLY(20181011) - window->set_config.serial = 0; window->req_config.serial = 0; window->def_config.serial = 0; - window->zxdg_configure_ack = NULL; - window->xdg_configure_ack = NULL; - window->xdg_set_min_size = NULL; - window->xdg_set_max_size = NULL; - window->zxdg_set_min_size = NULL; - window->zxdg_set_max_size = NULL; } static void -- 2.7.4