diff options
author | Carsten Haitzler (Rasterman) <raster@rasterman.com> | 2019-09-05 14:33:00 +0100 |
---|---|---|
committer | Carsten Haitzler (Rasterman) <raster@rasterman.com> | 2019-09-05 14:33:00 +0100 |
commit | e6d9ea7539418ea2f898853c5f3655d3417153f7 (patch) | |
tree | aa9ffb4c29e68746dfd3aba477c32d6d2a7a5425 | |
parent | a70808fb9643e95659582aced54e09555252afe7 (diff) |
fix more edje file set breaks
if group does change unloaidng first is bad because of the same
reasons - losing swallowed etc. content. so disable entirely.
-rw-r--r-- | src/lib/edje/edje_smart.c | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/src/lib/edje/edje_smart.c b/src/lib/edje/edje_smart.c index 1777912f49..674c7cd514 100644 --- a/src/lib/edje/edje_smart.c +++ b/src/lib/edje/edje_smart.c | |||
@@ -466,21 +466,17 @@ edje_object_mmap_set(Edje_Object *obj, const Eina_File *file, const char *group) | |||
466 | EAPI Eina_Bool | 466 | EAPI Eina_Bool |
467 | edje_object_file_set(Edje_Object *obj, const char *file, const char *group) | 467 | edje_object_file_set(Edje_Object *obj, const char *file, const char *group) |
468 | { | 468 | { |
469 | const char *cur_file = efl_file_get(obj); | 469 | // We can't blindly unload here - this loses swallowed content (in |
470 | const char *cur_group = efl_file_key_get(obj); | 470 | // swallows, boxes, tables etc.) ... this here along with an actual |
471 | 471 | // implementation of file unload broke the pager in E for starters | |
472 | if (!(((file) && (cur_file) && (!strcmp(cur_file, file))) && | 472 | // as shading then unshading (double click titlebar) a window would |
473 | ((group) && (cur_group) && (!strcmp(cur_group, group))))) | 473 | // lose the mini preview image obj swallowed in. also fullscreening |
474 | { | 474 | // would do it. this also broke gadget bar, the xkb gadget in it too |
475 | // We can't blindly unload here - this loses swallowed content (in | 475 | // and more... so this is a particularly bad thing break. we need to |
476 | // swallows, boxes, tables etc.) ... this here along with an actual | 476 | // iterate over every child and re-swallow, re-pack into boxes, tables |
477 | // implementation of file unload broke the pager in E for starters | 477 | // etc. because that is what edje used to do. unloading here is definitely |
478 | // as shading then unshading (double click titlebar) a window would | 478 | // worse ... so disable for now. |
479 | // lose the mini preview image obj swallowed in. also fullscreening | 479 | // efl_file_unload(obj); |
480 | // would do it. this also broke gadget bar, the xkb gadget in it too | ||
481 | // and more... so this is a particularly bad thing break | ||
482 | efl_file_unload(obj); | ||
483 | } | ||
484 | return efl_file_simple_load(obj, file, group); | 480 | return efl_file_simple_load(obj, file, group); |
485 | } | 481 | } |
486 | 482 | ||