platform/upstream/efl.git
3 years agoecore_wl2_window: remove unrechable code 99/257799/2
Junseok, Kim [Mon, 3 May 2021 06:20:30 +0000 (15:20 +0900)]
ecore_wl2_window: remove unrechable code

Change-Id: Ifccacabb37bfc16448210b5d4f1c0f605c6e66f9

3 years agoevas vg: ++safety 68/257768/1
Hermet Park [Fri, 30 Apr 2021 10:18:46 +0000 (19:18 +0900)]
evas vg: ++safety

+ null check for invalid object accessing.

Change-Id: Ic92a3208445876fd47b157b6aab124827be44aa1

3 years agoevas vg: inverse masking support when TVG used 22/257422/3
Mira Grudzinska [Sun, 25 Apr 2021 13:12:12 +0000 (15:12 +0200)]
evas vg: inverse masking support when TVG used

When the inverse masking is used the proper composition method
is passed to the TVG function. So far only masking was supprted.

Change-Id: Iee0b769dc6ae5b73ca27ac8fb18f0db54122c13d

3 years agoFix: Build error. 05/257605/2
YoungGun Chun [Wed, 28 Apr 2021 06:11:42 +0000 (15:11 +0900)]
Fix: Build error.

Change-Id: Idf288c6c120b896c7ab09b93ac5cf67300e2b0ce

3 years agoRevert "evas_vg refactoring: efl will use thorvg's SVG loader" 92/257592/1
Hermet Park [Wed, 28 Apr 2021 04:21:41 +0000 (13:21 +0900)]
Revert "evas_vg refactoring: efl will use thorvg's SVG loader"

This reverts commit 9978d84f5ccc962c63836c3a4788806fc237f1d0.

Change-Id: Icf6dad6b3b3f98e6c5e860db8dd6721c9371c55a

3 years agoevas vg: remove ector usage: efl_canvas_vg_container.c 27/257227/5
Michal Maciola [Thu, 22 Apr 2021 10:36:50 +0000 (12:36 +0200)]
evas vg: remove ector usage: efl_canvas_vg_container.c

Removed all ector calls from evas file efl_canvas_vg_container.c
Function 'efl_canvas_vg_container_blend_buffer_clear' was also removed.

Change-Id: I80258e68cc37de5157a061621f96a924bf9052ca

3 years agoevas_vg refactoring: efl will use thorvg's SVG loader 83/257083/3
Michal Maciola [Mon, 19 Apr 2021 08:17:51 +0000 (10:17 +0200)]
evas_vg refactoring: efl will use thorvg's SVG loader

If file extension meets .svg, file will be loaded with thorvg.

Change-Id: I1eb25f912bd079a22f127587e614b3583a66986f

3 years agoevas vg: Fixed possible crash in rendering vg object 86/257186/5
Michal Szczecinski [Tue, 20 Apr 2021 12:36:02 +0000 (14:36 +0200)]
evas vg: Fixed possible crash in rendering vg object

Current draw solution uses pixels buffer shared between thorVG.
If this buffer is released because of object invalidation and drawing
thread don't finishes his job released buffer pointer is used by thread.
This commit fixes this case.

Change-Id: I736116cbc5b9c61e8d3d45b1b04d8e9345ad10cf

3 years agoecore_wl2_window: added new aux_hint_generate API 94/257194/10
Junseok, Kim [Wed, 21 Apr 2021 02:25:06 +0000 (11:25 +0900)]
ecore_wl2_window: added new aux_hint_generate API

We added new APIs for handling the aux_hint as below.

API added
 - int ecore_wl2_window_aux_hint_generate(Ecore_Wl2_Window *win, const char *hint, const char *val);
 - int ecore_wl2_window_aux_hint_id_get(Ecore_Wl2_Window *win, const char *hint);
 - const char *ecore_wl2_window_aux_hint_value_get(Ecore_Wl2_Window *win, int id);

The ecore_wl2_window_aux_hint_generate works similar as ecore_wl2_window_aux_hint_add,
however, this API is no need to give an ID.
It is assigned automatically in this function.

The ecore_wl2_window_aux_hint_id_get returns hint ID corresponding to the "hint" parameter.

The ecore_wl2_window_aux_hint_val_get returns hint value corresponding to the "id" parameter.

Change-Id: I3bec6844c6f2ce7d5105c5792961cb8bae144480
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoecore_wl2_window: Added internal aux hint list and maintain functions. 08/256508/14
Junseok, Kim [Wed, 21 Apr 2021 02:03:45 +0000 (11:03 +0900)]
ecore_wl2_window: Added internal aux hint list and maintain functions.

Added internal aux hint list and functions to manage the list.

Change-Id: I9b3c1a4871125c6242754fc2cefad78f8c07b70e
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoevas vg: fix a crash issue. 72/257072/2 submit/tizen/20210420.103606
Hermet Park [Mon, 19 Apr 2021 07:52:03 +0000 (16:52 +0900)]
evas vg: fix a crash issue.

composition target of the scene will be deleted by its owner paint,
We should not delete it once again.

Change-Id: I788bf18e06bc984adc882925037cc598ab31d012

3 years agoevas_vg: Fixed possible memory leak in svg loader. 66/256966/4
Michal Szczecinski [Thu, 15 Apr 2021 16:33:21 +0000 (18:33 +0200)]
evas_vg: Fixed possible memory leak in svg loader.

Memory leak was caused by SVG's which mask nodes. In case of mask it was
not added to parent, and because of that it was not relased when parent
node was destroyed.

Change-Id: I5b443c8f31be0626660cc6b8add13933c42b4e39

3 years agoevas vg: evas-vg-svg.c example 49/256949/3
Michal Maciola [Thu, 15 Apr 2021 07:55:09 +0000 (09:55 +0200)]
evas vg: evas-vg-svg.c example

The example for testing .svg files loading

Change-Id: Iba993d04a8ad089d2e52b0fb0836eb3f53d32ec5

3 years agoevas vg: Enabled composition for containers. 84/256184/2
Michal Szczecinski [Tue, 30 Mar 2021 12:02:22 +0000 (14:02 +0200)]
evas vg: Enabled composition for containers.

Use tvg_paint_set_composite_method() for scenes. Currently because of
other issues only MATTE_ALPHA method is supported.

Change-Id: I2f42d28e5ae71ebd56c4c3057287461d0ad80e34

3 years agoevas vg: fixing the compatibility issue 93/256593/2
Mira Grudzinska [Wed, 7 Apr 2021 21:23:50 +0000 (23:23 +0200)]
evas vg: fixing the compatibility issue

According to the standard, after applying arc_to the current control point should
be equal to the current point. This is fixed in Evas + ThorVG by using the cmd_prev
variable, so the value of the current control point, for the compatibility issue,
is set to be the same as in Evas.

Change-Id: I7f3d6510db85dbd18995f158538c9aea544acc73

3 years agoevas vg: fixing the compatibility issue 92/256592/2
Mira Grudzinska [Wed, 7 Apr 2021 21:02:25 +0000 (23:02 +0200)]
evas vg: fixing the compatibility issue

The current point set after appending the rectangle is different
for the rectangles with sharp or with rounded corners. The same logic
is applied to the version using ThorVG.

Change-Id: Id2908a248b4f9803989d31b2073300f92bba0fc9

3 years agoevas: vg: fixing the compatibility issue 94/256594/1
Mira Grudzinska [Wed, 7 Apr 2021 22:09:31 +0000 (00:09 +0200)]
evas: vg: fixing the compatibility issue

The current point value is set after setting the path and after
appending the svg path.

Change-Id: Iccf181cd10433ccdca7d8fdc6c4bb65ea75da526

3 years agoevas vg: fixing the compatibility issue 97/256497/2
Mira Grudzinska [Mon, 5 Apr 2021 13:33:49 +0000 (15:33 +0200)]
evas vg: fixing the compatibility issue

The circle, ellipse, and rectangle append functions required an additional
move_to command, so that the results obtained from EVAS with and without TVG
are the same.

Change-Id: Ib58fbd6cf217b0622f51a2c0d576f0ad9eb1656c

3 years agoevas vg: integrating gradient stroke into Evas with ThorVG 56/256256/3
Mira Grudzinska [Tue, 30 Mar 2021 23:47:10 +0000 (01:47 +0200)]
evas vg: integrating gradient stroke into Evas with ThorVG

Change-Id: I3306fafeacc78b7e9b773bc4d9bfe63967c3f4cd

3 years agoevas vg: fix compatibility issue. 43/256443/2 accepted/tizen/unified/20210403.020837 submit/tizen/20210402.123708
Hermet Park [Fri, 2 Apr 2021 11:19:33 +0000 (20:19 +0900)]
evas vg: fix compatibility issue.

evas_vg_shape_path_get() could return the commands value even though
it doens't have any path data.

Change-Id: Ia7d11aefa2a2a2b83ba8c763707fc3e4826209d9

3 years agoevas vg: fix current point compatibility issue. 30/256430/2
Hermet Park [Fri, 2 Apr 2021 09:09:56 +0000 (18:09 +0900)]
evas vg: fix current point compatibility issue.

it's weird, have no idea why it's introduced there...

Change-Id: I96072d98183ee4d8b28558bc1923dd34d7bd0868

3 years agoevas vg: fix compatiblity issue. 34/256434/2
Patryk Kaczmarek [Fri, 2 Apr 2021 09:27:28 +0000 (11:27 +0200)]
evas vg: fix compatiblity issue.

evas_vg_shape_current_get() x,y works differently when tvg works,
this commit fixes x and y positions as it should be

Change-Id: I8953dcfd21767fd7791f5872c0cdd3cb32dce785

3 years agoevas vg: Fixed build error. 61/256361/2
Michal Szczecinski [Thu, 1 Apr 2021 11:02:48 +0000 (13:02 +0200)]
evas vg: Fixed build error.

Move free() function calls to proper block of code.

Change-Id: I7bd3e56b79470facae84035b84114ff0d93a3e5f

3 years agoavas vg: Fixed arc compatibility issue 26/256426/2
Michal Szczecinski [Fri, 2 Apr 2021 08:30:14 +0000 (10:30 +0200)]
avas vg: Fixed arc compatibility issue

Change-Id: If8a659e3aaa7fc17a7819082f5da5dbbb662c026

3 years agoevas vg: fix compatibility issue. 18/256418/1
Hermet Park [Fri, 2 Apr 2021 07:48:36 +0000 (16:48 +0900)]
evas vg: fix compatibility issue.

evas_vg_shape_current_get() y position is changed after tvg works,
this fixes its y position which is supposed to be.

Change-Id: Iaecb3bdb7c16a8ca018e940ef0ad1c6ef3ec9343

3 years agoevas vg: + null check for safety 37/256337/3 accepted/tizen/unified/20210402.004913 submit/tizen/20210401.083633
Hermet Park [Thu, 1 Apr 2021 07:46:36 +0000 (16:46 +0900)]
evas vg: + null check for safety

Change-Id: I097a396f3e2bff6a1cff6718b66e3d1fe275e767

3 years agoevas vg: check return value as same to other usages. 17/256317/1 submit/tizen/20210401.064607
Hermet Park [Thu, 1 Apr 2021 06:10:47 +0000 (15:10 +0900)]
evas vg: check return value as same to other usages.

@fix coverity issue

Change-Id: I020a6501c293488855a81a0392032f354a3c71b3

3 years agoevas vg: fix a memory leak. 10/256310/1
Hermet Park [Thu, 1 Apr 2021 05:29:45 +0000 (14:29 +0900)]
evas vg: fix a memory leak.

Change-Id: I31281294a39fb6f9192dcf812797c9aa637db046

3 years agoevas vg: fix a memory leak. 98/256298/2
Hermet Park [Thu, 1 Apr 2021 04:15:43 +0000 (13:15 +0900)]
evas vg: fix a memory leak.

free commands properly after usage.

Change-Id: Ia0362b5779ca71715e4c8a2af5dd1a38594f359e

3 years agoevas vg: fix a memory leak. 96/256296/2
Hermet Park [Thu, 1 Apr 2021 04:12:58 +0000 (13:12 +0900)]
evas vg: fix a memory leak.

free pts memory properly after usage.

Change-Id: I51e8135f3a64bd84562ff1d1245eb85c86e55b28

3 years agoevas vg: check return value as same to other usages. 92/256292/2
Hermet Park [Thu, 1 Apr 2021 03:07:25 +0000 (12:07 +0900)]
evas vg: check return value as same to other usages.

@fix coverity issue.

Change-Id: I70364686d56762a9f08e627b9f74dfed9457afb3

3 years agoevas canvas: + null check handling. 04/256304/2
Hermet Park [Thu, 1 Apr 2021 04:30:47 +0000 (13:30 +0900)]
evas canvas: + null check handling.

Change-Id: I8f2348d77ee956e3ade808fcfe96be63864964cb

3 years agoevas canvas: + null handling. 02/256302/2
Hermet Park [Thu, 1 Apr 2021 04:29:19 +0000 (13:29 +0900)]
evas canvas: + null handling.

Change-Id: I14289681431ca8dceca9e692244421b0f9e2470c

3 years agoevas vg: fix memory leak. 99/256299/2
Hermet Park [Thu, 1 Apr 2021 04:23:29 +0000 (13:23 +0900)]
evas vg: fix memory leak.

these commands info were allocated internally when thorvg is enabled,
because it needs to convert the data from tvg -> evas type.

this condition branch should be removed when tvg is mandatory default.

Change-Id: Ib5d824e6588b99f0390363109d4efc1b5f80cea0

3 years agoevas vg: + null checking for safety. 91/256291/1
Hermet Park [Thu, 1 Apr 2021 03:02:47 +0000 (12:02 +0900)]
evas vg: + null checking for safety.

Change-Id: I7abb6ebf856d7508537e9610c80f06202c23fc2e

3 years agoevas vg: fix the final stroke color in the interpolation process 38/256038/2
Mira Grudzinska [Sun, 28 Mar 2021 22:18:32 +0000 (00:18 +0200)]
evas vg: fix the final stroke color in the interpolation process

When ThorVG used, the final stroke color in the interpolation
was the same as the initial one.

Change-Id: I24ef66ab1964f36942a393f9c81eb62a2cb3e09d

3 years agoatspi: emit i18n name change signal only for highlighted object 71/255771/3 accepted/tizen/unified/20210330.111316 submit/tizen/20210329.004856
Shinwoo Kim [Tue, 23 Mar 2021 10:47:05 +0000 (19:47 +0900)]
atspi: emit i18n name change signal only for highlighted object

User could change genlist item text even though it does not have highlight.
And if user changes for all items, then it make unnecessary ipc call.

There was a problem that too much signal was generated.
It seems that there would be root reason of this problem.
Before finding it, this could be reasonable solution.

*tizen_fix

Change-Id: I93d7c914d1693e18670c2169536a4041526b21ca

3 years agoEnable thorvg backend. 70/255870/2
Hermet Park [Wed, 24 Mar 2021 09:54:21 +0000 (18:54 +0900)]
Enable thorvg backend.

Change-Id: I8d12fa760b6dbc4f1c2c5ac9d14b994f9f235dae

3 years agoevas vg: integration of join and cap properties in evas with ThorVG 84/255784/2
Mira Grudzinska [Tue, 23 Mar 2021 13:11:53 +0000 (14:11 +0100)]
evas vg: integration of join and cap properties in evas with ThorVG

Join and cap stroke properties had to translated from Efl values to
Tvg values and vice versa.

Change-Id: Id98c3e7fc6b314b1527160e004c29595cac21c88

3 years agovg_common_svg: added stroke color premultiplication 91/255791/2
Mira Grudzinska [Tue, 23 Mar 2021 19:09:50 +0000 (20:09 +0100)]
vg_common_svg: added stroke color premultiplication

The color of a stroke has to be premultiplied before beeing redirected
to evas_vg_shape_stroke_color_set.

Change-Id: I15364019db8129e5a46d975b4bcfc586f4c71d61

3 years agogl: remove logically dead code 22/255822/2
Shinwoo Kim [Wed, 24 Mar 2021 05:17:48 +0000 (14:17 +0900)]
gl: remove logically dead code

Lines folowing the label 'rotate_image' is working only tofree is not NULL.
Every place is checking if tofree is NULL before calling 'goto rotate_image'.

Change-Id: I87e248a6829a0a0561169c91897a203a805b454f

3 years agovg_common_svg: colors unpremultiplication added before saving into edj file 27/255627/2
Mira Grudzinska [Sun, 21 Mar 2021 16:38:09 +0000 (17:38 +0100)]
vg_common_svg: colors unpremultiplication added before saving into edj file

Colors were premultiplied first when reading from the svg file and
second when saving into edj file. As the result svg files with the opacity < 1
could be uncorretly displayed (only when the color and the opacity were
given in the same node).

Change-Id: If4bc806a88993fdb3ca8a7c78b2a574215cb71f5

3 years agoevas vg: gradient and fill required un/premultiplication of colors 26/255626/1
Mira Grudzinska [Sun, 21 Mar 2021 16:19:56 +0000 (17:19 +0100)]
evas vg: gradient and fill required un/premultiplication of colors

ThorVG expects not premultiplied colors, Evas premultiplied.
The compliance has been assured.

Change-Id: Id645ae3220a94d1ee737bdd903648ea22c2448e2

3 years agoevas vg: fix build break. 39/255539/1
Hermet Park [Fri, 19 Mar 2021 06:11:30 +0000 (15:11 +0900)]
evas vg: fix build break.

some typing mistake by 4cebc065fba8a7eaf051d75881fa48377c41490f

Change-Id: Ie57849869b1bb4257713230c3839b5521960beee

3 years ago[AT-SPI] efl_ui_radio: Emit "State Changed" signal only if the button is highlighted. 64/255064/5
Maria Bialota [Thu, 11 Mar 2021 15:57:31 +0000 (16:57 +0100)]
[AT-SPI] efl_ui_radio: Emit "State Changed" signal only if the button is highlighted.

*tizen_only

Change-Id: I15e4fc380e4451ec3283476a71dcfeae1de2d309

3 years agoevas vg: push vg_image no matter change flag 42/255242/2
Michal Maciola [Mon, 15 Mar 2021 15:39:15 +0000 (16:39 +0100)]
evas vg: push vg_image no matter change flag

Change-Id: I0cb4eef95320e1df9d5a53662bcc85428b14d63f

3 years agoevas: code refactoring by tvg integration. 28/255428/11
Hermet Park [Thu, 18 Mar 2021 07:08:18 +0000 (16:08 +0900)]
evas: code refactoring by tvg integration.

Change-Id: Ib5d37aa93db784b7c2829f36ffe85ff987d36d73

3 years agoevas vg: Keep backward comaptibility for append_arc. 42/255442/3
Michal Szczecinski [Thu, 18 Mar 2021 07:01:30 +0000 (08:01 +0100)]
evas vg: Keep backward comaptibility for append_arc.

In origin solution evas_vg_shape_append_arc() connects don't closed
arcs using line. To keep backward comaptibility solution from
efl_gfx_path was moved to tvg integration code.

Change-Id: Id868bd729e9b4a6ed26c5aea02a0a7de0d41edb1

3 years agoector image: Prevents drawing images outside buffer 34/255434/1
JunsuChoi [Thu, 18 Mar 2021 08:10:05 +0000 (17:10 +0900)]
ector image: Prevents drawing images outside buffer

Summary:
A crash may occur when image size is set larger than buffer.
So, modify boundary of the image drawing the image
so that it does not go out of the buffer.

Test Plan: N/A

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers, kimcinoo

Tags: #efl

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

Change-Id: Ia2857c21c6805abc40973e6ab7375fc81331c979

3 years agoefl_canvas_vg_shape: fix memory leak 32/255232/5
Piotr Chludzinski [Mon, 15 Mar 2021 09:53:15 +0000 (10:53 +0100)]
efl_canvas_vg_shape: fix memory leak

Change-Id: I64e8b90956f55c993101689af01d54681417cc6d
Signed-off-by: Piotr Chludzinski <p.chludzinsk@samsung.com>
3 years agoevas vg: added shape fill rule 01/255301/4 accepted/tizen/unified/20210319.141010 submit/tizen/20210318.015037
Michal Maciola [Tue, 16 Mar 2021 10:35:41 +0000 (11:35 +0100)]
evas vg: added shape fill rule

Added brief comments, removed trailing spaces

Change-Id: Id041734c0a96ed4652d04967e47326260f9a4e37

3 years agoecore_wl2: add ecore_wl2_subsurface_aux_hint_set 63/255363/3
Shinwoo Kim [Wed, 17 Mar 2021 10:28:29 +0000 (19:28 +0900)]
ecore_wl2: add ecore_wl2_subsurface_aux_hint_set

This patch is providing way to set auxiliary hint on subsurface.
Application could get filpped image with following line.

ecore_wl2_subsurface_aux_hint_set(subsurface, "wm.video.flip.mode", "1");

+ reducing debug message

*tizen_only

Change-Id: I6a6f7c91bb088abd2daf8d57ef3c439f957ca6e0

3 years agoevas vg: stabilize thorvg integration. 41/255341/1
Hermet Park [Wed, 17 Mar 2021 06:24:47 +0000 (15:24 +0900)]
evas vg: stabilize thorvg integration.

there are missing start point while interpreting svg path,
after move the point the its position has to be relative to the previous shape
origin.

This patch make it work successfully.

Change-Id: Ie617f560424fecd66e89b1e71b4c797fa8bddfac

3 years agoelementary slider: gurantee scroll hold push/pop match. 04/255304/2
Hermet Park [Tue, 16 Mar 2021 11:11:54 +0000 (20:11 +0900)]
elementary slider: gurantee scroll hold push/pop match.

Mouse In/Out is not guranteed for paired event calls,
Users could prevent that exception case by flaging its condition.
Otherwise slider screen could be blocked in scrolling.

Thus, this patch is better for safety.

Change-Id: I753fbb3638b854d05945bdc8a1d372ca029d7f5a

3 years agoedje: add null check for safety. 60/255260/1
Hermet Park [Tue, 16 Mar 2021 03:43:22 +0000 (12:43 +0900)]
edje: add null check for safety.

Change-Id: I083822860854a91fc3dcc2e2cdd9b26842b820ed

3 years agoevas vg: use tvg thread count not to reach to limit. 90/255190/1
Hermet Park [Mon, 15 Mar 2021 05:38:38 +0000 (14:38 +0900)]
evas vg: use tvg thread count not to reach to limit.

Avoid tvg thread count not to reach to maximum physical count
since we already allocated main thread.

Change-Id: I9e84d838e7694413a2eeb9bbfc7add62cddda6e7

3 years agoecore_con: add null check for safety. 67/255167/1
Hermet Park [Mon, 15 Mar 2021 01:39:31 +0000 (10:39 +0900)]
ecore_con: add null check for safety.

Change-Id: I7d1ba3f4e22e2fe39c1020f1da08ab114613e81a

3 years agoevas vg: shape_reset() only requires reset path. 30/255130/2
Hermet Park [Fri, 12 Mar 2021 09:24:46 +0000 (18:24 +0900)]
evas vg: shape_reset() only requires reset path.

it should not reset any other properties.

Change-Id: I5bfdf86cbdf85aae7fbef57438b214bddd6ef0e0

3 years agovg_common_svg: Keep backward compatibility about display, opacity of SVG 28/255028/5
JunsuChoi [Thu, 11 Mar 2021 08:57:49 +0000 (17:57 +0900)]
vg_common_svg: Keep backward compatibility about display, opacity of SVG

Edje compiled in version 4.0 of tizen studio does not have eet description in paser related to display and opacity.
Therefore, in later versions, display and opacity are always set to 0.
so, it blocks the display and opacity features.

When tizen studio's edje hosting service is in progress, this function can be added again.

@tizen_only

Change-Id: I1a34466522a691c8f88b76ec4f46a85193ee1314

3 years agoevas vg: Fixed container alpha settings. 69/254569/1
Michal Szczecinski [Thu, 4 Mar 2021 20:23:16 +0000 (21:23 +0100)]
evas vg: Fixed container alpha settings.

This commit fixes rendering issues of SVG's with opacity and color
defined in <g> node type.

Change-Id: I5de54ec9cde3a931ce4920c9a5f91f1c73adb0ae

3 years agoevas_object_smart: enhance logic checking clipper visibility 75/254475/1
Shinwoo Kim [Wed, 3 Mar 2021 07:44:28 +0000 (16:44 +0900)]
evas_object_smart: enhance logic checking clipper visibility

Summary:
If current clipper object is equal to previous clipper object,
then the value of visible (or alpha) is same, because it is same object.

But there is a case that current visible value is different with
previous visible, when clipper object is same.

I added this patch to cover above case to draw childern of map.
See following flow.

  evas_render_mapped
    > if (_evas_render_has_map(obj) && !_evas_render_can_map(obj))
      > if (!changed) changed = evas_object_smart_changed_get(obj);

The evas_object_smart_changed_get returned FALSE, even though
current visible value is different with previous one in the same
clipper object.

Reviewers: raster, Hermet, herb, jsuya

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Change-Id: I4306eaf0a5aab156dbbf223dd844e338bde1d6b2

3 years agoevas canvas: if statements cleanup 29/252829/2
Michal Maciola [Tue, 2 Feb 2021 15:39:45 +0000 (16:39 +0100)]
evas canvas: if statements cleanup

Change-Id: I59147a26d9f639e38cb244f0b6b4a215f16874ec

3 years agogl_generic: disable creating gl thread 97/252297/2
Taehyub Kim [Tue, 26 Jan 2021 08:22:26 +0000 (17:22 +0900)]
gl_generic: disable creating gl thread

The gl render thread was implemented for gl threading but this feature is not used.
because the gl render thread feature has no performance advantage and not stable.
so disable creating Evas-gl-thread-wk thread.

Change-Id: I6b13588e6d5cc44df11579b401d7621413f4e047

3 years agoevas canvas: code cleanup. Removed warnings. 15/252615/2
Michal Szczecinski [Sun, 31 Jan 2021 11:11:11 +0000 (12:11 +0100)]
evas canvas: code cleanup. Removed warnings.

Change-Id: Ib475a8e806556c06c2eb11aa9b9e0d61d369e7cd

3 years agoeeze: fix a potention memory leak 15/253715/1 accepted/tizen/unified/20210218.042126 submit/tizen/20210217.025513
Shinwoo Kim [Wed, 17 Feb 2021 01:18:28 +0000 (10:18 +0900)]
eeze: fix a potention memory leak

Summary:
if udev device get parents fails, memory leaks.
this patch fixes the problem.

Reviewers: raster, Hermet, jsuya, herb, ali.alzyod, devilhorns

Reviewed By: ali.alzyod, devilhorns

Subscribers: ali.alzyod, cedric, #reviewers, #committers

Tags: #efl

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

Change-Id: I6f2484184dd0b918952f7fbfddd3b974e8faba3b

3 years agogl: remove memory leak of orient_set 06/253606/1
Shinwoo Kim [Sat, 13 Feb 2021 11:51:16 +0000 (11:51 +0000)]
gl: remove memory leak of orient_set

Summary:
The tex->pt->references is descreased by
evas_gl_common_texture_free -> pt_unref

if tex->references is 0

And tex->pt->texture is removed by
evas_gl_common_texture_free -> pt_unref -> glDeleteTextures

if tex->pt->references is 0

The evas_gl_common_texture_free decreases tex->references only
if tex->references is bigger than 0. There is no chance to decrease
tex->pt->references at this point.

So if orient_set increases both references of tex and tex->pt, then
the tex->pt->reference is not decreased till tex->references is 0.

So do not increase tex->pt->references in eng_orient_set.

Reviewers: raster, cedric, Hermet

Subscribers: #reviewers, #committers

Tags: #efl

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

Change-Id: I193f4007e53e1f6077e9baf55aa774504353c7df

3 years agogl: remove orient mismatch between texture and image 72/253572/2
Shinwoo Kim [Mon, 25 Jan 2021 11:53:03 +0000 (20:53 +0900)]
gl: remove orient mismatch between texture and image

With following step, we got abnormal image,
because there is a mismatch between texture and image.

evas_object_image_orient_set(90)
evas_object_image_data_get

evas_object_image_orient_set(180)
evas_object_image_data_get

evas_object_image_orient_set(270)
evas_object_image_data_get

evas_object_image_orient_set(0)
evas_object_image_data_get

The evas_object_image_data_get create rotated image and texture.
The rotated image and texture is used in evas_gl_common_context_image_push.
evas_gl_common_context_image_push has been used 0 orient texture so far.

But following commit made evas_gl_common_context_image_push use
rotated texture

  0abf1ee [evas_gl] change oreint_set() / data_set() / data_get() ...

And for more information,
The following commit increase ref count of rotated texture
So by somehow... rotated texture was used with 0 orient image.

  1b91101 evas: fix usage of the same ressource ...

*tizen_fix

Change-Id: I8429cedd835cdf1dc94931e1c9c4b308d775ac71

3 years agoelementary entry: fix limit size issue in the password mode 56/253556/2
Youngbok Shin [Mon, 15 Feb 2021 10:14:24 +0000 (19:14 +0900)]
elementary entry: fix limit size issue in the password mode

The elm_entry always give plain text in the password mode.
When it needs to calculate the length of the current text,
the current text should be handled as a plain text.

@tizen_fix

Change-Id: Ia8e9cab9196e209f86334f40ce06c2de8aa3fb18

3 years agoecore_wl2: get window from subsurface 54/253554/1 accepted/tizen/unified/20210216.015108 submit/tizen/20210215.095045
Shinwoo Kim [Mon, 15 Feb 2021 09:35:21 +0000 (18:35 +0900)]
ecore_wl2: get window from subsurface

There is a requirement to get ecore_wl2_window from
given ecore_wl2_subsurface.

Change-Id: Idffef92b50b4edc474ae53cb7df5ffc65b26f615

3 years agoecore_wl2_subsurface: remove double free 66/253366/2 accepted/tizen/unified/20210215.131008 submit/tizen/20210210.005432
Shinwoo Kim [Tue, 9 Feb 2021 07:23:19 +0000 (16:23 +0900)]
ecore_wl2_subsurface: remove double free

User could use ecore_wl2_subsurface API as below.

if (!ecore_wl2_subsurface_video_surface_prepare)
   ecore_wl2_subsurface_del;

If video_surface_prepare frees subsurface when it gets a failure,
then del also tries to free the subsurface again. (double free)

It does not make sense to release subsurface in video_surface_prepare.
So this patch is removing the line to free subsurface.

*tizen_fix

Change-Id: I5da0c10f59ebae5d7b4406f8ad93dacb082bb285

3 years agoedje_entry: fix a potential error of null deref 10/253010/1
Jaehyun Cho [Thu, 4 Feb 2021 02:00:14 +0000 (11:00 +0900)]
edje_entry: fix a potential error of null deref

Summary:
This is a patch to fix a potential error of null dereferencing.
This patch is based on D12087.

Reviewers: Hermet, jsuya

Reviewed By: jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Change-Id: I564443644aabf64e055736c201b8df87f7eced9a

3 years agoeet, emile: safety++ 02/253002/3 accepted/tizen/unified/20210208.061652 submit/tizen/20210204.012753
Shinwoo Kim [Thu, 4 Feb 2021 01:11:16 +0000 (10:11 +0900)]
eet, emile: safety++

Summary:
(1) EVP_MD_CTX_new could return NULL
(2) EVP_DigestUpdate returns 0 for failure.
  https://www.openssl.org/docs/man1.0.2/man3/EVP_DigestUpdate.html

Reviewers: raster, Hermet, cedric, devilhorns

Reviewed By: devilhorns

Subscribers: SPAM-roll99, devilhorns, #reviewers, #committers

Tags: #efl

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

Change-Id: If86106c318e91754010eca27bfd5ee898c49f0d1

3 years agoecore_wl2_window: update window's saved size in ecore_wl2_window_commit 35/252935/1
Doyoun Kang [Wed, 3 Feb 2021 04:56:28 +0000 (13:56 +0900)]
ecore_wl2_window: update window's saved size in ecore_wl2_window_commit

There was a bug that the window size was not changed after unsetting user geometry.

@tizen_only

Change-Id: Ia611b04ba57a29f891f95f6f9b9b03ef84a83bb9

3 years agoefl_ui_widget: remove missing break in switch 71/252571/2
Shinwoo Kim [Fri, 29 Jan 2021 10:12:24 +0000 (19:12 +0900)]
efl_ui_widget: remove missing break in switch

Current code is correct logically.
But someday we could make a mistake, if there is missing break in switch.
So remove the missing break.

Change-Id: I61094a9aa788e31d5744bb0ace6a744c869cf300

3 years agoEfl.Canvas.Vg.Object: Skip render, if size of the drawing area is 0 22/252622/1
JunsuChoi [Mon, 1 Feb 2021 00:59:33 +0000 (09:59 +0900)]
Efl.Canvas.Vg.Object: Skip render, if size of the drawing area is 0

Summary:
If the size of the boundary of path is 0, there is no area to draw.
Therefore, it is the same as hide().
If there is no area to draw, there is no need to create a buffer or perform rendering.

Test Plan: N/A

Reviewers: Hermet, kimcinoo

Reviewed By: Hermet

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

Tags: #efl

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

Change-Id: I5c3345986f034664d43ea84cef3f3f08f70c4ae5

3 years agoEvas renderer: vg_image push/update fix 95/251495/3
Michal Maciola [Thu, 14 Jan 2021 09:07:02 +0000 (10:07 +0100)]
Evas renderer: vg_image push/update fix

Change-Id: Ie0425066dd9629cc088989fc7798310dddf4a24c

3 years agoecore_wl2_input: support a touch max count event 61/250261/9
jeon [Tue, 22 Dec 2020 11:34:03 +0000 (20:34 +0900)]
ecore_wl2_input: support a touch max count event

Change-Id: I95e16e5378ddd9c73161c84854770561e626dba5

3 years agoGradient update fix 12/250912/5
Michal Maciola [Tue, 5 Jan 2021 12:25:38 +0000 (13:25 +0100)]
Gradient update fix

Gradient didnt update after setting new parameters (like new color stops, center point or radius).
This fix solves the problem. Could be tested with evas-vg-gradient-manipulation.c example.

Shape was added into Efl_Canvas_Vg_Gradient_Data for efl_canvas_vg_node_change() calling.
gd->gradient_render_pre_tvg() is now called in renderer loop.

Fixed for svg-gradient.

Change-Id: I401984cf5f163520dad0c46489ebb24b72325258

3 years agoEvas renderer: animation value provider update fix 27/251327/3
Michal Maciola [Tue, 12 Jan 2021 15:21:08 +0000 (16:21 +0100)]
Evas renderer: animation value provider update fix

Change-Id: I27774a965429cb24038637dad27e18648efb986c

3 years agoevas vector: Fix shape's path getter 29/251229/4
Piotr Kalota [Mon, 11 Jan 2021 15:44:24 +0000 (16:44 +0100)]
evas vector: Fix shape's path getter

Add handling of improper values from 'tvg_shape_get_path_commands' and 'tvg_shape_get_path_coords'.

Change-Id: Ibf0355b1238c2e4b87ea66f6913b1f5ee215306a

3 years agoevas vector: Fix stroke's color convertion problem 21/251321/4
Piotr Kalota [Tue, 12 Jan 2021 12:53:51 +0000 (13:53 +0100)]
evas vector: Fix stroke's color convertion problem

Change-Id: I1947a178617cae5a0dfd088920d654016746126e

3 years agoNode geometry get bounds fix 26/250626/9
Michal Maciola [Wed, 30 Dec 2020 09:10:25 +0000 (10:10 +0100)]
Node geometry get bounds fix

This is a fix for evas_vg_node_geometry_get() function.
tvg_paint_get_bounds() was added to thorvg.

Commit was rebuilded on patch set 7.
Efl.Gfx.Path.bounds_get override was added into efl_canvas_vg_shape.eo.
For thorvg tvg_paint_get_bounds(), for efl super is called.

Change-Id: If6ecef780ade2deeec70129f75660c57544c5d68

3 years agoevas vector: Added stroke's color and width restore after reset. 19/251619/2
Michal Szczecinski [Fri, 15 Jan 2021 14:08:51 +0000 (15:08 +0100)]
evas vector: Added stroke's color and width restore after reset.

This commit fixes issue with invisible circle progressbars. Thorvg
resets stroke width and color information. We have to set it again to
use reset api in the same way as it is designed in ector mode.

Change-Id: I8310455ba64333ee767b90c0d6002945024e51b6

3 years agoevas vector: Fix changing visibility of container 98/251698/1
Piotr Kalota [Mon, 18 Jan 2021 14:17:13 +0000 (15:17 +0100)]
evas vector: Fix changing visibility of container

Change-Id: Ia6df0e34fb9630aedf5eaecfac9c77b459b28d1a

3 years agoevas text: do recalc immediately whenever ellipsis property is changed 25/251625/1 submit/tizen/20210118.100628
Youngbok Shin [Sat, 16 Jan 2021 07:42:34 +0000 (16:42 +0900)]
evas text: do recalc immediately whenever ellipsis property is changed

It was impossible to get properly recalculated size immediately when
the ellipsis property is updated. It required some meaningless resize call
to trigger the Evas Text calculation.
So, the patch put the recalc function in evas_object_text_ellipsis_set() function
to do recalc immediately.

Change-Id: I425f27e3fa3c37cebddde60e9e357b7238f5a28f

3 years agogl: remove invalid read and write 78/251478/2 submit/tizen/20210115.062052 submit/tizen/20210117.211744
Shinwoo Kim [Thu, 14 Jan 2021 04:47:06 +0000 (13:47 +0900)]
gl: remove invalid read and write

Summary:
There could be 2 evas_gl_image referencing 1 evas_gl_texture.
evas_object_image_orient_set could make this case.
In this case, when one evas_gl_image is removed(free), the evas_gl_texture
is not removed because its reference count.
After this point, if the other evas_gl_image is removed without drawing
(see function evas_gl_common_image_draw, line "im->tex->im = im")
then evas_gl_texture is reading invalid adress when it is removed.

Reviewers: Hermet, jsuya, herb, devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

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

Change-Id: I6e7dc894ab314a45ddaadeba709ea2b35360b43a

3 years agoecore_evas: fix to notify mainthread just once 90/251290/2 submit/tizen/20210113.093459
Wonki Kim [Tue, 5 Jan 2021 05:21:57 +0000 (14:21 +0900)]
ecore_evas: fix to notify mainthread just once

in tizen, there is an indivisual thread for getting vsync signal.
and the thread notifies the main thread every single time it gets vsync signal.

so that main thread has a possibility to handle multiple times of thread callbacks
(notify handler) when main thread can't iterate within about 16ms
which is an interval of the vsync signal.

this patch fixes the vsync logic not to notify the main thread
when the previous vsync is not handled.

Change-Id: I650a6213f7935f00600496aaac398858f5e9ebf2

3 years agoEanimator_vsync: Disabled log domain register 42/251242/1 submit/tizen/20210118.100557
Woochanlee [Tue, 12 Jan 2021 02:11:00 +0000 (11:11 +0900)]
Eanimator_vsync: Disabled log domain register

Same reason with 38544f61d0573f6a11c459ec52500282f556a6ad.

Change-Id: Ic452a56a3585899566d558a4b43c2d878399b035

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)