platform/core/uifw/dali-toolkit.git
12 months agoEnsure blendshape weight between [0..1] 22/300422/1
Eunki Hong [Tue, 24 Oct 2023 14:05:43 +0000 (23:05 +0900)]
Ensure blendshape weight between [0..1]

Let we ensure the blendshape weight is between 0 and 1.
So ignore cases when weight value is bigger than 1, less than 0.

Change-Id: I3bdd0a3f59498654e6e7ac65a4a2e665a58a9fcc
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
12 months agoFix minor coverity issues (phase 2) 91/300391/1
Eunki Hong [Mon, 23 Oct 2023 11:34:24 +0000 (20:34 +0900)]
Fix minor coverity issues (phase 2)

 - Move std::string
 - Move std::function
 - Move some Property::Map if possible

Change-Id: I1400f02aa30e37b71a8d731d108bdf41acd88e1c
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
12 months agoFix randomly failed UTC (2) 53/300353/1
Eunki, Hong [Mon, 23 Oct 2023 03:18:10 +0000 (12:18 +0900)]
Fix randomly failed UTC (2)

Change-Id: I1a7470c05fc2bb65910a643e7da5d4868c44c3f7
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
12 months agoFix randomly failed UTC 21/300321/1
Eunki Hong [Sat, 21 Oct 2023 14:35:34 +0000 (23:35 +0900)]
Fix randomly failed UTC

- UtcDaliModelResourceCacheCheck
There was some logical error for that UTC.

- UtcDaliAnimatedImageVisualMultiImage01
It was possible that some AsyncTask can be processed
without event trigger. It is impossible to resolved now.
Until we make toolkit-async-task-manager, just block this UTC.

Change-Id: Id0e3a944d9dc83261180ef1a96faab754626133c
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
12 months agoMerge "Remove Rasterize task when svg load failed" into devel/master
Eunki Hong [Fri, 20 Oct 2023 09:19:34 +0000 (09:19 +0000)]
Merge "Remove Rasterize task when svg load failed" into devel/master

12 months agoDALi Version 2.2.49 94/300294/1 dali_2.2.49
Adeel Kazmi [Fri, 20 Oct 2023 06:07:49 +0000 (07:07 +0100)]
DALi Version 2.2.49

Change-Id: Iff66d95be44e2194a361751108e0173bfd691f2d

13 months agoRemove Rasterize task when svg load failed 28/300228/1
Eunki, Hong [Thu, 19 Oct 2023 04:10:38 +0000 (13:10 +0900)]
Remove Rasterize task when svg load failed

Since RasterizeTask's IsReady return false; that task will not be removed
forever.

To avoid this useless task keeping, let we remove that task when svg load
failed.

Change-Id: I856fb5c88eac2234253b513b5ba9f772ffd41eba
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoMerge "Fix ZWJ issue" into devel/master
Bowon Ryu [Thu, 19 Oct 2023 02:30:20 +0000 (02:30 +0000)]
Merge "Fix ZWJ issue" into devel/master

13 months agoFix ZWJ issue 25/300125/4
Bowon Ryu [Tue, 17 Oct 2023 06:36:03 +0000 (15:36 +0900)]
Fix ZWJ issue

Added ZWJ sequence to solve the issue of ZWJ not working.
this patch processes ZWJ as one sequnce.
and this condition has been merged with the previous emoji logic.

Added exception handling in editable environment.
Removed unnecessary variables related to emoji.

Change-Id: Id7825732d96c3e87a8c93b6c2e8d57e057eb7435
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
13 months agoLet we use default white IBL image even environment info not exist 30/300130/1
Eunki, Hong [Tue, 17 Oct 2023 07:38:13 +0000 (16:38 +0900)]
Let we use default white IBL image even environment info not exist

When we use ModelNode without model url, we don't follow
environment map load task. So default IBL texture can be 'empty'.

In this case, the PBR shader what dali use default, might do some
strange behaviour.

To guard this cases, let we make all Dali::Scene3D::Model use
non-empty default textures.

Change-Id: I47cd1f5b89f812b2a35c5f4cb5dfb1084b5760a3
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoFix minor coverity issues 80/300080/2
Eunki Hong [Mon, 16 Oct 2023 11:19:10 +0000 (20:19 +0900)]
Fix minor coverity issues

1. Remove std::string copy
2. Remove Property::Array copy

Change-Id: I9b45c0ff87588a6f79d8ae4a109909c7c016dbdf
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoMerge "DALi Version 2.2.48" into devel/master
Adeel Kazmi [Fri, 13 Oct 2023 13:22:14 +0000 (13:22 +0000)]
Merge "DALi Version 2.2.48" into devel/master

13 months agoDALi Version 2.2.48 00/300000/1 dali_2.2.48
Adam Bialogonski [Fri, 13 Oct 2023 10:06:44 +0000 (11:06 +0100)]
DALi Version 2.2.48

Change-Id: If68564f4b8690d7fdff4f5c3d59e586586c3b07e

13 months agoMerge "Add color tag for text markup anchor" into devel/master
Bowon Ryu [Fri, 13 Oct 2023 06:52:58 +0000 (06:52 +0000)]
Merge "Add color tag for text markup anchor" into devel/master

13 months agoAdd color tag for text markup anchor 48/299948/2
Bowon Ryu [Thu, 12 Oct 2023 11:51:14 +0000 (20:51 +0900)]
Add color tag for text markup anchor

"<a color='blue' clicked-color='red' href='https://www.tizen.org'>TIZEN</a>"

user can set color and clicked color in the anchor tag.
if not set, default color is applied.

Change-Id: I6ed67b3ae4bec414e306d46bc2b70d4c7a87cdf7
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
13 months agoFix gcc-13 compile error (std::vector include) 50/299950/1
Eunki Hong [Thu, 12 Oct 2023 13:18:47 +0000 (22:18 +0900)]
Fix gcc-13 compile error (std::vector include)

Change-Id: I33ce58c0ee7862d2c5086b3f933128b38a3860ad
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoMerge "Destroy removal visuals after idler" into devel/master
David Steele [Thu, 12 Oct 2023 10:28:45 +0000 (10:28 +0000)]
Merge "Destroy removal visuals after idler" into devel/master

13 months agoMerge "Keep reference when member callback excute + Make NPatchData as RefObject...
David Steele [Thu, 12 Oct 2023 10:24:28 +0000 (10:24 +0000)]
Merge "Keep reference when member callback excute + Make NPatchData as RefObject" into devel/master

13 months agoDestroy removal visuals after idler 95/299895/3
Eunki, Hong [Wed, 11 Oct 2023 12:53:00 +0000 (21:53 +0900)]
Destroy removal visuals after idler

There was some bug when visual destructor called during
it's emit ResourceReady.

To avoid this case, Let we keep visuals more long term,
and Discard + Destroy after some idler called.

To avoid multiple Idler callback register,
let we make that idler callback in VisualFactory.

Change-Id: Id47083b158f91bb81666d6f2100811dedb0d70f1
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoMerge "Add TextFitArray to text label" into devel/master
Bowon Ryu [Thu, 12 Oct 2023 04:30:21 +0000 (04:30 +0000)]
Merge "Add TextFitArray to text label" into devel/master

13 months agoKeep reference when member callback excute + Make NPatchData as RefObject 68/299868/2
Eunki, Hong [Wed, 11 Oct 2023 08:04:44 +0000 (17:04 +0900)]
Keep reference when member callback excute + Make NPatchData as RefObject

Some CallbackBase didn't hold the reference of itself.
So it was possible to call destructor of itself during it's
API was running.

It might makes some unknown issues. So let we keep reference
for some issue-comes known APIs : SvgVisual, NPatchData, and lottie

It future, we should discard visuals rather than delate it directly.

Change-Id: Ibeab31bc309869aa7c2ee65cbff8789e7bb2a721
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoMerge "Update test harness to use matching build system" into devel/master
David Steele [Tue, 10 Oct 2023 10:28:01 +0000 (10:28 +0000)]
Merge "Update test harness to use matching build system" into devel/master

13 months agoAdd TextFitArray to text label 57/299557/4
Bowon Ryu [Thu, 5 Oct 2023 02:29:45 +0000 (11:29 +0900)]
Add TextFitArray to text label

Add a new function to satisfy the UX that
operates TextFit by considering the PointSize and MinLineSize of the text.

For example, TextFit should be able to find the one that
fits among [PointSize 24 + MinLineSize 40] or [PointSize 28 + MinLineSize 44].

But the previous TextFit only considers PointSize.

TextFitArray can solve this problem,
and this implemented it to respond to additional requirements without modifying the API.

Simple usage:
std::vector<DevelTextLabel::FitOption> fitOptions;
fitOptions.push_back(DevelTextLabel::FitOption(24, 40));
fitOptions.push_back(DevelTextLabel::FitOption(28, 44));
DevelTextLabel::SetTextFitArray(textLabel, true, fitOptions);

Change-Id: Ib608465c8f4c96c56e471f14064e4e2d24377a8f
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
13 months agoSafety check for control set/get property 98/299298/3
Eunki Hong [Mon, 25 Sep 2023 10:21:00 +0000 (19:21 +0900)]
Safety check for control set/get property

Since some workerthread can access and try to get/set control's visual,
we might need to assert if worker thread try to use them.

Note : Current logic might got error if someone try to change API before
app create, but less care for now.

Change-Id: I68cb0ff5b822721a73c4fd40f4b86d21ddf1759f
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoMerge "(WebView) Set display area and Change Visual when WebView relayout" into devel...
Eunki Hong [Tue, 10 Oct 2023 01:48:09 +0000 (01:48 +0000)]
Merge "(WebView) Set display area and Change Visual when WebView relayout" into devel/master

13 months agoDALi Version 2.2.47 00/299700/1 dali_2.2.47
David Steele [Fri, 6 Oct 2023 12:10:11 +0000 (13:10 +0100)]
DALi Version 2.2.47

Change-Id: I2b52489372e6b17b9cca2a4b6d587d2b91ac60cd

13 months agoUpdate test harness to use matching build system 49/299549/2
David Steele [Wed, 4 Oct 2023 16:34:08 +0000 (17:34 +0100)]
Update test harness to use matching build system

Change-Id: Ie78bf75496f7fb097afe487ad3a9650d9765ccf3

13 months agoMerge "(visual-base-impl) Reduce cyclomatic complexity" into devel/master
Adeel Kazmi [Fri, 29 Sep 2023 13:07:41 +0000 (13:07 +0000)]
Merge "(visual-base-impl) Reduce cyclomatic complexity" into devel/master

13 months agoDALi Version 2.2.46 62/299462/1 dali_2.2.46
Richard Huang [Fri, 29 Sep 2023 11:27:40 +0000 (12:27 +0100)]
DALi Version 2.2.46

Change-Id: I1a50e964f0a5bcb1a6d383e1a4cfe505976124e6

13 months ago(visual-base-impl) Reduce cyclomatic complexity 61/299461/1
Adeel Kazmi [Fri, 29 Sep 2023 11:27:17 +0000 (12:27 +0100)]
(visual-base-impl) Reduce cyclomatic complexity

Change-Id: I37a1f691aa8d3669ec6d08177231e29a748138f9

13 months agoReduce Cyclomatic complexity in some text related files 46/299446/2
Adeel Kazmi [Thu, 28 Sep 2023 16:53:15 +0000 (17:53 +0100)]
Reduce Cyclomatic complexity in some text related files

Change-Id: If598f647cd4a1824f67a0e8a033d4ecf9856eb0e

13 months agoMerge "Add GetHeightForWidth for text visual model" into devel/master
Bowon Ryu [Tue, 26 Sep 2023 08:21:03 +0000 (08:21 +0000)]
Merge "Add GetHeightForWidth for text visual model" into devel/master

13 months agoMerge "Make NPatchData always use shared pointer" into devel/master
Eunki Hong [Tue, 26 Sep 2023 07:06:19 +0000 (07:06 +0000)]
Merge "Make NPatchData always use shared pointer" into devel/master

13 months agoAdd GetHeightForWidth for text visual model 36/299336/1
Bowon Ryu [Tue, 26 Sep 2023 06:50:50 +0000 (15:50 +0900)]
Add GetHeightForWidth for text visual model

Use visual model's GetHeightForWidth instead of GetLayoutSize.

In the case of text label,
the height of the layout is used when returning the cached value of GetHeightForWidth.

But, this value is the height of the layout that has been Ellipsis processed.
It's not the height of the entire Text.

So, the intended height cannot be obtained.

This patch simply stores calculated values.

Change-Id: I0494fb476964fb1207d35e3c8e6eb25ece972025
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
13 months agoRevert "Fix GetHeightForWidth for text controller" 35/299335/1
Bowon Ryu [Tue, 26 Sep 2023 06:50:32 +0000 (15:50 +0900)]
Revert "Fix GetHeightForWidth for text controller"

This reverts commit da9f7b93ae00d0aa64a959549ed9da3469a49e46.

Change-Id: I9dbcb715d65c97ff40ba9746caab50ce7231c1af

13 months agoMerge "Fix GetHeightForWidth for text controller" into devel/master
Bowon Ryu [Tue, 26 Sep 2023 06:13:33 +0000 (06:13 +0000)]
Merge "Fix GetHeightForWidth for text controller" into devel/master

13 months agoMake NPatchData always use shared pointer 13/299313/1
Eunki Hong [Tue, 26 Sep 2023 00:48:45 +0000 (09:48 +0900)]
Make NPatchData always use shared pointer

Let we keep NPatchData user always use shared_ptr instead of raw pointer.
In this case, NPatchData itself will be safe enought even if
NPatchData removed from NPatchLoader cache.

Change-Id: I27db855888bc21c7a7282a9e1114945f3f0e758d
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months ago(WebView) Set display area and Change Visual when WebView relayout 07/299107/5
Eunki, Hong [Wed, 20 Sep 2023 02:05:43 +0000 (11:05 +0900)]
(WebView) Set display area and Change Visual when WebView relayout

Previously, we change display area after only at PropertyNotification time.
It will wait until 1 frame rendered.

If we change web view size by event side, the display area applied lately.

This patch make we change update area when OnRelayout, so we can apply
changeness more faster timing.

--

And also, Let we change visual when the size of webview changed.
If so, it can be reduce some flickering effect while change the udpate area.

Change-Id: Ia7d6becc11160d88353f62bbdb43f75764550b67
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoReduce LOC of ImageVisual 09/299309/1
Adeel Kazmi [Mon, 25 Sep 2023 16:18:19 +0000 (17:18 +0100)]
Reduce LOC of ImageVisual

Change-Id: Ib6ace96a0fafb6f14e35bacb29e9eeac50431883

13 months agoFix GetHeightForWidth for text controller 04/299204/3
Bowon Ryu [Thu, 21 Sep 2023 10:06:54 +0000 (19:06 +0900)]
Fix GetHeightForWidth for text controller

In the case of text label,
the height of the layout is used when returning the cached value of GetHeightForWidth.

But, this value is the height of the layout that has been Ellipsis processed.
It's not the height of the entire Text.

So, the intended height cannot be obtained.

This patch simply stores calculated values.

Change-Id: Ia5d06bdac39556776749de3e3078a3a7e230c36c
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
13 months agoMerge "Remove NPatchLoader observer when they request remove" into devel/master
Eunki Hong [Mon, 25 Sep 2023 05:15:17 +0000 (05:15 +0000)]
Merge "Remove NPatchLoader observer when they request remove" into devel/master

13 months agoMerge "ImageVisualShaderFactory refactoring" into devel/master
Seungho BAEK [Mon, 25 Sep 2023 03:12:41 +0000 (03:12 +0000)]
Merge "ImageVisualShaderFactory refactoring" into devel/master

13 months agoRemove NPatchLoader observer when they request remove 69/299269/1
Eunki, Hong [Mon, 25 Sep 2023 01:39:55 +0000 (10:39 +0900)]
Remove NPatchLoader observer when they request remove

Since we make remove NPatchData later, the observer was disconnected lately.
It might make some unusual behavior.

Change-Id: I794f22e21964962428f353ee84a9340687274808
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoDALi Version 2.2.45 48/299248/1 dali_2.2.45
Adeel Kazmi [Fri, 22 Sep 2023 14:12:10 +0000 (15:12 +0100)]
DALi Version 2.2.45

Change-Id: I972f5a6a463788d17b24a105d0b7c725b7ae22af

13 months agoMerge "Export the symbol for Physics::Integraiton::GetPhysicsWorld" into devel/master
David Steele [Thu, 21 Sep 2023 16:48:03 +0000 (16:48 +0000)]
Merge "Export the symbol for Physics::Integraiton::GetPhysicsWorld" into devel/master

13 months agoMerge "Make ImageVisual::Property::PIXEL_AREA animatable" into devel/master
Eunki Hong [Thu, 21 Sep 2023 15:41:13 +0000 (15:41 +0000)]
Merge "Make ImageVisual::Property::PIXEL_AREA animatable" into devel/master

13 months agoExport the symbol for Physics::Integraiton::GetPhysicsWorld 15/299215/1
Richard Huang [Thu, 21 Sep 2023 15:36:23 +0000 (16:36 +0100)]
Export the symbol for Physics::Integraiton::GetPhysicsWorld

Change-Id: Ica8e9689c98aef9ce77c838fa3b778c53ca213e2

13 months agoMake ImageVisual::Property::PIXEL_AREA animatable 20/299120/1
Eunki, Hong [Wed, 20 Sep 2023 06:47:59 +0000 (15:47 +0900)]
Make ImageVisual::Property::PIXEL_AREA animatable

Since PixelArea was not animatable for visual side,
we cannot animate some cases who register image visual hardly.

This patch make we allow to animate PixelArea at ImageVisual,
instead of ImageView directly.

Change-Id: Ib00b771a2db938cf8ece17ffa4566c7b0b9bb800
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoImageVisualShaderFactory refactoring 87/299087/2
seungho baek [Tue, 19 Sep 2023 07:36:33 +0000 (16:36 +0900)]
ImageVisualShaderFactory refactoring

 ImageVisualShaderFactory::GetShader method is too long and complex.
 The method uses same logic for two different purpose in a method
 that makes difficult to understand.
 And the method also has too many braces depth.

 This patch moves some features that to create shaderType and
 to retrive shaderPreFix to ImageVisualShaderFeatureBuilder.
 Now ImageVisualShaderFeatureBuilder manages all responsibility
 to define shader codes following its options.
 And slides some codes for readability and it make possible remove
 unnecessary comments.

Change-Id: I09a725d4e101cb65badffe3a897572971e2c336b
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
13 months agoAllow to send ResourceReady signal unlimited 16/298716/5
Eunki Hong [Tue, 12 Sep 2023 23:57:23 +0000 (08:57 +0900)]
Allow to send ResourceReady signal unlimited

Previously we miss callback when ResourceReady called continusouly.
Let we use IdleCallbackManager system with return value, so we can
re-install Idle callback.

Change-Id: I56d73545ae7d8a122c8bead396affd4e962f7bb8
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
14 months agoPrevent copy calls from repeat events of ctrl + c 73/298973/1
Bowon Ryu [Mon, 18 Sep 2023 03:08:11 +0000 (12:08 +0900)]
Prevent copy calls from repeat events of ctrl + c

now, even if user hold down ctrl + c on text controller,
copy will only be called once.

The patch below was added for this behavior.
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-core/+/298930/
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-adaptor/+/298931/

Change-Id: I521f4ad3baa5270f5fde0e484e27885b9a75e077
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
14 months agoMerge "Update expected value of UtcDaliGetMirroredText" into devel/master
Bowon Ryu [Mon, 18 Sep 2023 01:40:59 +0000 (01:40 +0000)]
Merge "Update expected value of UtcDaliGetMirroredText" into devel/master

14 months agoMerge "Added integration api to physics" into devel/master
Adeel Kazmi [Fri, 15 Sep 2023 13:13:56 +0000 (13:13 +0000)]
Merge "Added integration api to physics" into devel/master

14 months agoDALi Version 2.2.44 44/298944/1 dali_2.2.44
Adam Bialogonski [Fri, 15 Sep 2023 11:24:35 +0000 (12:24 +0100)]
DALi Version 2.2.44

Change-Id: I7eda2c8ee4d88d36949f639785bc311b24d6a133

14 months agoAdded integration api to physics 20/298620/6
David Steele [Mon, 11 Sep 2023 17:37:30 +0000 (18:37 +0100)]
Added integration api to physics

Changed locking mechanism to enable NUI ScopedAccessor

Added 2nd user data to cpBody (for our ref, as c#
ref uses 1st user data)

Change-Id: Idf3ef1a172a03cbdbf587ef8993c787e1fa7c633

14 months agoUpdate expected value of UtcDaliGetMirroredText 60/298860/1
Bowon Ryu [Thu, 14 Sep 2023 09:16:24 +0000 (18:16 +0900)]
Update expected value of UtcDaliGetMirroredText

The text direction determination logic has been changed,
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-adaptor/+/298855/

so the result of GetMirroredText() may different from the previous one,
especially when dealing with mixed LTR + RTL text.
(and particulary when brackets are involved)

Update the TC with the coreect values.

Change-Id: I678211880250035caea4d6142e69fd427268b1ff
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
14 months agoMerge "Change the SENSITVE value of accessibility" into devel/master
Wonsik Jung [Thu, 14 Sep 2023 08:19:30 +0000 (08:19 +0000)]
Merge "Change the SENSITVE value of accessibility" into devel/master

14 months agoMerge "Support FastTrackUploading for YUV images" into devel/master
Eunki Hong [Thu, 14 Sep 2023 08:17:02 +0000 (08:17 +0000)]
Merge "Support FastTrackUploading for YUV images" into devel/master

14 months agoFix Shadow issue 66/298766/4
seungho baek [Wed, 13 Sep 2023 08:02:06 +0000 (17:02 +0900)]
Fix Shadow issue

 - When Model is added after shadow is set, the model cannot used for shadow

Change-Id: Iaec0f3e389068342cef9b2769e060e69832354ee
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
14 months agoSupport FastTrackUploading for YUV images 99/298299/14
Eunki, Hong [Tue, 5 Sep 2023 08:10:11 +0000 (17:10 +0900)]
Support FastTrackUploading for YUV images

Let we support YUV image case without additional image loading
or image operation.

Instead, let we think that FastTrackUploading will use
YUV format always if DALI_LOAD_IMAGE_YUV_PLANES=1.
And then, revert as standard shader if we are not use
YUV case actually.

To support this feature. let we make unified YUV + RGB shader can use
standard rgb image color for special case.
After load completed, we can determine the type of shader.

Change-Id: Ia4ffa288e705af751e722cd1440de2a014ad19b4
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
14 months ago[Scene3D] Cache image load result so models can share it. 88/298188/15
Eunki Hong [Sun, 3 Sep 2023 06:05:44 +0000 (15:05 +0900)]
[Scene3D] Cache image load result so models can share it.

Let we cache the PixelData and Texture so various models can use it.

We cache the model resources, and let we use them same resources.
But if some seperated models using same images, we cannot cache about it.

There are relative usecase occured + Unity support this kind of cache system,
let we also cache images + textures locally.

---

First, we can cache url --> PixelData.
This caching might occured on multi threading system. So we have to lock the mutex
when we try to access this kind of pixeldata access.

Second, we can cache PixelData --> Texture.
This caching should be occured only for main thread.

---

We support Garbage Collect system to avoid full-iterating cached resources.
During GC, we should remove Texture first, and then PixelData.
(Since PixelData can be the key of Texture.)

Currenly, we will call GC only of ModelCache reference count become 0.

Change-Id: I5e89f214593503fa9e8b2290c3859f2674ff7048
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
14 months agoEnsure all thrid-party code is removed from coverage calculations 19/298619/2
Adeel Kazmi [Mon, 11 Sep 2023 16:23:35 +0000 (17:23 +0100)]
Ensure all thrid-party code is removed from coverage calculations

Change-Id: I41e6e105680f38de8369d40145895750a37e6ef4

14 months agoFix coverity issue on chipmunk-physics-debug 07/298607/1
Eunki Hong [Mon, 11 Sep 2023 10:22:26 +0000 (19:22 +0900)]
Fix coverity issue on chipmunk-physics-debug

- Uninitialized value for mDebugOptions
- Unreached code line

Change-Id: Ida0e45195346c6d5d83702f905f29ffce4dde526
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
14 months agoMerge "Register PixelArea property only if required." into devel/master
Eunki Hong [Mon, 11 Sep 2023 03:04:36 +0000 (03:04 +0000)]
Merge "Register PixelArea property only if required." into devel/master

14 months agoMerge "Apply fittingMode lazy when resource is not ready" into devel/master
sunghyun kim [Mon, 11 Sep 2023 00:55:26 +0000 (00:55 +0000)]
Merge "Apply fittingMode lazy when resource is not ready" into devel/master

14 months agoRegister PixelArea property only if required. 95/298495/3
Eunki, Hong [Fri, 8 Sep 2023 00:01:15 +0000 (09:01 +0900)]
Register PixelArea property only if required.

Since we were try to register uPixelArea property for every image-visual,
The Shader try to send PropertResetter very frequencly.

Since we only need to register that property only 1 time +
We can control pixel area by Renderer,
Let we register uPixelArea property only 1 times for creation.

And also, there was some useless uPixelArea usage on text-visual.
Let we just remove it.

Change-Id: Ib784e0088243f2a70f8556ae0dc9fa7c957b5aa2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
14 months agoMerge changes I0729e532,I6b908dda,I8aad01f7 into devel/master
David Steele [Fri, 8 Sep 2023 16:43:23 +0000 (16:43 +0000)]
Merge changes I0729e532,I6b908dda,I8aad01f7 into devel/master

* changes:
  Added debug renderer for Chipmunk
  Changing hit test to pass in optional filter
  Bug fixes for 2d physics

14 months agoDALi Version 2.2.43 32/298532/1 dali_2.2.43
Richard Huang [Fri, 8 Sep 2023 09:46:15 +0000 (10:46 +0100)]
DALi Version 2.2.43

Change-Id: I929b693ee1b4ca6bd00c3355a19053ee2b2edf91

14 months agoAdded debug renderer for Chipmunk 15/298415/3
David Steele [Wed, 6 Sep 2023 15:39:35 +0000 (16:39 +0100)]
Added debug renderer for Chipmunk

Change-Id: I0729e53256aeb0af395bf76aeab32305708d5a95

14 months agoChanging hit test to pass in optional filter 93/298493/1
David Steele [Thu, 7 Sep 2023 13:47:09 +0000 (14:47 +0100)]
Changing hit test to pass in optional filter

Change-Id: I6b908dda86596a70a001d1a2be307ce9c5f1b231

14 months agoBug fixes for 2d physics 92/298492/1
David Steele [Thu, 7 Sep 2023 14:15:46 +0000 (15:15 +0100)]
Bug fixes for 2d physics

Ensure that empty function queue doesn't cause crash
Fix the actor / physics world rotation translation (due to mirroring
the Y coords)

Changed the order of the inclusion files to ensure that a clean build
picks up the version of headers in the dali-physics/third-party folder.

Change-Id: I8aad01f7b9292e2c29642e61966daa33117d1efb
Signed-off-by: David Steele <david.steele@samsung.com>
14 months agoChange the SENSITVE value of accessibility 66/296466/3
Wonsik Jung [Fri, 28 Jul 2023 06:40:58 +0000 (15:40 +0900)]
Change the SENSITVE value of accessibility

Change the SENSITIVE value of accessibility using actor's hittable and touch required.

Change-Id: I57f58f09360149573d1682eca0435852229a5101

14 months agoApply fittingMode lazy when resource is not ready 43/297443/2
sunghyun kim [Fri, 18 Aug 2023 08:14:21 +0000 (17:14 +0900)]
Apply fittingMode lazy when resource is not ready

FittingMode may not work properly if ResourceReady is called later than Relayout.
to prevent this, modify to apply FittingMode late if Resource is not ready

Change-Id: Idb0c572a9aa034cea25f563ffbc256ad8eacacda

14 months agoMerge "Guard NPatchData removal case during signal emit" into devel/master
Eunki Hong [Tue, 5 Sep 2023 08:44:13 +0000 (08:44 +0000)]
Merge "Guard NPatchData removal case during signal emit" into devel/master

14 months agoMerge "Fix gcc-13 build error at dali-physics" into devel/master
David Steele [Mon, 4 Sep 2023 10:53:22 +0000 (10:53 +0000)]
Merge "Fix gcc-13 build error at dali-physics" into devel/master

14 months agoGuard NPatchData removal case during signal emit 67/297967/5
Eunki, Hong [Tue, 29 Aug 2023 06:52:47 +0000 (15:52 +0900)]
Guard NPatchData removal case during signal emit

It was possible that NPatchData removed during NotifyObserver.
For more safety, let we make NPatchData as shared_ptr, instead
of unique_ptr.

And also, let we don't touch observer list container during
NotifyObservers.

And also, let we remove NPatchInfo at post processing.
It will keep the life of NPatchData during NotifyObserver try to
remove the NPatchInfo.

Change-Id: Ieca33a2231df38d23966f96593506d67333cfcd0
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
14 months agoFix svace issues for dali-physics 93/298193/1
Eunki, Hong [Mon, 4 Sep 2023 01:17:24 +0000 (10:17 +0900)]
Fix svace issues for dali-physics

Change-Id: I83874fa56a4373ae6e892dedf6e61da17f0a9ceb
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
14 months agoFix gcc-13 build error at dali-physics 87/298187/1
Eunki Hong [Sun, 3 Sep 2023 04:21:16 +0000 (13:21 +0900)]
Fix gcc-13 build error at dali-physics

Change-Id: I91e7ab81a8d983661c5cbe613e4c0a23466a030b
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
14 months agoMerge changes I776588c1,I7292a2fb into devel/master
Adeel Kazmi [Fri, 1 Sep 2023 14:02:39 +0000 (14:02 +0000)]
Merge changes I776588c1,I7292a2fb into devel/master

* changes:
  Adding chipmunk implementation for physics adaptor
  Adding bullet physics files

14 months agoMake subsurface texture not be enabled in dli 44/298144/4
seungho baek [Fri, 1 Sep 2023 07:52:42 +0000 (16:52 +0900)]
Make subsurface texture not be enabled in dli

 - dli shaders not use subsurface sampler but the texture is added to textureSet

Change-Id: I2aab8f8e91c663cdc49cdb97a6e4a3a54efc014f
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
14 months agoMerge "DALi Version 2.2.42" into devel/master
David Steele [Fri, 1 Sep 2023 11:55:31 +0000 (11:55 +0000)]
Merge "DALi Version 2.2.42" into devel/master

14 months agoDALi Version 2.2.42 70/298170/1 dali_2.2.42
David Steele [Fri, 1 Sep 2023 11:50:20 +0000 (12:50 +0100)]
DALi Version 2.2.42

Change-Id: I8fb2d0684ce7b6ed840382179372ab2346cf3379

14 months agoMerge "(Vector) Flush lottie update informations" into devel/master
Eunki Hong [Fri, 1 Sep 2023 01:31:33 +0000 (01:31 +0000)]
Merge "(Vector) Flush lottie update informations" into devel/master

14 months agoAdding chipmunk implementation for physics adaptor 46/297746/6
David Steele [Tue, 22 Aug 2023 13:13:20 +0000 (14:13 +0100)]
Adding chipmunk implementation for physics adaptor

Splitting out common implementation for PhysicsWorld
and Physicsadaptor to base classes.

Split out test cases into dali-physics2d & dali-physics3d sets

Change-Id: I776588c1d4845cda450f0c95ad455097400d9a17
Signed-off-by: David Steele <david.steele@samsung.com>
14 months agoMerge "Fix typo error (djikstra -> dijkstra)" into devel/master
David Steele [Thu, 31 Aug 2023 14:38:30 +0000 (14:38 +0000)]
Merge "Fix typo error (djikstra -> dijkstra)" into devel/master

14 months agoMerge "Fix crash issue when navi-mesh seperated" into devel/master
David Steele [Thu, 31 Aug 2023 14:38:16 +0000 (14:38 +0000)]
Merge "Fix crash issue when navi-mesh seperated" into devel/master

14 months agoMerge "Optimize dijkstra path finder algorithm" into devel/master
Adeel Kazmi [Thu, 31 Aug 2023 14:30:06 +0000 (14:30 +0000)]
Merge "Optimize dijkstra path finder algorithm" into devel/master

14 months agoMerge "Shadow Mapping" into devel/master
Seungho BAEK [Thu, 31 Aug 2023 04:31:12 +0000 (04:31 +0000)]
Merge "Shadow Mapping" into devel/master

14 months agoFix typo error (djikstra -> dijkstra) 50/298050/1
Eunki Hong [Wed, 30 Aug 2023 18:44:56 +0000 (03:44 +0900)]
Fix typo error (djikstra -> dijkstra)

Fix typo error of algorithm name

Change-Id: I888f543005ea07ff446d04ffd941325e52ed0551
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
14 months agoFix crash issue when navi-mesh seperated 49/298049/1
Eunki Hong [Wed, 30 Aug 2023 18:35:41 +0000 (03:35 +0900)]
Fix crash issue when navi-mesh seperated

It is possible that there is no path between navi-mesh polygons.
If then, we return empty WayPointList. And then, crashed.

To avoid that cases, let we check whether FindPath result empty.

Change-Id: Id506c50022678c442d609d219d8c9baf53b46408
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
14 months agoOptimize dijkstra path finder algorithm 48/298048/2
Eunki Hong [Wed, 30 Aug 2023 17:49:41 +0000 (02:49 +0900)]
Optimize dijkstra path finder algorithm

Let we use dijkstra with O(E log E) method, which is optimized.

Change-Id: Ie3afe3ff1a526e1ec6edb6b3d5817834caaf1120
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
14 months agoShadow Mapping 11/295411/32
seungho baek [Thu, 6 Jul 2023 13:00:35 +0000 (22:00 +0900)]
Shadow Mapping

 - DALi will support shadow with a light.
 - PCF is supported to soften shadow edge

Change-Id: Iacba477230e315a73c95ef435d33a8deeac88a3e
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
14 months agoFix visual transform offset of text label 78/297978/3
Bowon Ryu [Tue, 29 Aug 2023 10:04:22 +0000 (19:04 +0900)]
Fix visual transform offset of text label

Font rendering quality is very degraded
when the visual translation y offset is a decimal value.
To prevent this issue, round the offset.

Change-Id: I9e3630f568d6b97a623e9ed32447b2980beb78a6
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
14 months agoAdding bullet physics files 64/297064/23
David Steele [Wed, 9 Aug 2023 17:21:38 +0000 (18:21 +0100)]
Adding bullet physics files

Created DALi version of bullet-physics-demo from
github.sec.samsung.net/dalihub/dali-physics-demo

Hidden details of ScopedAccessor
Changed how transform works
Updated debug renderer
Added test cases for PhysicsAdaptor
Added test cases for PhysicsActor
Fixed quaternion handling to work with mirrored x/y/z coord system

Change-Id: I7292a2fbf73ef82a8b5e43701489b460ea36b27d

14 months agoExtract condition function to check the animation has initial value or not 94/297894/1
seungho baek [Mon, 28 Aug 2023 06:47:49 +0000 (15:47 +0900)]
Extract condition function to check the animation has initial value or not

 - Currently, gltf2-util.cpp uses long condition with comment to check the animation data contains initial value or not.
 - The comment has been essential to understand the purpose of the condition.
 - This patch extracts condition function to check it and uses proper naming instead of comment.

Change-Id: Ib2808343215b8ac6fe400911f6a50511da6cd8fb
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
14 months ago(Vector) Flush lottie update informations 60/296160/12
Eunki Hong [Thu, 20 Jul 2023 15:49:48 +0000 (00:49 +0900)]
(Vector) Flush lottie update informations

Add flush action that we can ensure the values updated forcely.

Change-Id: I9ebd65b006e314e087148826b0e5be6842d3679b
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
14 months agoDALi Version 2.2.41 52/297852/1 dali_2.2.41
Adeel Kazmi [Fri, 25 Aug 2023 12:41:14 +0000 (13:41 +0100)]
DALi Version 2.2.41

Change-Id: I863897b241b6d668690772755066f7cef5fbe60c

14 months agoTemperary increase max bone as 80 08/297708/1
Eunki, Hong [Wed, 23 Aug 2023 07:03:10 +0000 (16:03 +0900)]
Temperary increase max bone as 80

TODO : This patch is temperal fix.
We need to remove this limitation in future

Change-Id: Ibe358bc37cd5babb6d9b6fba720bd3c7c0fb94f8
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
15 months agoFix randomly failed UTC 78/297478/1
Eunki Hong [Sat, 19 Aug 2023 05:24:50 +0000 (14:24 +0900)]
Fix randomly failed UTC

Since application.SendNotification() might complete the loading
before our hard-coding process, It randomly failed.

To fix it, we remove the possible way to complete async loading complete

Change-Id: I010f3c286638e7a961dff02cb15f55fec79ad538
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
15 months agoMerge "DALi Version 2.2.40" into devel/master
David Steele [Fri, 18 Aug 2023 12:35:31 +0000 (12:35 +0000)]
Merge "DALi Version 2.2.40" into devel/master