platform/upstream/efl.git
3 years agoEanimator-vsync : Disabled log print 90/251190/1
Woochanlee [Mon, 11 Jan 2021 06:16:16 +0000 (15:16 +0900)]
Eanimator-vsync : Disabled log print

We need to call eina_log_threads_enable() when print eina_log in thread.

If we use eina_log in thread without a mutex lock, if the log_domain is realloc in main thread,
it may refer to wrong memory ref and cause memory curruption.

Change-Id: I4e1c4ceabee183673da8ab50c7fcfb331ea11a09

3 years agoevas vector: Fix stroke's width scaling 87/250787/4
Piotr Kalota [Mon, 4 Jan 2021 13:01:31 +0000 (14:01 +0100)]
evas vector: Fix stroke's width scaling

Since the scale value was multiplied by current stroke's width, scaling
worked diffrently than implementation without thorvg. Stroke's width field in
_Efl_Canvas_Vg_Shape_Data allows us to multiply scale value by the base width
set in the evas_vg_node_shape_stroke_set and now this implementation
works correctly

Change-Id: I88b009878d69dc7ed558a6035fa2b7c2ec06e103

3 years agodocs: Fix errors in Evas that make wrong API reference documentation 85/250985/1 accepted/tizen/unified/20210112.123544 submit/tizen/20210110.221552
Myoungwoon Roy, Kim [Wed, 6 Jan 2021 09:21:12 +0000 (18:21 +0900)]
docs: Fix errors in Evas that make wrong API reference documentation

Change-Id: I1be1d3f31114b9972f132bcd1df06ea1c841af07

3 years agodocs: Fix errors in Ecore/Eina that makes wrong API reference documentation 19/250819/1
Myoungwoon Roy, Kim [Tue, 5 Jan 2021 04:22:45 +0000 (13:22 +0900)]
docs: Fix errors in Ecore/Eina that makes wrong API reference documentation

Change-Id: I79487ece77271b0a06199541959d540fd83ca776

3 years agodocs: Fix error in Eet that makes wrong API reference documentation 02/250802/1
Myoungwoon Roy, Kim [Tue, 5 Jan 2021 01:50:15 +0000 (10:50 +0900)]
docs: Fix error in Eet that makes wrong API reference documentation

Change-Id: I66440fbaa857326c64290c97834c2028b435ddc9

3 years agodocs: Fix errors In Eina/Eet that make wrong API reference documentation 77/250677/2
Myoungwoon Roy, Kim [Thu, 31 Dec 2020 06:56:13 +0000 (15:56 +0900)]
docs: Fix errors In Eina/Eet that make wrong API reference documentation

Change-Id: I70ac4339a1eac92c7d58b37e9538ba768d395466

3 years agogengrid: modify getenv calls as getenv is expensive calls 47/250747/2
SangHyeon Jade Lee [Mon, 4 Jan 2021 08:10:11 +0000 (17:10 +0900)]
gengrid: modify getenv calls as getenv is expensive calls

Change-Id: I9f7dbd9eeff97d74c645108933fe3e33423cba0e

3 years agoatspi: make webapp work 65/250665/1 accepted/tizen/unified/20210104.130306 submit/tizen/20210103.044544 submit/tizen/20210103.212140
Shinwoo Kim [Mon, 28 Dec 2020 11:16:00 +0000 (20:16 +0900)]
atspi: make webapp work

The webapp does not use evas smart object which type is (E)WebView.
The webapp is using only window. So we need to check promissed data
using the window, and create elm_atspi_ewk_wrapper.

Change-Id: Id6ab9b7fa329f40de7f1479e5a23888a80fdad6d

3 years agodocs: Fix doxygen errors in Edje that make wrong API reference documentation 44/250644/1
Myoungwoon Roy, Kim [Wed, 30 Dec 2020 22:29:49 +0000 (07:29 +0900)]
docs: Fix doxygen errors in Edje that make wrong API reference documentation

Change-Id: I6995c111fed40daa62724ad364cb1e0d88be7c2c

3 years agoAdd realize policy canvas output for optimized lazy loading on scroller in gengrid... 32/250632/3
SangHyeon Jade Lee [Wed, 30 Dec 2020 10:46:02 +0000 (19:46 +0900)]
Add realize policy canvas output for optimized lazy loading on scroller in gengrid case

This patch is tricky way of realize/unrealize item on evas output size
instead of object size.
export or setenv() "GENGRID_REALIZE_POLICY_CANVAS_OUTPUT",
gengrid will change realize policy to canvas output.

@tizen_only

Change-Id: I99f6007f19721228233d006e283fe46ebd4eef6a
Signed-off-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
3 years agoGradient get float/double fix 37/250337/3
Michal Maciola [Wed, 23 Dec 2020 15:24:14 +0000 (16:24 +0100)]
Gradient get float/double fix

Patch fixes types convertion problems for evas_vg_gradient_radial_center_get() and other functions

Change-Id: I18a2a639aaca2cac90c53bcca904b91f02a2f587

3 years agodocs: Fix doxygen errors that generates wrong API reference documentation 97/250397/1
Myoungwoon Roy, Kim [Thu, 24 Dec 2020 06:51:36 +0000 (15:51 +0900)]
docs: Fix doxygen errors that generates wrong API reference documentation

Change-Id: If7b7cc504a25e41986ced37343697e949597873b
(cherry picked from commit 5b0589e3555d714de30a3428e71b21b20c78bc89)

3 years agoevas vector: changes reconciling the differences in the direction of arc drawing... 68/250268/2
Mira Grudzinska [Tue, 22 Dec 2020 16:15:45 +0000 (17:15 +0100)]
evas vector: changes reconciling the differences in the direction of arc drawing in  EFL and ThorVG

Since EFL and ThorVG draw arcs anti-clockwise and clockwise, respectively,
it was necessary to change the sign of angles in a ThorVG function call.
The current point has been properly assigned in the arc drawing API.

Change-Id: I397afdd8213713f32f537c2dfb9f0d2b5b920ef4

3 years agoDnD: Make the accepted callback of elm_drag_start working correctly 49/250249/2
Taehyub Kim [Tue, 22 Dec 2020 09:09:22 +0000 (18:09 +0900)]
DnD: Make the accepted callback of elm_drag_start working correctly

problem: The accepted callback of elm_drag_start always returns 0
solved: The accepted callback will be return 1 when drag and drop is finished successfully.
        (When the drag data is sent)

Change-Id: Id877b3f39b1634128fa453d99cde20bd6e44806a

3 years agoevas vector: fixed dash getter. 71/250071/3
Michal Szczecinski [Fri, 18 Dec 2020 12:33:16 +0000 (13:33 +0100)]
evas vector: fixed dash getter.

Dash properties getter was return wrong values which may cause crashes
or unexpedcted behaviour.

Change-Id: I1f42e40ec69bee219e0e25d19c65090138fbfd3b

3 years agoefl_ui_dnd: change dnd window type to utility type since enlightenment server does... 40/250140/1
Taehyub Kim [Mon, 21 Dec 2020 06:37:06 +0000 (15:37 +0900)]
efl_ui_dnd: change dnd window type to utility type since enlightenment server does not support dnd window type

Change-Id: Ie55f1fe4e197a025c37f078a1cc7b6cb6660386b

3 years agoevas render: ++safety 60/249960/2 submit/tizen/20201220.213638
Hermet Park [Fri, 18 Dec 2020 02:53:00 +0000 (11:53 +0900)]
evas render: ++safety

Null check exceptional handling in just case.

Change-Id: I17793d2d573f5b64f011de449057fab598dd6d53

3 years agodocs: Removing unnecessary HTML link for feature/privilege 76/249876/1
Myoungwoon Roy, Kim [Thu, 17 Dec 2020 07:24:35 +0000 (16:24 +0900)]
docs: Removing unnecessary HTML link for feature/privilege

Change-Id: I17b93d9c2569b344f1afe3166572a6bccf1c6b69

3 years agoevas vector: Fixed translation of interpoalted shape 41/249541/2
Piotr Kalota [Mon, 14 Dec 2020 13:23:31 +0000 (14:23 +0100)]
evas vector: Fixed translation of interpoalted shape

Added interpolation of x and y fields of the node data, used for shape transalting during rendering

Change-Id: Iae242c93fca43448ed58c77790d89f3719813f98

3 years agoevas vector: efl_vanvas_vg_image: added scene pushing in render_pre_tvg 71/249771/2
Michal Maciola [Wed, 16 Dec 2020 11:29:23 +0000 (12:29 +0100)]
evas vector: efl_vanvas_vg_image: added scene pushing in render_pre_tvg

Change-Id: I84faac086cf906eead2658475c623f23aefd59c8

3 years agoevas vector: code integration fix 39/249639/2
Michal Maciola [Tue, 15 Dec 2020 17:37:57 +0000 (18:37 +0100)]
evas vector: code integration fix

Change-Id: Ic732a89eb92f028e64fed5ff3769b1c53678588b

3 years agoedje_data: Add missing descriptor for image.max(min).limit 28/249828/1
JunsuChoi [Thu, 17 Dec 2020 03:50:47 +0000 (12:50 +0900)]
edje_data: Add missing descriptor for image.max(min).limit

Summary:
Edje_Part_Description_Image uses EDJE_DATA_DESCRIPTOR_DESCRIPTION_COMMON_SUB,
EDJE_DATA_DESCRIPTOR_DESCRIPTION_COMMON_SUB is missing max.limit and min.limit descriptors.
Therefore, max:SOURCE and min:SOURCE did not work in EDC.
Adds a descriptor to it.

https://www.enlightenment.org/_legacy_embed/edcref.html#sec_toplevel_images
max [width] [height] or SOURCE
The maximum size of the state. A size of -1 means that it will be ignored in one direction.
When max is set to SOURCE, edje will enforce the part to be not more than the original image size.
The part must be an IMAGE part.

Test Plan:
{F4230539}
edje_cc test.edc && gcc -o test test.c `pkg-config --libs --cflags evas ecore ecore-evas edje`
./test

Reviewers: Hermet, Jaehyun_Cho, cedric, raster

Reviewed By: Hermet

Subscribers: #reviewers, #committers, kimcinoo, herb

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12215

Change-Id: Ic67098d72ded7cb229c3dbd5c1b728d1884c36e4

3 years agoedje: fix dereferening without checking issue 16/249616/2
Youngbok Shin [Tue, 15 Dec 2020 10:16:54 +0000 (19:16 +0900)]
edje: fix dereferening without checking issue

Change-Id: I7a3d3371069786bf32ea674097bf65af7a0d6d8e

3 years agoevas: Prevent null pointer access 46/249646/1
JunsuChoi [Tue, 15 Dec 2020 11:47:41 +0000 (11:47 +0000)]
evas: Prevent null pointer access

Summary: add null check

Test Plan: N/A

Reviewers: Hermet, cedric, kimcinoo, raster

Reviewed By: raster

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12213

Change-Id: I9b34ccbeaa2df3fc97e707c35d0d8e7e34c32f24

3 years agoevas_textblock: remove unreachable code 08/249608/1
Bowon Ryu [Tue, 15 Dec 2020 09:13:45 +0000 (18:13 +0900)]
evas_textblock: remove unreachable code

Change-Id: Id3f70515c2a837549e19031d15f116b5acfb2043
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
3 years agoelm_toolbar: fix box size issue 67/249567/1
Bowon Ryu [Tue, 15 Dec 2020 05:09:27 +0000 (14:09 +0900)]
elm_toolbar: fix box size issue

When an item in a box is deleted, the box size changed callback is not called.
because the actual evas_box size does not change in the sizing_eval of the box.
So this patch tries to resize the box using EVAS_CALLBACK_CHANGED_SIZE_HINTS callback.

@tizen_fix

Change-Id: I9c803a1b9471cd645fe25652bdeab22d270557ae
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
3 years agoevas vector: Fixed dereferencing uninitialized matrix 81/249281/3 accepted/tizen/unified/20201214.124451 submit/tizen/20201213.212052
Mateusz Palkowski [Wed, 9 Dec 2020 15:30:22 +0000 (16:30 +0100)]
evas vector: Fixed dereferencing uninitialized matrix

Apps on tizen crashed when using check. Checking for uninitialized
transform matrices solves this problem.

Change-Id: I09efe75b52c106369e1c8670dbc12a4896a1e6a8

3 years agoJSON Lottie and vg image fix 94/249194/2
Michal Maciola [Tue, 8 Dec 2020 11:31:10 +0000 (12:31 +0100)]
JSON Lottie and vg image fix

In this push some crucial things for json animations was fixed:
1. vg_common_json.c is fixed and will load json files properly.
2. efl_canvas_vg_image.c was fixed for proper raw images loading.

Change-Id: I69e6913c2e8771c100555cd968c87c5c88a0eb44

3 years agoevas vector: Added ellipse API 65/249365/3
Michal Szczecinski [Thu, 10 Dec 2020 13:24:05 +0000 (14:24 +0100)]
evas vector: Added ellipse API

In thorVG circle API provides two radius parameters so arc should not be
used to draw ellipses. To simplify code in vg_common lib ellipse API was
created.

Change-Id: I28cc59c9f7c3fa82b1ae3823cd712dce6090bdbc

3 years agoelm_gengrid: Remove unnecessary code. 87/249387/4
Hosang Kim [Fri, 11 Dec 2020 05:13:30 +0000 (14:13 +0900)]
elm_gengrid: Remove unnecessary code.

When gengrid is rotating, gengrid shows wrong position because number of span size in gengrid is changed.
this code is maintain the ratio of scroller when the content size is changed.

@tizen_only

Change-Id: I4e7f8c8a503e4460e439ff93f4f1a9aa3bf489e7
(cherry picked from commit d5e36f479794fc45cffdf709a7a7627806d9196d)

3 years agoevas vector: Fixed linear gradient start/end getter. 04/249204/6
Michal Szczecinski [Tue, 8 Dec 2020 14:49:31 +0000 (15:49 +0100)]
evas vector: Fixed linear gradient start/end getter.

Function evas_vg_gradient_linear_end_get() returns gradient start
position. This commit fix this issue. Also not used variables was
removed from start getter.

Change-Id: I701ab874654f351aee63f765dba932765df00600

3 years agoevas vector: Fixed container interpolation 38/249138/2
Michal Szczecinski [Mon, 7 Dec 2020 14:17:13 +0000 (15:17 +0100)]
evas vector: Fixed container interpolation

Commit fixes containers interpolation (interpolation of all childrens in
container), used mostly in edje files as svg loaders. Additionally hash
array of shape targets was removed because of rendering pipe changed.
Now tvg_canvas_clear() is used in rendering pipeline, which simplifies
code.

Change-Id: I2a328ab13afb088e170d6ccd8fe43808176ec3ba

3 years agoevas vector: Removed duplicated length check. 34/249234/1
Michal Szczecinski [Wed, 9 Dec 2020 07:00:10 +0000 (08:00 +0100)]
evas vector: Removed duplicated length check.

Accidentaly added length check was removed. There is no necessary for
double check if length pointer is diff than NULL in one function for
performance reasons.

Change-Id: Id7eee513559798af87cf604556e989dd45306629

3 years agoevas vector: Fixed gradient color stops length. 05/249205/1
Michal Szczecinski [Tue, 8 Dec 2020 15:13:58 +0000 (16:13 +0100)]
evas vector: Fixed gradient color stops length.

Fixed evas_vg_gradient_stop_get() API where length was not set properly.

Change-Id: I2ffc80182caa0f24c4d350f6904a66c69d7817db

3 years agoLottie (json) animation demo added key handler 43/248443/2
Michal Maciola [Fri, 20 Nov 2020 16:55:13 +0000 (17:55 +0100)]
Lottie (json) animation demo added key handler

Change-Id: Idfe6905a2ea6e826c879ae73224a8fda595d7086

3 years agopng: handle 9-patch ends with stretch 15/249115/2
Shinwoo Kim [Mon, 7 Dec 2020 07:52:54 +0000 (16:52 +0900)]
png: handle 9-patch ends with stretch

Summary:
The strech region has paired information; total and strechable.
Refer to function _strech_region_load retrieving strech region info.

But if 9-patch information line ends with strechable,
png did not push the strechable information.
And it leads to devide by zero.

This patch is adding strechable info to the strech region,
if 9-patch information ends with strechable.

Test Plan:
[Code]
{F4219278}
{F4219280}

[Test]
ECORE_EVAS_ENGINE=opengl_x11 ./evas-image-9patch ./end_with_strech.9.png

Reviewers: Hermet, jsuya, herb, cedric

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12204

Change-Id: I6242b2686358c28e2efbb152d40e59a898ee435d

3 years agocanvas vg_container: code refactoring. 51/248951/1
Hermet Park [Thu, 3 Dec 2020 11:54:10 +0000 (20:54 +0900)]
canvas vg_container: code refactoring.

we can make logic simpler.

Change-Id: Ie688940165299ee8fbdd85afcf08277642df15c8

3 years agoevas vector: Added tvg_scene to container implementation. 32/248032/3 accepted/tizen/unified/20201208.123228 submit/tizen/20201206.210050
Michal Szczecinski [Thu, 19 Nov 2020 13:55:16 +0000 (14:55 +0100)]
evas vector: Added tvg_scene to container implementation.

Introduce Tvg Scene as a container implementation. It delegates layer
transparency calculation to thorvg lib which make efl code more
readable. This commit fixed also resources release issue. Now there is
no segfault with thorvg flag on elm-demo-tizen-mobile app. Also
rendering isses with elm_widgets (themed by vector edc) was fixed.

Change-Id: Ib2a3de71728e4c492fc2b20004359b71133f703c

3 years agoelm_focus: add internal api to get focused object whitout checking window focus 66/248366/2 accepted/tizen/unified/20201130.122951 submit/tizen/20201129.214353
Yeongjong Lee [Thu, 26 Nov 2020 01:15:48 +0000 (10:15 +0900)]
elm_focus: add internal api to get focused object whitout checking window focus

'elm_object_focused_object_get_any_win_focus' will returns current focused
object regardless of window focus state.

Note that this is only for internal use.

Change-Id: If0592dfec3ef2478abeac65507d4ff8648d7aa82

3 years agoelm_focus: unset newest focus properly on revert focus logic 56/248356/2
Yeongjong Lee [Wed, 25 Nov 2020 23:26:14 +0000 (08:26 +0900)]
elm_focus: unset newest focus properly on revert focus logic

If top win is not focused, newest focus is only set to true without clearing
focus. in this process, there can be multiple focused object.

This patch removes the code to check top win focus state before clearing focus
in _if_focused_revert().

Change-Id: Iea82435f21567cf4d7cd99151b240e71c003e965

3 years agoecore_wl2_window: call tizen_policy_show/hide request in ecore_wl2_window_show/hide 23/248323/2
Doyoun Kang [Wed, 25 Nov 2020 09:16:45 +0000 (18:16 +0900)]
ecore_wl2_window: call tizen_policy_show/hide request in ecore_wl2_window_show/hide

These requests work since tizen_policy version 8.

@tizen_only

Change-Id: I35100246f5ae591b77ee15148895bd1cdebcf9e9

3 years agoelm_gesture_layer: fix config value type 15/248315/1
Woochanlee [Wed, 25 Nov 2020 08:03:58 +0000 (17:03 +0900)]
elm_gesture_layer: fix config value type

Summary:
The value will read as unsigned char not double.

@fix

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12195

Change-Id: I13023cf997b8e88e58a1065f8281e1e9e6a32272

3 years agoui transit: improve zoom effect smoothness by subpixel rendering. 68/248268/1
Hermet Park [Tue, 24 Nov 2020 03:17:17 +0000 (12:17 +0900)]
ui transit: improve zoom effect smoothness by subpixel rendering.

Summary:
evas image might have a better quaility if scaling/transform is not necessary,
so we have a condition to check if image is axis-aligned transformed or not.

On the other hand sub-pixel(floating point coordinates unit) rendering necessary
if image has an effect such a zooming. This would result in a smoother effect
than integer coodinate system.

We need a more precise condition to confirm this,
so we intrduce "anti-alias" option to decide the condition.
now, anti-aliased objects will have a sub-pixel rendering always.

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12194

Change-Id: Idfe94766d8721ba32392cad0f3d214c9080e33c9

3 years agoRevert "elc_popup: apply tizen color class feature for popup" 30/248230/2
Taehyub Kim [Tue, 24 Nov 2020 05:11:02 +0000 (05:11 +0000)]
Revert "elc_popup: apply tizen color class feature for popup"

This reverts commit b03caf30f155c4210fa9171605b9a1ba23e162e6.

Change-Id: I0db146d94481eaf9b580de211ddddc31e5834921

3 years agoelc_popup: override color class function for applying tizen color class feature 32/248232/1
Taehyub Kim [Tue, 24 Nov 2020 05:05:57 +0000 (14:05 +0900)]
elc_popup: override color class function for applying tizen color class feature

popup main_layout is not a resize object of popup.
so when elm_layout_edje_get(popup) is called,
popup resize object cannot be returned.
This makes tizen color class feature not working.
so forwarding edje object of popup main_layout when color class api is called.

Change-Id: Idfd37cf1e6ed2907a305c0343685b95cc5ef0b67

3 years agoelc_popup: fix typo for tizen color class feature 90/248190/1
Taehyub Kim [Mon, 23 Nov 2020 10:43:08 +0000 (19:43 +0900)]
elc_popup: fix typo for tizen color class feature

Change-Id: If19fd28723178dba4b758507297f36a148e2b92f

3 years agoelc_popup: apply tizen color class feature for popup 87/248187/2
Taehyub Kim [Mon, 23 Nov 2020 10:23:01 +0000 (19:23 +0900)]
elc_popup: apply tizen color class feature for popup

popup main_layout is not a resize object of popup.
so when elm_layout_edje_get(popup) is called,
popup resize object cannot be returned.
This makes tizen color class feature not working.
so forwarding edje object of popup main_layout when color class api is called.

Change-Id: I86107382f49417575a5d6bcc106d02ba1de4ca9d

3 years agoecore_wl2: unset pending.opaque flag after calling wl_surface_set_opaque_region 43/248143/2
Doyoun Kang [Mon, 23 Nov 2020 03:53:40 +0000 (12:53 +0900)]
ecore_wl2: unset pending.opaque flag after calling wl_surface_set_opaque_region

There was a bug that the wl_surface_set_opaque_region was called twice.
In _opaque_set, wl_surface_set_opaque_region was called immediately.
But window's pending.opaque flag was not unset. So, wl_surface_set_opaque_region
called again by ecore_wl2_window_commit.

@tizen_fix

Change-Id: Iea688ed8793db6237c8ab68574936c8111638c2d

3 years agoevas gl: make 9 patch work 44/248044/1 accepted/tizen/unified/20201124.123027 submit/tizen/20201122.211513
Shinwoo Kim [Fri, 20 Nov 2020 02:22:54 +0000 (11:22 +0900)]
evas gl: make 9 patch work

Summary:
The 9 patch is using image_stretch_region_get, but GL did not override it.
So the 9 patch did not work for GL engine at all.

Test Plan:
Evas_Object*img = evas_object_image_filled_add(evas);
evas_object_image_file_set(img, "test.9.png", 0);
evas_object_show(img);

Reviewers: Hermet, jsuya, herb, cedric

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12192

Change-Id: I3e455a9d0b89a82c3cf2f16683454d2e7c120e43

3 years agoevas_textblock: reduce content fit calculations 22/248022/1
ali-alzyod [Thu, 19 Nov 2020 08:29:48 +0000 (10:29 +0200)]
evas_textblock: reduce content fit calculations

Reviewers: woohyun, id213sin

Reviewed By: woohyun, id213sin

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12187

Change-Id: I053bf185a07f5b698b14636ec07e771e6f94990f

3 years agoevas_image_load_png.c: Support Apng Image Format 14/247414/13
Taehyub Kim [Tue, 10 Nov 2020 06:18:40 +0000 (15:18 +0900)]
evas_image_load_png.c: Support Apng Image Format

Summary:
This patch implements the features for playing animated png image on efl application.

Test Plan:
1. build
2. and run src/example/image_apng.c

Reviewers: Hermet

Subscribers: vtorri, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12175

Change-Id: I522ec8489a9e3fd84297edc045cd13173de38526

3 years agostatic_libs/vg_common/svg: replaced Efl Gfx API by Evas Vg. 58/246258/5
Michal Szczecinski [Tue, 27 Oct 2020 09:47:21 +0000 (10:47 +0100)]
static_libs/vg_common/svg: replaced Efl Gfx API by Evas Vg.

Efl_Gfx API was replaced to reduce and simplify source codes.
Evas_VG decide what kind of API will be used to render vector
graphics from edje files.

Change-Id: Iea45463826c3c77d719da4b8ee5d7ca229aaac0d

3 years agoelm_slider: remove useless code 36/247836/1 submit/tizen/20201117.104136
Bowon Ryu [Tue, 17 Nov 2020 09:46:58 +0000 (18:46 +0900)]
elm_slider: remove useless code

@tizen_fix

Change-Id: Ic2be0511570cb05e59731fc953838a9fff366a63
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
3 years agoelm_slider: fix callback in A11Y value interface 24/247824/1
Bowon Ryu [Tue, 17 Nov 2020 07:49:27 +0000 (16:49 +0900)]
elm_slider: fix callback in A11Y value interface

this patch fixed a issue where callback was not called in a11y value interface

@tizen_fix

Change-Id: I811adf62d412048ef24c588275c7607cbe6f817d
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
3 years agoelm_hoversel: Fix spacer size calculation 99/247799/2
JunsuChoi [Tue, 17 Nov 2020 01:27:37 +0000 (10:27 +0900)]
elm_hoversel: Fix spacer size calculation

If right side(top-right) of spacer is larger than
parent, change align of spacer.
Then spacer is readjusted only
if hoversel on the left area is smaller than spacer.

Change-Id: I49eb034c96497debc92be011b591cba99e70c96d

3 years agoevas vector: Fixed build error with thorvg flag. 81/247781/2
Michal Szczecinski [Mon, 16 Nov 2020 12:10:05 +0000 (13:10 +0100)]
evas vector: Fixed build error with thorvg flag.

Code conflicts was inproperly resolved. This commit fixed build error
witch occurs when thorvg flag is set.

Change-Id: Iea3b2aafb3ff4c9ba0e28e4f4f2f22951590562f

3 years agoRevert "elm_hoversel: Fix spacer size calculation" 98/247798/1
JunsuChoi [Tue, 17 Nov 2020 01:26:24 +0000 (10:26 +0900)]
Revert "elm_hoversel: Fix spacer size calculation"

This reverts commit 8952fea71125e66fc962571985fd45e3d71ae970.

Change-Id: Icde0c368b3fa40671daea78c05e0007d32fb400f

3 years agoelm_hoversel: Fix spacer size calculation 77/247777/1
JunsuChoi [Mon, 16 Nov 2020 10:02:23 +0000 (19:02 +0900)]
elm_hoversel: Fix spacer size calculation

If right side(top-right) of spacer is larger than
parent, change align of spacer.
Then spacer is readjusted only
if hoversel on the left area is smaller than spacer.

Change-Id: I6e6ae3bb22686c9b679b087e5a97f63666a24e78

3 years agoevas vector: Fixed gradients rendering in thorvg mode. 90/247590/2
Michal Szczecinski [Thu, 5 Nov 2020 11:14:26 +0000 (12:14 +0100)]
evas vector: Fixed gradients rendering in thorvg mode.

This commit fixed possible crash in gradients rendering pipeline.
This crash was caused by invalid fill and duplicate function
implementaiton.

Change-Id: I42bb9935bcaf009f33e7abeeed39552bb57ab28b

3 years agoecore_evas: clear eina_freeq when an ecore_evas is freed 41/247341/2 accepted/tizen/unified/20201116.220352 submit/tizen/20201115.212153
Youngbok Shin [Tue, 10 Nov 2020 05:12:05 +0000 (14:12 +0900)]
ecore_evas: clear eina_freeq when an ecore_evas is freed

The main Eina Freeq is used for Eina List and etc.
This queue is processed when Ecore enters Idle state.
But, in a very rare case, application can add and free Ecore Evas
only for manual rendering without running Ecore main loop.
In this case, the main Eina Freeq never clear its queue before
shutting Ecore Evas down.

Since the eina_freeq_main_get() is internal, the main Eina Freeq must be
cleared internally before deleting(free) an Ecore Evas.

@tizen_fix

Change-Id: Idde6f0e40ba9f456fe844abcb38f94538f4088bb

3 years agoedje: fix cursor scrolling 46/247646/1
Bowon Ryu [Fri, 13 Nov 2020 03:05:07 +0000 (12:05 +0900)]
edje: fix cursor scrolling

Summary:
If there is a string larger than the size of entry
and when the entry is auto scrolling, cursor is not visible.
Using _edje_entry_cursor_geometry_get guarantees the minimum size of the cursor,
and guarantee the size from edje. (min_restricted_calc)

Test Plan:
elemenary_test

Enter a long string in the "Search Menu" entry.
Observe the cursor when the entry scrolls automatically.

Reviewers: woohyun, ali.alzyod

Reviewed By: ali.alzyod

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11649

Change-Id: Iefe9c0356494aa82304ea7302bd97c97ab4f4688
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
3 years agoelc_naviframe: fix double free by _title_content_del in item invalidation 95/247595/1
Jaehyun Cho [Thu, 12 Nov 2020 07:22:05 +0000 (16:22 +0900)]
elc_naviframe: fix double free by _title_content_del in item invalidation

If a box contains a button and box is set to part A and button is set to
part B, then button's _title_content_del is called when box is deleted
in item invalidation and button's pair is deleted again.

To resolve the above double free, item invalidation flag is used not to
call _title_content_del during item invalidation.

Change-Id: I3795e63470259203c3d8ae66613981bb6f8240c0

3 years agoevas vector: Added thorvg path setter. 80/246980/4
Michal Szczecinski [Wed, 4 Nov 2020 19:57:44 +0000 (20:57 +0100)]
evas vector: Added thorvg path setter.

Implementation of thorvg path setter is needed for
render properly edje vector parts.

Change-Id: Ibcbe4488e5ae46557ce1e5a896db4adbc28fa8e7

3 years agoevas vector: Added efl_duplicate api implementation for thorvg shape. 82/246982/3
Michal Szczecinski [Thu, 5 Nov 2020 10:57:53 +0000 (11:57 +0100)]
evas vector: Added efl_duplicate api implementation for thorvg shape.

This implementation is needed to render properly edje vector parts.

Change-Id: Ida8f382eef0227e996eedfc8c4add286fa0bbaee

3 years agoevas vector: Added shape path getter for thorvg. 77/246977/2
Michal Szczecinski [Wed, 4 Nov 2020 16:52:15 +0000 (17:52 +0100)]
evas vector: Added shape path getter for thorvg.

This commit adds implementation of evas_vg_shape_path_get() api for
thorvg shapes. It is needed to render edje vector parts.

Change-Id: I2a14238e9f7c051f62e9b3e592c2e9396550f3ba

3 years agoevas vector: Added path lenght get implementation for thorvg 76/246976/3
Michal Szczecinski [Wed, 4 Nov 2020 15:15:48 +0000 (16:15 +0100)]
evas vector: Added path lenght get implementation for thorvg

This commit is needed to use thorvg to render edje vector parts.

Change-Id: I55f551e4f8865fd8af7f2487dd5897e6f2a1ea7a

3 years agoevas vector: Fixed tvg_paint_set_opacity usage. 75/246975/2
Michal Szczecinski [Thu, 5 Nov 2020 11:51:59 +0000 (12:51 +0100)]
evas vector: Fixed tvg_paint_set_opacity usage.

Commit fixes invalid variable used in tvg_paint_set_opacity method. This
cause issue with invalid opacity value in shapes.

Change-Id: I44cf433e006a19955828c7972b84c935c046309c

3 years agoecore_wl2: expose subsurface interface 44/246044/8 submit/tizen/20201108.215920
Shinwoo Kim [Thu, 22 Oct 2020 11:41:30 +0000 (20:41 +0900)]
ecore_wl2: expose subsurface interface

There is a requirement to change subsurface z-order.
The Player should set display using subsurface instead
of window to show more than two video surfaces.

   - ecore_wl2_subsurface_new
   - ecore_wl2_subsurface_del
   - ecore_wl2_subsurface_sync_set
   - ecore_wl2_subsurface_native_surface_get
   - ecore_wl2_subsurface_place_surface_above
   - ecore_wl2_subsurface_place_surface_below
   - ecore_wl2_subsurface_video_surface_prepare
   - ecore_wl2_subsurface_video_surface_destination_set

Change-Id: Iba9633bad700a621642d0c874c05e24ed0e84d45

3 years agoevas canvas: Fixed svg path command processing. 76/246276/5
Michal Szczecinski [Tue, 27 Oct 2020 07:23:37 +0000 (08:23 +0100)]
evas canvas: Fixed svg path command processing.

Changes:
1. Added _parse_flag optimization
2. Set current control point properly for set type commands in path
parser.

Change-Id: Ic88180832d2a9e46828819561027eb7db56a9c38

3 years agoefl vector: use paint opacity method to toggle visibility. 56/246756/3
Hermet Park [Wed, 4 Nov 2020 02:57:26 +0000 (11:57 +0900)]
efl vector: use paint opacity method to toggle visibility.

This method simplifies efl canvas vg code in thorvg integration.

Change-Id: Ic7424f7b1bf4ac055935dffc6855c3aa7766128d

3 years agoRevert "Revert "evas_textblock: rainbow flag emoji treated as two clusters(update... 07/245507/2
WooHyun Jung [Thu, 8 Oct 2020 03:32:53 +0000 (12:32 +0900)]
Revert "Revert "evas_textblock: rainbow flag emoji treated as two clusters(update unibreak to version 4.2)""

This reverts commit 173b3a108e1b2093ac37650619a61568aaed4e04.
This was reverted because of freezing codes for release.
Now, release work was over. So, I think it's ok to restore this.

Change-Id: I3f0e5021ee1a54cb980927d89959f49af5650183

3 years agoevas_device: remove pointer data when device is removed. 79/246579/1
Hosang Kim [Mon, 2 Nov 2020 06:41:58 +0000 (15:41 +0900)]
evas_device: remove pointer data when device is removed.

revert 9fbce472029e97ed4772f0a70dfd5a24c289ea5c
revert c7092190606f593cd64ca1cccbcb50d7cab3e859
revert d8d3f5ba181dfed758de96f005a471f1aea54631

Change-Id: I41e5430e55a4bdf274fbd58f847437be071bc0a5

3 years agovg_load_svg: Prevent memory overflow for tag_name 62/246562/1
JunsuChoi [Mon, 2 Nov 2020 04:05:44 +0000 (13:05 +0900)]
vg_load_svg: Prevent memory overflow for tag_name

Summary:
When copying tag_name, if length of referenced string is longer
than general case, it is not used as tag_name.

Test Plan: N/A

Reviewers: Hermet, smohanty

Reviewed By: Hermet

Subscribers: kimcinoo, herb, cedric, #committers, #reviewers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12185

Change-Id: I2736b0b3e97b8a1ac0c3da4f18305fa7a3c80f85

3 years agoevas glengine: fix map rendering issue. 12/246512/1 accepted/tizen/unified/20201102.124241 submit/tizen/20201101.231042
Hermet Park [Fri, 30 Oct 2020 09:59:04 +0000 (18:59 +0900)]
evas glengine: fix map rendering issue.

there was a code diff - 36f9f7a3b233807c5c50d0e3e3b92104c4ccbbbb
that occured wrong upstream code merge.

Fix it by resolving code merge based on diff properly.

Change-Id: Ic6ee79dd4f8daf68108922761d46ebd54de074f2

3 years agoelm_spinner: Check new step value to avoid useless item update. 72/246072/1
Woochanlee [Fri, 23 Oct 2020 04:24:43 +0000 (13:24 +0900)]
elm_spinner: Check new step value to avoid useless item update.

@tizen_fix

Change-Id: I47c2d5f3e3861b2335da6690bcbd9d94e54790cf

3 years agoelm_spinner: Genlist item update when user changed spinner value step. 71/246071/2
Woochanlee [Fri, 23 Oct 2020 04:06:10 +0000 (13:06 +0900)]
elm_spinner: Genlist item update when user changed spinner value step.

@tizen_fix

Change-Id: Ib66fb40ff1ed67c00763309fe4db27ba90ebda25

3 years agoevas/canvas/vg: Added integration with thorvg. 25/243325/17
Michal Szczecinski [Fri, 4 Sep 2020 11:28:18 +0000 (13:28 +0200)]
evas/canvas/vg: Added integration with thorvg.

If flag HAVE_THORVG is defined, thorVG lib is used to render vector
graphics. To change flag see meson_options.txt file.

To test this solution newly added examples can be used. You can find
it in src/examples/evas/evas-vg-*

Change-Id: I9765b3fc53cf77b340bd3a75d8029795f2648302

3 years agofix gengrid group index unrealized issue 86/245986/1
SangHyeon Jade Lee [Wed, 21 Oct 2020 07:17:14 +0000 (16:17 +0900)]
fix gengrid group index unrealized issue

gengrid group index need to be unrealized when item is not in the
viewport unlike upstream realized till their group is one the view.

Change-Id: Ie2dbb2f0a58ac563c43cfd0b45bc7b88aefd5ebf

3 years agoevas/textblock: apply style paddings in fit calculation 77/245977/1
Youngbok Shin [Wed, 21 Oct 2020 05:45:05 +0000 (14:45 +0900)]
evas/textblock: apply style paddings in fit calculation

The style paddings should be calculated for fitting text into
the given object's size.

@fix

Change-Id: Id68a23c7ec63e3874ff2ff70fdf838ad2092612e

3 years agoadd example of container transformations 20/245820/4
Piotr Kalota [Fri, 16 Oct 2020 07:09:50 +0000 (09:09 +0200)]
add example of container transformations

Change-Id: I12deb95dc908be8510fe8409e3aee107c6a3c6ec

3 years agovg_load_svg: Implement ClipPath feature 89/245889/1
JunsuChoi [Wed, 14 Oct 2020 10:16:53 +0000 (19:16 +0900)]
vg_load_svg: Implement ClipPath feature

Summary:
Supports case of using style attribute for defined <clipPath> and node.
In SVG, <clipPath> can be used as a "clipPath" attribute or a style "clip-path".
If there is a clip-path node, save it as a composition node and
use composition method(matte_alpha) to compose it.

Below node types support clip-path.
<circle>
<ellipse>
<g>
<path>
<polygon>
<polyline>
<rect>

Test Plan:
Please see attached svg files
{F4026162}

Reviewers: Hermet, smohanty

Reviewed By: Hermet

Subscribers: #reviewers, #committers, cedric, herb, kimcinoo

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12179

Change-Id: I1e02b0405d32ebea4ba9b072586aaad7248ee598

3 years agottrace: disable ttrace logs 01/245801/1 submit/tizen/20201018.221456
Wonki Kim [Fri, 16 Oct 2020 02:12:37 +0000 (11:12 +0900)]
ttrace: disable ttrace logs

there are lots of logs generated caused by ttrace.
and ttrace isn't used often but it's used for performance profiling in some time.
this patch disable ttrace logs for reducing space and time complexity.

Change-Id: I2fa86e3f807ad88d610a5a2bac87fa2ef51d043b

3 years agoevas svg: avoid unnecessary memory clear. 63/245563/2 submit/tizen/20201012.232328
Hermet Park [Mon, 12 Oct 2020 09:37:55 +0000 (18:37 +0900)]
evas svg: avoid unnecessary memory clear.

Change-Id: Ia2155716f2f18c1056852a50d0007b2c3f591f52

3 years agovg_load_svg: Add points copy of missing polygon/polyline 61/245561/1
JunsuChoi [Mon, 12 Oct 2020 09:36:31 +0000 (18:36 +0900)]
vg_load_svg: Add points copy of missing polygon/polyline

Summary:
When using <use> node, do atrribute copy.
At that time, when target(url) is polygon or polyline,
points array is not copied, causing a problem in output.
So, add missing array copy.

Test Plan:
 - Test SVG code

<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 64 64" enable-background="new 0 0 64 64" xml:space="preserve">
    <g opacity="0.5">
        <defs>
            <polygon id="test" opacity="0.5" points="41.8,14.5 22.2,14.5 22.2,22.8 41.8,40.7"/>
        </defs>
        <use xlink:href="#test"  overflow="visible"/>
    </g>
</svg>

Reviewers: Hermet, smohanty

Reviewed By: Hermet

Subscribers: #reviewers, #committers, kimcinoo, herb, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12174

Change-Id: Iecbed3a953d7e7465b54e9c648474ca8f9480e0a

3 years agoevas/font: free fg if fash memory allocation is failed 36/245536/1
Youngbok Shin [Mon, 12 Oct 2020 04:52:11 +0000 (13:52 +0900)]
evas/font: free fg if fash memory allocation is failed

Change-Id: Iad3eec4225f333aad44ba1f6f2c606bb08006b46

3 years agospec: bump version for 1.25.1 release
Jongmin Lee [Sun, 11 Oct 2020 21:30:21 +0000 (06:30 +0900)]
spec: bump version for 1.25.1 release

Change-Id: Ia4296aec78748a9c22aa06a29094404fbc1e5921

3 years agorelease: Update NEWS and bump version for 1.25.1 release
Stefan Schmidt [Thu, 8 Oct 2020 08:41:04 +0000 (10:41 +0200)]
release: Update NEWS and bump version for 1.25.1 release

3 years agoEcore_file: on Windows, fix errno value when dst exists.
Vincent Torri [Tue, 6 Oct 2020 14:09:31 +0000 (15:09 +0100)]
Ecore_file: on Windows, fix errno value when dst exists.

Summary: This also fixes the saving of elementary_config file

Test Plan: execution of elementary_config

Reviewers: jptiz, raster

Reviewed By: raster

Subscribers: johnny1337, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12165

3 years agoedje_entry: fix a potentional error of null deref 08/245308/1
Wonki Kim [Thu, 6 Aug 2020 00:46:24 +0000 (00:46 +0000)]
edje_entry: fix a potentional error of null deref

this is a patch to fix a potentional error by null dereferencing.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D12087

Change-Id: I88bd17cd6721d929356f759b0ef10fc0d4085493

3 years agoRevert "edje_entry: fix a potentional error of null deref" 07/245307/1
Wonki Kim [Wed, 7 Oct 2020 03:11:28 +0000 (12:11 +0900)]
Revert "edje_entry: fix a potentional error of null deref"

This reverts commit 807b0e3135ed5465013911ca8a6904b9d23e2eff.

Change-Id: Ib444d664e8420a29c888f4bafa447e2bb42d7e65

3 years agoedje_entry: fix a potentional error of null deref 01/245301/1
Wonki Kim [Thu, 6 Aug 2020 00:46:24 +0000 (00:46 +0000)]
edje_entry: fix a potentional error of null deref

this is a patch to fix a potentional error by null dereferencing.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D12087

Change-Id: If5355e8594532af29c8370144b5e90cb6ddbba71

3 years agoWindows: fix copy'n paste
Vincent Torri [Wed, 30 Sep 2020 12:59:27 +0000 (13:59 +0100)]
Windows: fix copy'n paste

Summary: fix seat id and clean cnp data when needed

Test Plan: Ctrl-c and Ctrl-V (elm-->app, app--> elm elm-->elm)

Reviewers: jptiz, walac, cochisecesar, bu5hm4n, felipealmeida, raster

Reviewed By: felipealmeida, raster

Subscribers: netstar, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12166

3 years agoefreet - windows - still call stat but skip lstat/readlink
Carsten Haitzler (Rasterman) [Tue, 29 Sep 2020 09:30:45 +0000 (10:30 +0100)]
efreet - windows - still call stat but skip lstat/readlink

now stat is filled with data on windows

@fix

3 years agoevas: sw font draw - protect against null pointer access
Youngbok Shin [Thu, 24 Sep 2020 09:12:06 +0000 (09:12 +0000)]
evas: sw font draw - protect against null pointer access

The image data of dst could be null in a rare case.
@fix

Reviewed-by: Christopher Michael <devilhorns@comcast.net>
Differential Revision: https://phab.enlightenment.org/D12163

3 years agoevas/font: fix a memory leak caused by legacy code with wrong migration 60/245260/1
Youngbok Shin [Tue, 6 Oct 2020 06:28:33 +0000 (15:28 +0900)]
evas/font: fix a memory leak caused by legacy code with wrong migration

@tizen_fix

Change-Id: I51d570ddc8e3a545547c00b73ffb86f1ef1f7451

3 years agodocs: Corrects invalid URL for Elementary page 53/245253/1 accepted/tizen/6.0/unified/20201110.230839 accepted/tizen/6.0/unified/hotfix/20201102.235826 accepted/tizen/unified/20201007.020756 submit/tizen/20201006.054255 submit/tizen_6.0/20201029.205501 submit/tizen_6.0/20201110.051438 submit/tizen_6.0_hotfix/20201102.192901 submit/tizen_6.0_hotfix/20201103.115101 tizen_6.0.m2_release
Myoungwoon Roy, Kim [Tue, 6 Oct 2020 05:29:22 +0000 (14:29 +0900)]
docs: Corrects invalid URL for Elementary page

Change-Id: I6d3dd04fe277729aa58cf04a9a6d6260894cc49c

3 years agoelementary image zoomable: fix non supported oversized image. 59/245159/1 accepted/tizen/unified/20201006.044403 submit/tizen/20201005.082948
Hermet Park [Mon, 5 Oct 2020 03:56:03 +0000 (12:56 +0900)]
elementary image zoomable: fix non supported oversized image.

Summary:
if image size is larger than system support, photocam can not show the image.

Not like other types of image, photocam is originally designed for huge-size of image,
this result is not allowed by users, we should avoid the worst case as we can do.

This might not be the best idea, so you can improve it if you have a better solution.

Reviewers: kimcinoo

Reviewed By: kimcinoo

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12164

Change-Id: I6e542227062dae8d42fd870d1e6a69a935df5d12

3 years agodocs: Change non public Tizen Elementary APIs to internal 54/245154/1 accepted/tizen/unified/20201005.101332 submit/tizen/20201005.012108
Myoungwoon Roy, Kim [Mon, 5 Oct 2020 00:03:43 +0000 (09:03 +0900)]
docs: Change non public Tizen Elementary APIs to internal

Change-Id: I19b3afe821c29031a08f473df6f846b7c6a063af

3 years agobuild: addition to abf0e9dffe35da8fa6e20055f53786b2adbec271 accepted/tizen/unified/20200928.072827 submit/tizen/20200927.213403
Marcel Hollerbach [Fri, 25 Sep 2020 12:05:16 +0000 (14:05 +0200)]
build: addition to abf0e9dffe35da8fa6e20055f53786b2adbec271

the fix is also needed in ecore_imf modules.

Thank you Ross!

3 years agoEthumb: reorder _init/shutdown functions, ecore and evas init/shutdown are useless...
Vincent Torri [Fri, 25 Sep 2020 09:30:04 +0000 (10:30 +0100)]
Ethumb: reorder _init/shutdown functions, ecore and evas init/shutdown are useless, as ecore_evas already manages them

Test Plan: compilation

Reviewers: raster

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12161