summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorJunsuChoi <jsuya.choi@samsung.com>2019-10-02 14:30:06 +0900
committerJunsuChoi <jsuya.choi@samsung.com>2019-10-02 14:30:06 +0900
commit779bd0539eb6ab8050289da83d0792670a15422c (patch)
treed40a315662f3fc92cd47d5aa404859f7b26a8aca /src/lib
parent6deb21f9f9e326921c16dabbd774b8d1666867c8 (diff)
vg_common_json: Override value_provider list
Summary: If value_provider is applied to Efl.Ui.Animation_View, it is passed as vector object. The passed value_provider list passes to Vg_File_Data. If there is a value_Provider list in Vg_File_Data, it apply the property to Lottie_Animation using lottie_animation_property_override api. Depends on D9874 Test Plan: ... Eo *vp = efl_add(EFL_GFX_VG_VALUE_PROVIDER_CLASS, p); efl_gfx_vg_value_provider_keypath_set(vp, "**"); efl_gfx_vg_value_provider_fill_color_set(vp, 100, 0 ,0 ,255); efl_ui_animation_view_value_provider_override(anim_view, vp); vp = efl_add(EFL_GFX_VG_VALUE_PROVIDER_CLASS, p); efl_gfx_vg_value_provider_keypath_set(vp, "**"); efl_gfx_vg_value_provider_stroke_width_set(vp, 50.0); efl_gfx_vg_value_provider_stroke_color_set(vp, 0, 255, 0, 100); efl_ui_animation_view_value_provider_override(anim_view, vp); ... Reviewers: Hermet, kimcinoo, smohanty Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D9897
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/elementary/efl_ui_animation_view.c1
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object.c2
-rw-r--r--src/lib/evas/include/evas_private.h1
3 files changed, 4 insertions, 0 deletions
diff --git a/src/lib/elementary/efl_ui_animation_view.c b/src/lib/elementary/efl_ui_animation_view.c
index bca8c1d..82aba0f 100644
--- a/src/lib/elementary/efl_ui_animation_view.c
+++ b/src/lib/elementary/efl_ui_animation_view.c
@@ -741,6 +741,7 @@ _efl_ui_animation_view_value_provider_override(Eo *obj EINA_UNUSED, Efl_Ui_Anima
741 741
742 efl_ref(value_provider); 742 efl_ref(value_provider);
743 pd->vp_list = eina_list_append(pd->vp_list, value_provider); 743 pd->vp_list = eina_list_append(pd->vp_list, value_provider);
744 efl_key_data_set(pd->vg, "_vg_value_providers", pd->vp_list);
744} 745}
745 746
746EAPI Elm_Animation_View* 747EAPI Elm_Animation_View*
diff --git a/src/lib/evas/canvas/efl_canvas_vg_object.c b/src/lib/evas/canvas/efl_canvas_vg_object.c
index 0c8e50b..660d1eb 100644
--- a/src/lib/evas/canvas/efl_canvas_vg_object.c
+++ b/src/lib/evas/canvas/efl_canvas_vg_object.c
@@ -616,6 +616,8 @@ _cache_vg_entry_render(Evas_Object_Protected_Data *obj,
616 h = size.h; 616 h = size.h;
617 617
618 } 618 }
619 if (pd->vg_entry->vfd)
620 pd->vg_entry->vfd->vp_list = efl_key_data_get(obj->object, "_vg_value_providers");
619 root = evas_cache_vg_tree_get(vg_entry, pd->frame_idx); 621 root = evas_cache_vg_tree_get(vg_entry, pd->frame_idx);
620 if (!root) return; 622 if (!root) return;
621 623
diff --git a/src/lib/evas/include/evas_private.h b/src/lib/evas/include/evas_private.h
index c80053c..86bb885 100644
--- a/src/lib/evas/include/evas_private.h
+++ b/src/lib/evas/include/evas_private.h
@@ -1541,6 +1541,7 @@ struct _Vg_File_Data
1541 Vg_File_Anim_Data *anim_data; //only when animation supported. 1541 Vg_File_Anim_Data *anim_data; //only when animation supported.
1542 int ref; 1542 int ref;
1543 int w, h; //default size 1543 int w, h; //default size
1544 Eina_List *vp_list; //Value providers.
1544 1545
1545 void *loader_data; //loader specific local data 1546 void *loader_data; //loader specific local data
1546 1547