From 4a408dfdbc94d1e11c3b37459477da032ad3c8bd Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 8 Mar 2016 15:59:57 -0500 Subject: [PATCH] always run client res changes in e_comp_canvas_update() this function is only called when screen geometry (or useful geometry) has changed, and so all clients should have their geometries checked at this point to ensure that they update for any new zone obstacle changes which have occurred --- src/bin/e_comp_canvas.c | 41 ++++++++++++++++++++--------------------- 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/src/bin/e_comp_canvas.c b/src/bin/e_comp_canvas.c index 304528265..15b361fd7 100644 --- a/src/bin/e_comp_canvas.c +++ b/src/bin/e_comp_canvas.c @@ -532,6 +532,26 @@ e_comp_canvas_update(void) } } + for (i = 0; i < 11; i++) + { + Eina_List *tmp = NULL; + E_Client *ec; + + if (!e_comp->layers[i].clients) continue; + /* Make temporary list as e_client_res_change_geometry_restore + * rearranges the order. */ + EINA_INLIST_FOREACH(e_comp->layers[i].clients, ec) + { + if (!e_client_util_ignored_get(ec)) + tmp = eina_list_append(tmp, ec); + } + + EINA_LIST_FREE(tmp, ec) + { + e_client_res_change_geometry_save(ec); + e_client_res_change_geometry_restore(ec); + } + } if (!changed) return; if (!starting) { @@ -554,27 +574,6 @@ e_comp_canvas_update(void) } e_comp_canvas_zone_update(zone); } - - for (i = 0; i < 11; i++) - { - Eina_List *tmp = NULL; - E_Client *ec; - - if (!e_comp->layers[i].clients) continue; - /* Make temporary list as e_client_res_change_geometry_restore - * rearranges the order. */ - EINA_INLIST_FOREACH(e_comp->layers[i].clients, ec) - { - if (!e_client_util_ignored_get(ec)) - tmp = eina_list_append(tmp, ec); - } - - EINA_LIST_FREE(tmp, ec) - { - e_client_res_change_geometry_save(ec); - e_client_res_change_geometry_restore(ec); - } - } } E_API void