platform/core/uifw/lottie-player.git
6 years agolottie: mordernize using clang-tidy "modernize-use-override" 36/188236/1
subhransu mohanty [Mon, 3 Sep 2018 08:19:11 +0000 (17:19 +0900)]
lottie: mordernize using clang-tidy "modernize-use-override"

Change-Id: Ice8612f9ceb3b99ebeeb6b618a54e9298b4cb66f

6 years agolottie/render: hide the layer when matte layer is hidden. 31/188231/2
subhransu mohanty [Mon, 3 Sep 2018 07:39:34 +0000 (16:39 +0900)]
lottie/render: hide the layer when matte layer is hidden.

in AE matte layers visibility affects the layer below.

Change-Id: I0d1c6e19f78bc3d25ac6ae8a56ec5371a925e300

6 years agolottie/vector: fix build failure for non-arm devices 29/188229/2
Youngbok Shin [Mon, 3 Sep 2018 07:33:37 +0000 (16:33 +0900)]
lottie/vector: fix build failure for non-arm devices

Change-Id: Id03173880629859df24e8c195a5060d8494f8d88

6 years agolottie/render: don't try to render invisible layer. 23/188223/1
subhransu mohanty [Mon, 3 Sep 2018 06:49:10 +0000 (15:49 +0900)]
lottie/render: don't try to render invisible layer.

Change-Id: I2544b6a04d07eaf155fbddc405952e739b14eaf1

6 years agolottieplayer binding: ++apis bindings. 98/188098/4
Hermet Park [Fri, 31 Aug 2018 08:31:03 +0000 (17:31 +0900)]
lottieplayer binding: ++apis bindings.

Change-Id: I6becf969ae71d1b19399cc44ce1b38e92f3920d3

6 years agolottieplayer: keep API coding convention. 97/188097/2
Hermet Park [Fri, 31 Aug 2018 08:27:49 +0000 (17:27 +0900)]
lottieplayer: keep API coding convention.

Not use "get" prefix so far.

Change-Id: Iabc2852cd78d5ac4f4fa29f8b3b7195eafe1d804

6 years agolottie: fixed cmake build issue. 16/188216/1
subhransu mohanty [Mon, 3 Sep 2018 06:03:52 +0000 (15:03 +0900)]
lottie: fixed cmake build issue.

Change-Id: I48591bd78dd173d7f148cc2dcb3c31dd8cd9d1a2

6 years agolottie/parser: wrap the trim offset value before normalize. 97/188197/1
subhransu mohanty [Mon, 3 Sep 2018 03:31:16 +0000 (12:31 +0900)]
lottie/parser: wrap the trim offset value before normalize.

Change-Id: I5bce3b840cc54d626ea2397d35c4a7ef90e7be7e

6 years agolottie/example: sort the file list before showing it in list view. 96/188196/1
subhransu mohanty [Mon, 3 Sep 2018 03:26:50 +0000 (12:26 +0900)]
lottie/example: sort the file list before showing it in list view.

Change-Id: I3dd2c2d332cfc13265694e1ac6ee2a4bae6e1afd

6 years agolottie/example: enhanced lottieviewer example 38/187938/5
Jaeun Choi [Wed, 29 Aug 2018 14:24:45 +0000 (23:24 +0900)]
lottie/example: enhanced lottieviewer example

Change-Id: I0eb2a8c528376397190c75b084e9510c3698c034

6 years agolottie/vector: add a local arena allocator. 77/188077/1
subhransu mohanty [Fri, 31 Aug 2018 05:37:33 +0000 (14:37 +0900)]
lottie/vector: add a local arena allocator.

Change-Id: I7f76ab73d457ee9f4e9b5e35c1303c63c14efcea

6 years agolottie/resource: added new resource going to be used by mobile/vd team. 71/187971/1
subhransu mohanty [Thu, 30 Aug 2018 05:16:18 +0000 (14:16 +0900)]
lottie/resource: added new resource  going to be used by  mobile/vd team.

Change-Id: Ia25247bda7349c34df14aeeab24f1ec42e864d8c

6 years agolottie: fixed proper handling of offset property in trim object. 67/187967/1
subhransu mohanty [Thu, 30 Aug 2018 05:00:47 +0000 (14:00 +0900)]
lottie: fixed proper handling of offset property in trim object.
The offset property is in degree and wraps after 360 degree to 0.
so normalize the offset property to [0 - 1] and pass it to pathmesure object.

Change-Id: Ifd56f0926c1971dd5dd549787dcf5e5c35ed875a

6 years agolottie: added new lottie resource file. 66/187866/2
subhransu mohanty [Wed, 29 Aug 2018 05:42:35 +0000 (14:42 +0900)]
lottie: added new lottie resource file.

Change-Id: I487b65a371b2aeed80cda6211ab55ea525d37c9a

6 years agolottie/vector: move line related api to its own class . 45/187845/1
subhransu mohanty [Wed, 29 Aug 2018 02:36:10 +0000 (11:36 +0900)]
lottie/vector: move line related api to its own class .

Change-Id: Ib9072653cf534e558eedd88242535bc9a8e028fe

6 years agolottie/vector: refactor VPathMesure to handle offset . 92/187792/3
subhransu mohanty [Tue, 28 Aug 2018 06:14:24 +0000 (15:14 +0900)]
lottie/vector: refactor VPathMesure to handle offset .

Change-Id: Ic84c63376c52167ee2ae88d363bf22aadf4fbca9

6 years agovector/vdasher: fix a wrong code indentation about the previous patch 47/187747/1
Youngbok Shin [Tue, 28 Aug 2018 06:45:48 +0000 (15:45 +0900)]
vector/vdasher: fix a wrong code indentation about the previous patch

Sorry for my mistake.

Change-Id: I22388fce81738b781c225545e8bff98219be9317

6 years agolottie/vdasher: fix multiple dashes issue on multiple pathes 34/187734/1
Youngbok Shin [Tue, 28 Aug 2018 06:08:40 +0000 (15:08 +0900)]
lottie/vdasher: fix multiple dashes issue on multiple pathes

mIndex is for handling multiple dashes.
If a previous path ends at mIndex > 0,
it should be initialized as 0 when it starts job for next path.
The previous work shouldn't affect the next path.

Change-Id: Iab2b00fe456f7195acd7e086f55758ad7d2a7bf6

6 years agolottie/vector: refactor VDasher. 92/187692/1
subhransu mohanty [Tue, 28 Aug 2018 01:56:20 +0000 (10:56 +0900)]
lottie/vector: refactor VDasher.

Change-Id: I30ae3b69839754bfd7c3a19543d03cc205504681

6 years agolottie/vdasher: improve readability for cubicTo function 52/187652/2
Youngbok Shin [Mon, 27 Aug 2018 08:48:35 +0000 (17:48 +0900)]
lottie/vdasher: improve readability for cubicTo function

Change-Id: I86422527c33c323d0469a4a6b58089997b55b004

6 years agolottie/vdasher: improve readability for lineTo function 47/187647/3
Youngbok Shin [Mon, 27 Aug 2018 07:18:46 +0000 (16:18 +0900)]
lottie/vdasher: improve readability for lineTo function

It creates two internal functions for duplicated code.
By replacing nested 'if' conditions with the functions,
it improves readability and manageability.

Change-Id: I303ba6849f776c5f02df6552f0a37acecb14a78b

6 years agolottie/vdasher: remove connected dash lines between pathes 87/187587/2
Youngbok Shin [Fri, 24 Aug 2018 10:27:20 +0000 (19:27 +0900)]
lottie/vdasher: remove connected dash lines between pathes

Since managing multiple pathes by a painter or a stroke,
multiple pathes will be drawn in one "dashed" function call.
And its vdasher's moveTo() function only do the job properly
when there is only one moveTo call.
Now, the moveTo() function initialize internal properties properly.

Change-Id: I4dd45d480f27dce734ce2ef8d1ff38774c589e64

6 years agolottie: refactor the viewitems to have a parent, to optimize the size of the structure. 65/187565/1
subhransu mohanty [Fri, 24 Aug 2018 06:44:51 +0000 (15:44 +0900)]
lottie: refactor the viewitems to have a parent, to optimize the size of the structure.
1. we could move as much common data to parent structure and then keep the parent pointer in the child.
2. move expensive vmatrix data to parent.

Change-Id: Icfd3aa885ebfce5c9555f8b107d3b885827ebedf

6 years agolottie: fix issue - path was not updated properly for each painter item 57/187557/1
Youngbok Shin [Fri, 24 Aug 2018 05:41:31 +0000 (14:41 +0900)]
lottie: fix issue - path was not updated properly for each painter item

It also adds debug message for polystar type.

Change-Id: Ie1b788571d003402da0d518be484a0458df5dcec

6 years agolottie: refactor processing of trim objects. 34/187534/2
subhransu mohanty [Fri, 24 Aug 2018 02:01:48 +0000 (11:01 +0900)]
lottie: refactor processing of trim objects.

1. now each trim item keeps a list of path item it operates on.
2. trim update phase happens after the update phase. so that all path items are correctly updated.
3. Trim objects operate on a intermediate path so that multiple trim objects operating on same path can be possible.

Change-Id: I9a6d66aef4449b9399ebc65e29d8633cf41cd25a

6 years agolottie: fix doubled scale issue 58/187458/1
Youngbok Shin [Thu, 23 Aug 2018 10:31:28 +0000 (19:31 +0900)]
lottie: fix doubled scale issue

The scale was calculated based on length 2.
So, its result was also doubled.
It should be half before return scale result.

Change-Id: I66a5fa9ba235bd5ebcde89b9b3c01c0f128d217e

6 years agolottie: remove dead code. 46/187446/1
subhransu mohanty [Thu, 23 Aug 2018 08:19:43 +0000 (17:19 +0900)]
lottie: remove dead code.

Change-Id: I81d8c6e3e0c4b6b6d9cff03f70e8818af57dfade

6 years agolottie: fixed regression caused by last commit 45/187445/1
Youngbok Shin [Thu, 23 Aug 2018 08:07:48 +0000 (17:07 +0900)]
lottie: fixed regression caused by last commit

There was issue caused by item inside of groups.

Change-Id: If9057db4f183fc2956d3bd43dca92fc5bb628202

6 years agolottie: refactor the lottie scene graph processing. 23/187423/1
subhransu mohanty [Thu, 23 Aug 2018 02:12:13 +0000 (11:12 +0900)]
lottie: refactor the lottie scene graph processing.

Change-Id: I739aa19abaf7f141b556b67083df4461945461d9

6 years agolottie/vector : added addPath() api to vpath. 11/187411/1
subhransu mohanty [Thu, 23 Aug 2018 04:10:06 +0000 (13:10 +0900)]
lottie/vector : added addPath() api to vpath.

Change-Id: I3fd7ee9ba8add8f7109c23c0b6e62388b3fda5bf

6 years agolottie/vector: return correct number from segments() api. 10/187410/1
subhransu mohanty [Thu, 23 Aug 2018 04:13:08 +0000 (13:13 +0900)]
lottie/vector: return correct number from  segments() api.

Change-Id: Ifb90d0f7567ba0737f70c7b7abfc467e94004780

6 years agolottieplayer: polishing getFrameDuration(), getFrameRate() 30/187330/4
Hermet Park [Wed, 22 Aug 2018 05:25:56 +0000 (14:25 +0900)]
lottieplayer: polishing getFrameDuration(), getFrameRate()

Change-Id: I4344a6689c7ee8890e33978bfc5ca6a2c401da36

6 years agolottie/example: add frame information in lottieviewer example 56/187356/2
Jaeun Choi [Wed, 22 Aug 2018 07:26:44 +0000 (16:26 +0900)]
lottie/example: add frame information in lottieviewer example

Change-Id: If9245244bfd3e8d8050e18b5ea09fcaf240a867d

6 years agolottie/example: add APIs in lottieview to get frame rate and total frame number 55/187355/2
Jaeun Choi [Wed, 22 Aug 2018 07:24:26 +0000 (16:24 +0900)]
lottie/example: add APIs in lottieview to get frame rate and total frame number

Change-Id: I25d14d37776cd6bf07bcba1f0fc6a1c88e66dd71

6 years agolottie: remove the combined alpha value and method from path item 67/187267/3
Youngbok Shin [Tue, 21 Aug 2018 09:56:06 +0000 (18:56 +0900)]
lottie: remove the combined alpha value and method from path item

Alpha(opacity) values are not applied to path items.
Fill, Stroke and etc will handle opacity.

Change-Id: I8e05989e7f85797a00508c7ca151b1805d44f454

6 years agolottie: add APIs in lottieplayer to get frame rate and total frame number 86/187286/2
Jaeun Choi [Tue, 21 Aug 2018 12:43:22 +0000 (21:43 +0900)]
lottie: add APIs in lottieplayer to get frame rate and total frame number

Change-Id: Ib81eed03adf520927b3b434b67425168b07f13b1

6 years agobinding/c: more compatible with C compiler. 70/187270/11
Hermet Park [Tue, 21 Aug 2018 10:20:53 +0000 (19:20 +0900)]
binding/c: more compatible with C compiler.

Change-Id: I9fea4817cc913913f65c4b228cb0a42aae2cb2f8

6 years agolottie: fixed lottieviewer example 54/187254/1
Jaeun Choi [Fri, 17 Aug 2018 12:15:22 +0000 (21:15 +0900)]
lottie: fixed lottieviewer example

Change-Id: I5ede2096f3e00dd4b343a05b337dd67070f6ac66

6 years agolottie/example: updated lottieviewer example. 22/187222/1
subhransu mohanty [Tue, 21 Aug 2018 05:25:50 +0000 (14:25 +0900)]
lottie/example: updated lottieviewer example.

Change-Id: I97e30598090f16e4370f1d08dc94315789d82a3d

6 years agolottie/parser: changed the datatype of gradient member object . 19/187219/1
subhransu mohanty [Tue, 21 Aug 2018 05:05:50 +0000 (14:05 +0900)]
lottie/parser: changed  the datatype of gradient member object .

Change-Id: I2b1ca35904f1d5af39c0c76be47af582f9b93041

6 years agolottie/example: add complex gradient examples and remove simple one 16/187216/1
Youngbok Shin [Tue, 21 Aug 2018 04:57:22 +0000 (13:57 +0900)]
lottie/example: add complex gradient examples and remove simple one

Change-Id: I6003e3ca3209125c119feaaae55da35327b52a2c

6 years agolottie: fixed warnings generated by '-Wextra' flag. 15/187215/3
subhransu mohanty [Tue, 21 Aug 2018 04:21:16 +0000 (13:21 +0900)]
lottie: fixed warnings generated by  '-Wextra' flag.

Change-Id: I73c122f61e628bdbdb6ab98bb68b7d32ab9f4ec0

6 years agolottie/example: add a missing example lottie file 14/187214/1
Youngbok Shin [Tue, 21 Aug 2018 04:20:22 +0000 (13:20 +0900)]
lottie/example: add a missing example lottie file

It is good to test matte feature and managing multiple layers.

Change-Id: Ie87cc18d0b37b35858c765339d129dc35f2c2986

6 years agolottie: build fix. 02/187202/2
subhransu mohanty [Tue, 21 Aug 2018 03:59:33 +0000 (12:59 +0900)]
lottie: build fix.

Change-Id: Ie008c71e2fcb3bcf7197245e26880e71e2bedc32

6 years agolottie: add "lottieviewer" example 61/187061/3
Jaeun Choi [Fri, 17 Aug 2018 12:15:22 +0000 (21:15 +0900)]
lottie: add "lottieviewer" example

lottieviewer shows each frame image according to slider value.
since edc compilation is not supported yet,
do the following steps to run this example:

$ cd example
$ edje_cc layout.edc
$ mv layout.edj ../build/example

Change-Id: I00f7d8b743e9028d1e8006104e63bef5d96084b6

6 years agolottie/render: added support to render difference mask mode. 90/187190/4
sub.mohanty@samsung.com [Mon, 20 Aug 2018 15:35:49 +0000 (00:35 +0900)]
lottie/render: added support to render difference mask mode.

Change-Id: Ia6ccba78181c87c6b49124026494b324ba93a846

6 years agolottie/parser: updated parser to parse difference mask mode 89/187189/4
sub.mohanty@samsung.com [Mon, 20 Aug 2018 15:33:51 +0000 (00:33 +0900)]
lottie/parser: updated parser to parse difference mask mode

Change-Id: I607d4f56a849d1cb928926c2d4ecc30cf1313e7e

6 years agolottie: refactor VRaster class. 98/187198/2
subhransu mohanty [Tue, 21 Aug 2018 01:44:40 +0000 (10:44 +0900)]
lottie: refactor VRaster class.

Change-Id: Iadd382d34fcaa67a4cb60b44f22af38051f6f09a

6 years agolottie:convert remaining raw pointer to unique_ptr. 95/187195/2
subhransu mohanty [Tue, 21 Aug 2018 01:06:27 +0000 (10:06 +0900)]
lottie:convert remaining raw pointer to unique_ptr.

Change-Id: If85e7b8ffbbacd2cd305e6a3ef6d98ccd8ed7172

6 years agolottie/vector: added Xor operation to Rle object 88/187188/3
sub.mohanty@samsung.com [Mon, 20 Aug 2018 15:31:57 +0000 (00:31 +0900)]
lottie/vector: added Xor operation to Rle object

Change-Id: I48cb3680a22ce3fb7f07048385dd5cc518ff9c7e

6 years agolottieplayer: handling error code. 75/187175/2
Hermet Park [Mon, 20 Aug 2018 11:10:32 +0000 (20:10 +0900)]
lottieplayer: handling error code.

Change-Id: I24c88fad24b821e18e7071e6bd82a828b8fd358e

6 years agoadd c interface. 62/187062/6
Hermet Park [Fri, 17 Aug 2018 12:43:20 +0000 (21:43 +0900)]
add c interface.

Change-Id: Ifc81f35479aa6e0ef18ead5b863ae80b34f98f85

6 years agorefactor infrastructure. 35/187035/6
Hermet Park [Fri, 17 Aug 2018 09:41:34 +0000 (18:41 +0900)]
refactor infrastructure.

Split common delcaration from lottieplayer.h
This common delcaration will be used in c interface header files.

Change-Id: Icb3e3f182b2f27fc2d7c9bed36ac29c45c813b66

6 years agolottie: apply matte feature to LOTCompLayerItem 77/187177/2
Youngbok Shin [Mon, 20 Aug 2018 11:39:46 +0000 (20:39 +0900)]
lottie: apply matte feature to LOTCompLayerItem

The LOTCompLayerItem's MatteRle has to be inherited to its all children layers.
You can test it with "personal_character.json".

Change-Id: I225e16397441f9771286c6fcc821b5050b165ecc

6 years agolottie/render: handle the case when resulting mask is null. 37/187137/3
subhransu mohanty [Mon, 20 Aug 2018 07:12:17 +0000 (16:12 +0900)]
lottie/render: handle the case when resulting mask is null.

Change-Id: Ie78a1465474ec408bff0deafdff509f3b3a199d8

6 years agolottie: add getImage() API in lottieview 59/187059/2
Jaeun Choi [Fri, 17 Aug 2018 12:12:41 +0000 (21:12 +0900)]
lottie: add getImage() API in lottieview

Change-Id: Ic72bb47752797811cbe7c464e02c81bcfd0a9a11

6 years agolottie: use unique_ptr instead of raw pointer. 04/187104/4
subhransu mohanty [Mon, 20 Aug 2018 03:36:50 +0000 (12:36 +0900)]
lottie: use unique_ptr instead of raw pointer.

Change-Id: Ic5b416c72a96427dff3a99316550d8edb7ffece9

6 years agolottie/parser: treat root layer as a special precomp layer. 94/187094/4
subhransu mohanty [Mon, 20 Aug 2018 02:22:31 +0000 (11:22 +0900)]
lottie/parser: treat root layer as a special precomp layer.

Change-Id: Ic9a2b171ee349f132e52db5395a92587c9e44c08

6 years agolottie/player: refactor to use std::find_if instead of unorder_map. 91/187091/5
subhransu mohanty [Mon, 20 Aug 2018 01:18:33 +0000 (10:18 +0900)]
lottie/player: refactor to use std::find_if instead of unorder_map.

Change-Id: Ic146357db1312aa0ff122fa6859a64098e350740

6 years agolottie: build fix. 03/187103/2
subhransu mohanty [Mon, 20 Aug 2018 03:40:22 +0000 (12:40 +0900)]
lottie: build fix.

Change-Id: I5405a17d67066fc5cd10d816f4ed044fb8819471

6 years agolotplayer: improve header format. 20/187020/3
Hermet Park [Fri, 17 Aug 2018 08:19:08 +0000 (17:19 +0900)]
lotplayer: improve header format.

1. add namespace.
2. remove unnecessary export attribute.
3. hide prviate member.

This is one ongoing improvement.

Change-Id: I342e4d5e65370190ac55972b02f2fede1aee6d06

6 years agolottieplayer: Add render option to update buffer forcely. 83/186883/6
Hermet Park [Thu, 16 Aug 2018 08:12:43 +0000 (17:12 +0900)]
lottieplayer: Add render option to update buffer forcely.

plus code refactoring.

Change-Id: Icef131a7df5fa9766ff9cfe7513b1865692719f5

6 years agoenable build example in default. 37/187037/4
Hermet Park [Fri, 17 Aug 2018 09:44:03 +0000 (18:44 +0900)]
enable build example in default.

enable this under *aggressive development step.

Change-Id: I8ff728c94ef899441e8f528609248a9451ac7c0b

6 years agoupdate gitignore 36/187036/2
Hermet Park [Fri, 17 Aug 2018 09:43:37 +0000 (18:43 +0900)]
update gitignore

Change-Id: Ib1ccc3feb6155384c1c0bb7e101abbec19c2386c

6 years agolottie/parser: Added support for separate position attribute in transform object. 75/186975/4
subhransu mohanty [Fri, 17 Aug 2018 04:06:57 +0000 (13:06 +0900)]
lottie/parser: Added support  for separate position attribute in transform object.
Transform object can have separate x and y or a point object.

Change-Id: I0ad0073b3cb958336539ad520434c3284894c6b9

6 years agolottie/player: refactor lottieplayer. 07/186907/2
subhransu mohanty [Thu, 16 Aug 2018 10:25:14 +0000 (19:25 +0900)]
lottie/player: refactor lottieplayer.

Change-Id: Ia9b484e8be756d2e90f6b0d2a837f56e46f40e4c

6 years agolottie/vector: refactor VPath class to use emplace_back instead of push_back to avoid... 68/186868/1
subhransu mohanty [Thu, 16 Aug 2018 05:30:57 +0000 (14:30 +0900)]
lottie/vector: refactor VPath class to use emplace_back instead of push_back to avoid temporary object creation.

Change-Id: I0abc1be410a3758c447de8b4600c472f6298bcc7

6 years agolottie/optimization: keep drawablelist in layer to avoid memory allocation in every... 54/186854/1
subhransu mohanty [Thu, 16 Aug 2018 04:37:21 +0000 (13:37 +0900)]
lottie/optimization: keep drawablelist in layer to avoid memory allocation in every frame.

Change-Id: I80eebb9e1ab16a424a26a17ce67274c7518efca9

6 years agolottie: pass matteSource and bitmap to layer's render function 73/186773/10
Youngbok Shin [Tue, 14 Aug 2018 08:14:20 +0000 (17:14 +0900)]
lottie: pass matteSource and bitmap to layer's render function

matteSource layer has to be handled in other way.
For now, matteSource layer does not be applied to layers.
But, matteSource layer will be invisible.
In some test cases, it helps to check other layers which are overlayed by
a wrongly drawn matteSource layer. Anyway, the matte feature will be implemented soon.

Change-Id: Ib1e47e7ce9012b73a1729341d130defa561061c6

6 years agolottie/parser: refactor lottie model objects. 39/186839/2
subhransu mohanty [Thu, 16 Aug 2018 01:36:37 +0000 (10:36 +0900)]
lottie/parser: refactor lottie model objects.

Change-Id: I89160d918b36300b4f98a8059106c356e96643d0

6 years agolottie/parser: inherit from data object instead of group object as composition has... 33/186833/2
subhransu mohanty [Thu, 16 Aug 2018 01:16:49 +0000 (10:16 +0900)]
lottie/parser: inherit from data object instead of group object as composition has only a root layer.

Change-Id: I15f07d5d7ae2f8add4ac2b2de92628a33ab492e0

6 years agolottie/render: keep mRle object in valid state after moving the object. 29/186829/1
subhransu mohanty [Thu, 16 Aug 2018 01:03:07 +0000 (10:03 +0900)]
lottie/render: keep mRle object in valid state after moving the object.

Change-Id: I15c377dc53dbe5b87184ca4751c3473f486a3121

6 years agolottie/player: refactor composition class to keep a precomplayer instead of list... 89/186789/3
subhransu mohanty [Tue, 14 Aug 2018 09:57:43 +0000 (18:57 +0900)]
lottie/player: refactor composition class to keep a precomplayer instead of list of layers.

Change-Id: I7398392e52233e4c3d0452b03bcfd46261253601

6 years agolottie/example: delete the animator only when its created. 44/186744/2
subhransu mohanty [Tue, 14 Aug 2018 05:28:46 +0000 (14:28 +0900)]
lottie/example: delete the animator only when its created.

Change-Id: Id6a4a7e704a8da298c0cae91a7065b80163f843d

6 years agolottieplayer: fix broken animation. 88/186788/1
Hermet Park [Tue, 14 Aug 2018 09:57:00 +0000 (18:57 +0900)]
lottieplayer: fix broken animation.

A patch occured regression bug, because its depeneded patch was rebased.
call setPos() properly even in deferred method.

Change-Id: I89fa849304b6e5d260cc88c3863d8879c7bb463b

6 years agolottieplayer: simple optmization for deffered update. 51/186751/2
Hermet Park [Tue, 14 Aug 2018 05:57:36 +0000 (14:57 +0900)]
lottieplayer: simple optmization for deffered update.

This skips unnecessary update process from every user render-request.

Change-Id: Id3123bdb31879e1c559b6048ccf60d88dccb690f

6 years agolottieplayer: apply lazy update. 92/186692/5
Hermet Park [Mon, 13 Aug 2018 11:39:13 +0000 (20:39 +0900)]
lottieplayer: apply lazy update.

update size when it ready to go.

Change-Id: Ic1f27bc3f365526313059d7c9026478c41b557c8

6 years agolottie/render: Fixed valgrind warning for uninitialize member variable. 27/186727/3
subhransu mohanty [Tue, 14 Aug 2018 02:00:15 +0000 (11:00 +0900)]
lottie/render: Fixed valgrind warning for uninitialize member variable.

Change-Id: I3c985c00b54d91b936c401febe9dff0d766e1793

6 years agolottieplayer: code refactoring. 88/186688/2
Hermet Park [Mon, 13 Aug 2018 11:16:59 +0000 (20:16 +0900)]
lottieplayer: code refactoring.

change type to struct and declare type scopes explicitly.

Change-Id: If85fbc97917ba324030c3e65765f315e590239ed

6 years agolottieplayer: merge setPos() with renderList() 83/186683/3
Hermet Park [Mon, 13 Aug 2018 10:29:38 +0000 (19:29 +0900)]
lottieplayer: merge setPos() with renderList()

renderList() build render tree based on current Position.
merge both api helps user to avoid mistake.

Change-Id: Ia158f28b5ab66ec6e20665726a21d7f1c4e4cc13

6 years agolottieplayer: remove redundant calls. 77/186677/1
Hermet Park [Mon, 13 Aug 2018 10:07:35 +0000 (19:07 +0900)]
lottieplayer: remove redundant calls.

Those calls are useless on load time.

Change-Id: If69033eb244078c4f9b9258fcbc71eff17b894c9

6 years agolottie/render: remove unused functions. 38/186638/1
subhransu mohanty [Mon, 13 Aug 2018 05:02:00 +0000 (14:02 +0900)]
lottie/render: remove unused functions.

Change-Id: Ib8d7319da4af0814072ed60869e053896336298d

6 years agolottie/player: call setPos() only if size is already set. 35/186635/1
subhransu mohanty [Mon, 13 Aug 2018 04:43:19 +0000 (13:43 +0900)]
lottie/player: call setPos() only if size is already set.

Change-Id: If08c49c398d6d8d90ab845020108b368ea204505

6 years agolottie/render: fixed issue with + and - operator implementation of VRle. 04/186604/2
sub.mohanty@samsung.com [Sat, 11 Aug 2018 11:15:14 +0000 (20:15 +0900)]
lottie/render: fixed issue with + and - operator implementation of VRle.

Change-Id: Idd852768fde5bdd731c2a85e8abdee094b39f110

6 years agolottie/render: fixed transparency issue in renderer. 15/186415/1
subhransu mohanty [Thu, 9 Aug 2018 10:39:01 +0000 (19:39 +0900)]
lottie/render: fixed transparency issue in renderer.

Change-Id: I8c1128b5cdd46718deeff6eda21663699dfd4b4c

6 years agolottie/resource: add more lottie resource. 98/186398/1
subhransu mohanty [Thu, 9 Aug 2018 09:06:05 +0000 (18:06 +0900)]
lottie/resource: add more lottie resource.

Change-Id: Ife04ca8de9da22e1188b73aa550aae9df4d262de

6 years agolottie/player: Update dirty flag enum value. 94/186394/1
subhransu mohanty [Thu, 9 Aug 2018 09:03:53 +0000 (18:03 +0900)]
lottie/player: Update dirty flag enum value.

Change-Id: I590ac039ca84c6f9b553db017188821ead852abb

6 years agolottie: few more resource for testing. 24/186324/3
subhransu mohanty [Thu, 9 Aug 2018 02:52:00 +0000 (11:52 +0900)]
lottie: few more resource for testing.

Change-Id: I11c1bd4d87ca79416698a9f9b6ba9b68d859892d

6 years agolottie/render: Draw layers form back to front in the composition layer. 15/186315/2
subhransu mohanty [Thu, 9 Aug 2018 02:09:36 +0000 (11:09 +0900)]
lottie/render: Draw layers form back to front in the composition layer.

Change-Id: I41c0aedef7cc76e768c6d4776f7a29b3b1cab474

6 years agolottie: added new resource for testing. 08/186308/2
subhransu mohanty [Thu, 9 Aug 2018 01:25:20 +0000 (10:25 +0900)]
lottie: added new resource for testing.

Change-Id: I0050594833dfabf8f3d724d1da1636e2a18e735f

6 years agolottie/player: take buffer argument by value. 06/186306/1
subhransu mohanty [Thu, 9 Aug 2018 01:10:44 +0000 (10:10 +0900)]
lottie/player: take buffer argument by value.
As we have async rendering, we can't rely on the caller to keep the buffer alive till render finish.

Change-Id: Ic7f9670a5e5003424c2b695c171a13717e531b21

6 years agolottie/player: make sure model or composition available before calling api. 03/186303/2
subhransu mohanty [Thu, 9 Aug 2018 00:52:20 +0000 (09:52 +0900)]
lottie/player: make sure model or composition available before calling api.

Change-Id: Ia1351bbd076d0e3189d033f708bd3ec281c30cd4

6 years agolottie/vector: added isEmpty() api in size class. 02/186302/1
subhransu mohanty [Thu, 9 Aug 2018 00:51:43 +0000 (09:51 +0900)]
lottie/vector: added isEmpty() api in size class.

Change-Id: Ia49254b2d83c047d268ff7510c058c6b25873564

6 years agolottie/render : fixed dash regression 05/186205/1
subhransu mohanty [Mon, 6 Aug 2018 08:09:23 +0000 (17:09 +0900)]
lottie/render : fixed dash regression

Change-Id: I7a79295348ba23d8328718014a49760c2e11e731

6 years agolottie/vector: fixed dasher issue. 04/186204/1
subhransu mohanty [Mon, 6 Aug 2018 06:56:10 +0000 (15:56 +0900)]
lottie/vector: fixed dasher issue.

Change-Id: If602ac7441469c5ed8bfe0500154a585087f433f

6 years agolottie/vector: refactored VRle class to use cow_ptr. 11/185911/4
subhransu mohanty [Wed, 1 Aug 2018 02:04:29 +0000 (11:04 +0900)]
lottie/vector: refactored VRle class to use cow_ptr.

Change-Id: I00dd76c57e94a255efb478a61465ce6b20e8d0b5

6 years agolottie/render: Implement drawRle() with position information. 62/185962/1
subhransu mohanty [Mon, 6 Aug 2018 01:19:57 +0000 (10:19 +0900)]
lottie/render: Implement drawRle() with position information.

Change-Id: Ia5bbcf911baaaa4b684045a6ac28c4dcfc14f841

6 years agolottie/render: don't redraw stroke/dash if there is no change 91/185891/2
Youngbok Shin [Fri, 3 Aug 2018 08:46:02 +0000 (17:46 +0900)]
lottie/render: don't redraw stroke/dash if there is no change

It will improve performance.

Change-Id: I3764d126d7eae19d009d72998247789e620205a1

6 years agolottie: don't redraw path item if its properties are not changed 56/185856/3
Youngbok Shin [Fri, 3 Aug 2018 04:38:04 +0000 (13:38 +0900)]
lottie: don't redraw path item if its properties are not changed

A path item has few animation frames, it has to be redrawn only in
animated frames. If the path item became static after animation frames,
it shouldn't redraw its path.
It will improve performance.

Change-Id: I583f2b8a889208a07530f6d06ed90469bcee726c

6 years agolottie: always get the item by ref or const ref. 96/185796/1
subhransu mohanty [Thu, 2 Aug 2018 05:57:08 +0000 (14:57 +0900)]
lottie: always get the item by ref or const ref.

Change-Id: Id798812b135d2e1ef1fb593412808f15e2645761