aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Hollerbach <mail@marcel-hollerbach.de>2019-07-15 22:06:06 +0200
committerCedric BAIL <cedric.bail@free.fr>2019-07-17 10:17:48 -0700
commitf97df4212a0a993ac71c27b8cc8871eedb304975 (patch)
tree65de97129c23171453dba6dd2504a4ce0f3f482e
parentefl_ui_widget: relax the amount of event subscriptions (diff)
downloadefl-f97df4212a0a993ac71c27b8cc8871eedb304975.tar.gz
efl_ui_win: optimize shutdown
in case we are having a scroller with a lot of elements on it, we are spending a lot of time in stuff like recalculating clips, even if they will never be used again. With this freeze here, we are saving 9s shutdown time in item_container. Which brings the overall closing time from 10s down to 1s, which is a win IMO. Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D9325
-rw-r--r--src/lib/elementary/efl_ui_win.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index ef3174e00f..d0cad8288b 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -2979,6 +2979,8 @@ _elm_win_img_callbacks_del(Evas_Object *obj, Evas_Object *imgobj)
EOLIAN static void
_efl_ui_win_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Win_Data *sd)
{
+ efl_event_freeze(sd->evas);
+
if ((sd->modal) && (evas_object_visible_get(obj)))
_elm_win_modality_decrement(sd);