path: root/src/lib/edje/edje_embryo.c (follow)
AgeCommit message (Collapse)Author
2018-06-21Revert "edje: code refactoring for readibility."Hermet Park
This reverts commit 7fb47fc064b8f429242b4d5cdf57071475087821. subsequential revert for previous one. 90a89d1ab2b5d23b29ad0f2680b77b5ba7f56b42.
2018-06-07edje: code refactoring for readibility.Hermet Park
collection.part is too ambigious, since group has parts as well. Normally we regard it as "name" (of group) instead of part.
2018-05-08edje: Pass extra signal data to program_runDerek Foreman
Summary: Depends on D6114 Reviewers: zmike, cedric Reviewed By: zmike Tags: #efl Differential Revision:
2017-09-13edje: Remove use of smart clipped dataJean-Philippe Andre
This removes dependency on a legacy structure. Edje object does not change the smart data, unlike evas box and grid.
2017-08-05edje - add embryo echo command for debuggingCarsten Haitzler (Rasterman)
finally add one... @feature
2017-06-09edje: add set_pointer_mode() to embryo functionsMike Blumenkrantz
this should probably be a description-level property
2017-02-07edje: fix cached edje modification issueJee-Yong Um
Summary: _edje_part_***_set/get (for mouse_events, repeat_events, ignore_flags, mask_flags) overwrite cached edje value. These behaviors affect all edje object added after these changes, and result in not intended. @fix Reviewers: jpeg, cedric Subscribers: akanad, woohyun Differential Revision: Signed-off-by: Cedric BAIL <>
2016-12-21edje: clean erroneous documentationBruno Dilly
Not implemented functions
2016-12-21edje: add function on embryo to control focusBruno Dilly
Add set_focus(part_id) and unset_focus(). Both functions accept an optional argument "seat_name". If not provided default seat will be assumed.
2016-09-22Revert "edje edje_embryo: use strncpy()."Carsten Haitzler (Rasterman)
This reverts commit 06bd8dcf330fe31891475c92aa340d4886f47e2b. just dismiss in coverity if the code is not actually wrong
2016-09-21edje edje_embryo: use strncpy().Hermet Park
This change is not meaningful but avoids an annoying coverity detection.
2016-08-21edje - fix missing vector field frees, copies, handling etc.Carsten Haitzler (Rasterman)
it seems vector type parts were not handled all that well. we had at least one mem leak with the vector mempool never being freed... so i filled in various missing points where vector parts were not being handled right. @fix
2016-08-16edje_embryo: add function to know swallow has objectJinyong Park
Summary: Using edc script, there is no way to know evas object is set on swallow part or not. So, to know that, some elm widget send signal and save some information to edc variables when object is set on swallow part. I think it is helpful to make better edc script. @feature Reviewers: herb, cedric, raster, id213sin, jpeg Reviewed By: jpeg Subscribers: jpeg Differential Revision:
2016-08-15edje - save memory on edje parts as a lot of over-allocation was doneCarsten Haitzler (Rasterman)
so ... Edje_Calc_Params was huge ... like about 200 bytes. every part in every live edje object got one of these in addtion to real part struct info etc. ... so really every part was probably consuming 300-500 bytes or so... crazy. so i made a lot of the data now optional so only the minimum required is allocated now which cuts down about 110 or even 120 bytes per part, depending. 100 bytes was needed for 3d node parts even though almsot no parts are 3d node parts... the image and text data was 30-40 bytes so we consumed 100 even if we only used 30-40... so this cuts that done and puts in polace calc param cleanup funcs everywhere they are needed to clean up this extra allocated data. i also reduced this even more by maping pointers to req_drag, map and physics and clip_to fields in another extension struct cutting down another 28/52 bytes on most parts (in return for an added 4/8 bytes - on 32/64bit accordingly). in elementary_test this saves about ~300kb of ram for just having the etst run and displaying (peak memory measuremment). so massif says 10.6M -> 10.3M. @optimize
2016-08-01edje - reduce memory footrpint by dlopening ephysics on demandCarsten Haitzler (Rasterman)
this saves about another 80Kb or so in dirty pages by only loading ephysics when needed. This removed ephysics and bullet library dirty pages from the process space. this is another patch to address T4227. @fix
2016-07-13edje: Add missing 'break' in edje_embryo switchJean-Philippe Andre
Fixes CID: 1352521 1352522 1352523 1352524 1352525 See 4ed9b8325
2016-03-04edje_embryo: add box attributes support to set_state_val()Jee-Yong Um
Summary: Add box attributes support to set_state_val(). Reviewers: raster, cedric Reviewed By: cedric Subscribers: jpeg Differential Revision: Signed-off-by: Cedric BAIL <>
2016-02-19edje: clear pending programs upon calling stop_programs_on()Mike Blumenkrantz
pending programs have not started yet, so they are not directly attached to the part. failing to remove them results in unexpected behavior from programs ref 71ce70bc3f97853f3cfeb07ab0a9d8c213e322b1 @fix
2016-01-13Edje: enhance embryo stack broken error messageShinwoo Kim
Summary: Enhance embry stack broken error message Test Plan: Make a run_program run a script Reviewers: raster, zmike, jpeg Reviewed By: jpeg Subscribers: cedric, seoz, jpeg Differential Revision:
2015-12-23edje_embryo: Fix null dereference issueVivek Ellur
Summary: Fix Coverity issue ID 1299026 Signed-off-by: Vivek Ellur <> Reviewers: cedric, raster Reviewed By: raster Subscribers: raster, cedric Differential Revision:
2015-09-23edje: fix internal colorclass fieldAndrii Kroitor
Summary: Its value is never modified directly and should not be modifiled by mistake in future. @fix Reviewers: Hermet, raster, reutskiy.v.v, cedric Reviewed By: cedric Subscribers: cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2015-08-04edje_embryo: add methods to handle event flags.Jee-Yong Um
Summary: Add embryo methods that change the state whether Edje_Part will handle Evas_Event or not. Reviewers: Hermet, woohyun, cedric Reviewed By: cedric Subscribers: cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2015-06-29edje: fix extra parens warning with clangDaniel Kolesa
2015-06-25edje: implement methods for mouse_events with edje_part for Edje Embryo script.Jee-Yong Um
Summary: In edje_embryo.c, there are the list for supported methods in script. However, methods listed from line 175 to 188 don't exist actually. This patch implements 4 methods among them. set_mouse_events(part_id, ev) get_mouse_events(part_id) set_repeat_events(part_id, rep) get_repeat_events(part_id) Reviewers: Hermet, woohyun, cedric Reviewed By: cedric Subscribers: cedric, Hermet Differential Revision: Signed-off-by: Cedric BAIL <>
2015-06-25edje_embryo: correct type mismatching in get_geometry() methodJee-Yong Um
Summary: get_geometry() method calls edje_object_part_geometry_get() internally, and the type of its arguments is Evas_Coord. (typedef'ed integer) However, comment says that method require Float type as its arguemnts, and get_geometry() initializes Evas_Coord variables as 0.0. This patch corrects type mismatching and comment. @fix Reviewers: Hermet Subscribers: cedric, Hermet Differential Revision:
2015-06-18edje: Fix Coverity CID1299026 and CID1299027: Explicit null dereferenceChris Michael
Summary: Coverity reports that this potentially is passing a NULL pointer to strcmp. As the GETSTR macro Can possible return NULL we should be checking that return before passing it to strcmp. @fix Signed-off-by: Chris Michael <>
2015-06-08edje: reformat all C filesMike Blumenkrantz
this has been unreadable for years due to the french tabber.
2015-05-18edje: Remove unused variablesChris Michael
Signed-off-by: Chris Michael <>
2015-05-18edje: add set_state_anim API to embryo script.kumar navneet
Summary: Issue: Current embryo script do not provide any mechanism to set transition type in animation Solution: A new API set_state_anim is added. Signed-Off by: Kumar Navneet <> Signed-Off by: Shilpa Singh <> Test Plan: A test edc (embryo_set_state_anim.edc) is added to edje examples to test set_state_anim API. Reviewers: shilpasingh, raster, cedric Reviewed By: cedric Subscribers: poornima.srinivasan, cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2015-05-18set_tween_state_anim API added.kumar navneet
Summary: Issue: Current embryo script do not provide any mechanism to set transition type in animation, by default supports only linear e.g: set_tween_state API Solution: To not break backward compatibility, a new API set_tween_state_anim is added in which we can even specify type of transition required. Signed-Off by: Kumar Navneet <> Signed-Off by: Shilpa Singh <> Test Plan: A test edc (embryo_tween_anim.edc) is added to edje examples to test set_tween_state_anim API. Reviewers: raster, cedric, shilpasingh, Hermet Reviewed By: shilpasingh Subscribers: poornima.srinivasan, SubodhKumar, rajeshps, cedric, govi Differential Revision:
2015-05-14edje: support translation on static strings in edc.katpavalli
Summary: Internationalisation of the static text specified as part of the edc is implemented. Problem: Static text when specified in the edc, remains unchanged when the system language is changed. Solution: Language support is provided even for the static strings in the edc. Test Plan: Test code to test this implementation is done as part of efl/src/examples/edje/edje-text.c and efl/src/examples/edje/text.edc Compile the code with the below command edje_cc -md <dir path>/efl/src/examples/edje/ text.edc && gcc -o edje-text edje-text.c `pkg-config --libs --cflags ecore-evas edje evas ecore` ./edje-text 1) change the language of the system using the command export LANGUAGE=hi ./edje.text Not the text Loading gets displayed in hindi language 2) change the language of the system using the command export LANGUAGE=ta ./edje.text Not the text Loading gets displayed in tamil language 3) change the language of the system using the command export LANGUAGE=en ./edje.text Not the text Loading gets displayed in english language As the number of .mo files in the /edje folder can be increased, those many languages can be supported Reviewers: cedric, shilpasingh Reviewed By: shilpasingh Subscribers: cedric, rajeshps, govi, poornima.srinivasan Differential Revision: Signed-off-by: Cedric BAIL <>
2015-04-29Edje embryo: Fix invalid check for get_state_val (text str)Jean-Philippe Andre
2014-09-04edje embryo stop_program() should stop pending actionszmike
ACTION_STOP already does this @fix
2014-07-23edje embryo: Now supports get_anim_pos_mapAmitesh Singh
Summary: works just like ecore_animator_pos_map(). @feature Reviewers: seoz, Hermet, cedric, raster Subscribers: cedric, seoz Differential Revision:
2014-04-25edje now has the group.script_recursion flag for permitting unsafe embryo ↵Mike Blumenkrantz
recursion this is enabled for all scripts within a group, and it should only be used if you: 1) know what you are doing 2) know why this is unsafe (T905) @feature
2014-04-21edje now alerts the user to its failure when running recursive embryo programsMike Blumenkrantz
2014-03-24Eolian: Integration of Edje and Edje EditYossi Kantor
2014-03-20Add new PLUGIN_RUN action type and new plugins.plugin handlers 1. If ↵Tae-Hwan Kim
external library is commerical source and not opensource, we cannot include/build the library within edje. 2. If external library does not use general encodable sources, we... Summary: ...cannot encode those things into edje. In our case, we need vibration when longpressed. But those files are not audio or image and cannot be encoded into edje. Also, this library is not opensource so should not be linked directly with edje. So we should call vibration API by using this plug-in. Reviewers: raster, cedric, seoz, Hermet CC: cedric Differential Revision:
2014-02-09edje - feature - add channel types for sounds and ability to mute themCarsten Haitzler (Rasterman)
this adds a new feature to be able to assign a sample to a given "type" of audio channel, and then to be able to mute these from code.
2014-02-03edje embryo reset timer should probably call the reset functionzmike
2014-02-03edje embryo now supports reset_timer()zmike
works the same as ecore_timer_reset()
2013-12-23edje: edje_calc - update _edje_part_description_findVyacheslav Reutskiy
Add to fuction prototype new param: Eina_Bool approximation. If need exact matching state name and value set EINA_FALSE to 'approximate'. In other cases used EINA_TRUE. Reviewers: cedric, raster, seoz CC: cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2013-12-02Adding the cubic-bezier curve to edje transitionsOtavio Pontes
Summary: Adding an option to use a cubic-bezier curve in edje transitions. Reviewers: Sachiel, cedric, raster Reviewed By: raster CC: raster Differential Revision:
2013-11-21edje - use Eina_Bool.ChunEon Park
2013-08-28[edje_embryo] Fix play_sample's parameter count checkJaehyun Cho
play_sample function requires 2 parameters however it checks parameter count as 1.
2013-05-31add embryo params for proxy src visible/clipMike Blumenkrantz
hermet please look at these, they don't seem to work right for some reason
2013-05-31edje - indent fix.ChunEon Park
2013-05-09add embryo fill support for proxy partsMike Blumenkrantz
2013-05-09fix edje custom states on proxy partsMike Blumenkrantz
2013-04-08edje: reuse existing index instead of a direct pointer (-30KB).Cedric Bail
This one does account for the fact that we always read relative information even when only computing a part of it.