platform/core/uifw/dali-core.git
2 months agoFix gcc-14 build error 11/318211/1
Eunki Hong [Wed, 25 Sep 2024 14:32:12 +0000 (23:32 +0900)]
Fix gcc-14 build error

Let we include vector wrapper for custom actor impl

Change-Id: I320147a2fe622168c8a1e289c3470117de278036
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
2 months agoMerge "Add CommandBufferResourceBinding add resource well" into devel/master
David Steele [Wed, 25 Sep 2024 12:16:09 +0000 (12:16 +0000)]
Merge "Add CommandBufferResourceBinding add resource well" into devel/master

2 months agoMerge "Automatic RenderTask Ordering" into devel/master
Seungho BAEK [Wed, 25 Sep 2024 11:09:26 +0000 (11:09 +0000)]
Merge "Automatic RenderTask Ordering" into devel/master

2 months agoAdd CommandBufferResourceBinding add resource well 66/318166/1
Eunki, Hong [Wed, 25 Sep 2024 07:48:47 +0000 (16:48 +0900)]
Add CommandBufferResourceBinding add resource well

Looks typo error

Change-Id: I0776658f3e49bf73046ad2e55b3c3014daad8796
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoAutomatic RenderTask Ordering 00/314200/27
Seungho Baek [Mon, 8 Jul 2024 13:09:54 +0000 (22:09 +0900)]
Automatic RenderTask Ordering

Change-Id: Icb2f3857756169d6bd6b5691112b6b5b9f93b7e6
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
2 months agoAdd SamplingMode type for high quality sampling 69/317969/6
Eunki, Hong [Mon, 23 Sep 2024 07:14:46 +0000 (16:14 +0900)]
Add SamplingMode type for high quality sampling

Let we make new enum for lanczos resize method.

Change-Id: I2f7f0db85c33f6d913318b6be90a69217ae68cbe
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
3 months agoReset string shader data cache at event thread if too much shader used 91/317991/1
Eunki, Hong [Mon, 23 Sep 2024 09:36:43 +0000 (18:36 +0900)]
Reset string shader data cache at event thread if too much shader used

Change-Id: Ie157d613d9318ca378f48d4e34fe75d7230ea4f4
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
3 months agoDALi Version 2.3.42 00/317900/1 dali_2.3.42
Richard Huang [Fri, 20 Sep 2024 09:47:17 +0000 (10:47 +0100)]
DALi Version 2.3.42

Change-Id: I8a64f09b2b1436e7da726464cebe0b938e09d7eb

3 months agoMerge "Allow to animate by difference type if it is scalar value + Convert API for...
Eunki Hong [Sat, 14 Sep 2024 07:07:33 +0000 (07:07 +0000)]
Merge "Allow to animate by difference type if it is scalar value + Convert API for Property::Value" into devel/master

3 months agoAdded resource binding information to command buffers 52/317552/5
Adam Bialogonski [Tue, 10 Sep 2024 08:14:14 +0000 (09:14 +0100)]
Added resource binding information to command buffers

Change-Id: If9320070962ee1145a1f4b1f4d149942221a3544

3 months agoAdding render pass & target to CmdBuffer BeginInfo 42/317642/3
David Steele [Thu, 12 Sep 2024 18:20:59 +0000 (19:20 +0100)]
Adding render pass & target to CmdBuffer BeginInfo

Change-Id: I79315941628b505ece31c4ba7e92070b2cb46c47

3 months agoMerge "DALi Version 2.3.41" into devel/master
David Steele [Fri, 13 Sep 2024 11:02:05 +0000 (11:02 +0000)]
Merge "DALi Version 2.3.41" into devel/master

3 months agoMerge "Make Renderer use MixColor + Deprecate DevelRenderer's Opacity and VisualRende...
Eunki Hong [Fri, 13 Sep 2024 10:12:55 +0000 (10:12 +0000)]
Merge "Make Renderer use MixColor + Deprecate DevelRenderer's Opacity and VisualRenderer MixColor and PreMultiplyAlpha" into devel/master

3 months agoDALi Version 2.3.41 08/317708/1 dali_2.3.41
Adam Bialogonski [Fri, 13 Sep 2024 06:42:38 +0000 (07:42 +0100)]
DALi Version 2.3.41

Change-Id: I71b6b3bdcb9c49312cd61eb501ece91370511d87

3 months agoAllow to animate by difference type if it is scalar value + Convert API for Property... 73/317673/3
Eunki, Hong [Fri, 13 Sep 2024 02:49:25 +0000 (11:49 +0900)]
Allow to animate by difference type if it is scalar value + Convert API for Property::Value

Let we allow to set destinaton value of animation not matched with
animatable property.

For example, until now we don't allow to animate POSITION_X as integer.
But after this patch, we can animate by integer type.

Change-Id: Ie332533ffad53b511c697501c3b04d68848734df
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
3 months agoObserver StopperNode and ViewportGuide node at SG::RenderTask 96/316896/10
Eunki, Hong [Fri, 30 Aug 2024 06:43:23 +0000 (15:43 +0900)]
Observer StopperNode and ViewportGuide node at SG::RenderTask

Let we clear the SceneGraph::RenderTask node information what were they don't owned.

Without observing, we might try to access dead node.

The two node - mViewportGuideNode and mStopperNode was not observered, so
let we observe their lifetime, and remove nullptr if they terminated.

Change-Id: I8c55248c625542650e4b386ba538419b5b231546
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
3 months agoMake Renderer use MixColor + Deprecate DevelRenderer's Opacity and VisualRenderer... 80/316980/5
Eunki, Hong [Mon, 2 Sep 2024 06:38:19 +0000 (15:38 +0900)]
Make Renderer use MixColor + Deprecate DevelRenderer's Opacity and VisualRenderer MixColor and PreMultiplyAlpha

Let we make MixColor as Renderer property.

And also, make VisualRenderer's MixColor use Renderer's MixColor property directly.

And also, make we don't register preMultipliedAlpha uniform for whole visual renderer.

Due to the Visual MixColor was Vector3 and Renderer MixColor is Vector4,
we need to make VisualMixColor non-animatable.

TODO : Need to change toolkit side codes.

Change-Id: Ida7b788be00ef7b14bba7d86d937a4581726339d
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
3 months agoRelease graphics contexts before terminate graphics 31/317631/4
Eunki, Hong [Thu, 12 Sep 2024 10:57:31 +0000 (19:57 +0900)]
Release graphics contexts before terminate graphics

Since some graphics items deleted after graphics controller shutdown called,
some memory leak trace tool check they are leaking points.

More over, for offscreen application cases,
DestroyResource API was not called at terminate cases.

To make insure those are removed well,
let we call ContextDestroyed for each manager.

Change-Id: I24293d1de7b95a56fb384374c667c69bea5e4180
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
3 months agoMerge "Different mouse button types must be handled as separate events." into devel...
joogab yun [Wed, 11 Sep 2024 03:54:43 +0000 (03:54 +0000)]
Merge "Different mouse button types must be handled as separate events." into devel/master

3 months agoDifferent mouse button types must be handled as separate events. 44/317344/4
joogab.yun [Mon, 9 Sep 2024 07:23:01 +0000 (16:23 +0900)]
Different mouse button types must be handled as separate events.

Change-Id: I7081ca145f61dd1240cc9f8f2b662001dae3b393

3 months agoAdd BaseObjectObserver 31/317331/4
Youngsun Suh [Wed, 4 Sep 2024 01:59:32 +0000 (10:59 +0900)]
Add BaseObjectObserver

Change-Id: I414126bece5aeb685835c1efa7c6ab8fba9ee67e

3 months agoMerge "Passing down render target to compile the pipeline" into devel/master
David Steele [Fri, 6 Sep 2024 13:41:54 +0000 (13:41 +0000)]
Merge "Passing down render target to compile the pipeline" into devel/master

3 months agoDALi Version 2.3.40 63/317263/1 dali_2.3.40
David Steele [Fri, 6 Sep 2024 10:00:18 +0000 (11:00 +0100)]
DALi Version 2.3.40

Change-Id: I105101bf3978c4337b77cfbab8c1209dc8f24aed

3 months agoPassing down render target to compile the pipeline 18/317218/1
Adam Bialogonski [Thu, 5 Sep 2024 15:35:32 +0000 (16:35 +0100)]
Passing down render target to compile the pipeline

Change-Id: Ia544d2661ffbef7c6392e550ee8119e9dc993818

3 months agoChanging vulkan package config libs to match 1.3.280 45/317145/1
David Steele [Wed, 4 Sep 2024 12:43:17 +0000 (13:43 +0100)]
Changing vulkan package config libs to match 1.3.280

Change-Id: Ia34fa62e1f21de3aaa5ca87b387230f2dfb1d7ff

3 months agoMerge "Fixed dali_env to work non-interactively" into devel/master
David Steele [Fri, 30 Aug 2024 14:02:32 +0000 (14:02 +0000)]
Merge "Fixed dali_env to work non-interactively" into devel/master

3 months agoFixed dali_env to work non-interactively 42/316942/1
David Steele [Fri, 30 Aug 2024 12:42:53 +0000 (13:42 +0100)]
Fixed dali_env to work non-interactively

Change-Id: I02839104d46578a03775c68f405f8555d03932ec

3 months agoDALi Version 2.3.39 02/316902/1 dali_2.3.39
Adeel Kazmi [Fri, 30 Aug 2024 08:12:51 +0000 (09:12 +0100)]
DALi Version 2.3.39

Change-Id: I654263054fd27e8741452438b0399a5f97a842bf

3 months agoMerge changes I6482dca0,Icee988fc into devel/master
David Steele [Thu, 29 Aug 2024 16:11:59 +0000 (16:11 +0000)]
Merge changes I6482dca0,Icee988fc into devel/master

* changes:
  Add vulkan sdk install options to dali_env
  Fixing divide by zero in ThreadPool

3 months agoMerge "Implement virtual pre-desturctor for RefObject, BaseObject and Object" into...
David Steele [Thu, 29 Aug 2024 10:57:53 +0000 (10:57 +0000)]
Merge "Implement virtual pre-desturctor for RefObject, BaseObject and Object" into devel/master

3 months agoAdd exclude for sam score 22/316822/2
Seungho Baek [Thu, 29 Aug 2024 01:51:22 +0000 (10:51 +0900)]
Add exclude for sam score

Change-Id: Icd22a47efd5b3445903be88e8ecf55aab0c7699f
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
3 months agoImplement virtual pre-desturctor for RefObject, BaseObject and Object 19/316819/6
Eunkiki Hong [Wed, 28 Aug 2024 14:25:27 +0000 (23:25 +0900)]
Implement virtual pre-desturctor for RefObject, BaseObject and Object

Since WeakHandle<~~> become invalidate after BaseObject::Impl destruct,
WeakHandle<~~>.GetBaseHandle() might return some destructing handle.

If some class A : public BaseObject  is destructing (== refcount is 0)

and during ~A() called, someone try to get WeakHandle<A>.GetHandle()

After that API call, class A's refcount become 1, and if A use done,

A's refcount become 0 again, and destructor call again and again and again...

===

To avoid this kind of issue, let we make BaseObject::Impl Notify first

by virtual function "OnDestroy", and then call destructor.

Similary, Object also have it's own observer system. Let also notify them
destroyed before destructor call.

Change-Id: I1bccf25ec2b902b7051a0fe2bebf4aeb1b914c25
Signed-off-by: Eunkiki Hong <eunkiki.hong@samsung.com>
3 months agoAdd vulkan sdk install options to dali_env 43/316743/2
David Steele [Tue, 27 Aug 2024 13:23:55 +0000 (14:23 +0100)]
Add vulkan sdk install options to dali_env

Change-Id: I6482dca0fbd782bb94cd56ae76a1695341320dd1

3 months agoFix hash function error at x64 68/316768/2
Eunki, Hong [Wed, 28 Aug 2024 01:56:20 +0000 (10:56 +0900)]
Fix hash function error at x64

Since RendererKey is not a void* type for __LP64__ case,
we should not shift RendererKey.Value() based on size of Render::Renderer
struct size.

Change-Id: If578d0b5057b93ee69468d8422613471288d9384
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
3 months agoFixing divide by zero in ThreadPool 60/316560/2
David Steele [Thu, 22 Aug 2024 17:40:25 +0000 (18:40 +0100)]
Fixing divide by zero in ThreadPool

Change-Id: Icee988fca4b194ad70243676aa816519a64b51f3

4 months agoMerge "DALi Version 2.3.38" into devel/master
Adeel Kazmi [Fri, 23 Aug 2024 09:46:54 +0000 (09:46 +0000)]
Merge "DALi Version 2.3.38" into devel/master

4 months agoDALi Version 2.3.38 73/316573/1 dali_2.3.38
Richard Huang [Fri, 23 Aug 2024 09:44:57 +0000 (10:44 +0100)]
DALi Version 2.3.38

Change-Id: I224ca546735c6207f41db8d39db2097b100e6848

4 months agoFix RenderUntil not working well if stopper node is under layer + RenderUntil more... 74/316474/4
Eunki, Hong [Thu, 22 Aug 2024 03:51:28 +0000 (12:51 +0900)]
Fix RenderUntil not working well if stopper node is under layer + RenderUntil more stable

For now, RenderUntil consider the layer order at
render-instruction-processor side.

But RenderUntil API only consider root layer cases.

To fix this issue, let we don't check the stopper actor's parenet
is layer or not.

+

Let we make RenderUntil API more stable.

Currently, we only allow given stopper actor is under source actor.
But actually, we don't trace that stopper actor unparent or destroyed
after we call RenderUntil.

Trace that life control is quite heavy. Instead, let we make RenderUntil input
actor added freely, and instead, make the task result will render full scene
if stopper node is not under source node.

Change-Id: I9550c4c77e550d9daa61fe545dc005417a4a3f2a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months ago(dali_env) Add libmagick++-dev install as well 85/316385/1
Adeel Kazmi [Tue, 20 Aug 2024 13:59:40 +0000 (14:59 +0100)]
(dali_env) Add libmagick++-dev install as well

Required for the visual tests

Change-Id: Ibcd3d0a2a03d05f6ac0d7db82787b544e7b117f7

4 months agoMerge "DALi Version 2.3.37" into devel/master
Adeel Kazmi [Fri, 16 Aug 2024 08:35:04 +0000 (08:35 +0000)]
Merge "DALi Version 2.3.37" into devel/master

4 months agoDALi Version 2.3.37 40/316240/1 dali_2.3.37
Adam Bialogonski [Fri, 16 Aug 2024 07:42:33 +0000 (08:42 +0100)]
DALi Version 2.3.37

Change-Id: Iaab72d254336690e55ac5f8ac2a5e69b258714a6

4 months agoMerge "(dali_env) Remove --force-yes and use --allow-change-held-packages" into devel...
Adeel Kazmi [Fri, 16 Aug 2024 06:43:45 +0000 (06:43 +0000)]
Merge "(dali_env) Remove --force-yes and use --allow-change-held-packages" into devel/master

4 months agoMerge "Fix build error for gcc-14" into devel/master
Eunki Hong [Fri, 16 Aug 2024 05:55:05 +0000 (05:55 +0000)]
Merge "Fix build error for gcc-14" into devel/master

4 months agoMerge changes I9c9f8abe,I5ef804f5 into devel/master
Eunki Hong [Fri, 16 Aug 2024 05:19:02 +0000 (05:19 +0000)]
Merge changes I9c9f8abe,I5ef804f5 into devel/master

* changes:
  Change TransformManager dirty flags only if the value is really changed
  Make TransformManager check WorldMatrix dirty, instead local matrix dirty

4 months agoFix build error for gcc-14 39/315639/6
Seungho Baek [Mon, 10 Jun 2024 08:13:40 +0000 (17:13 +0900)]
Fix build error for gcc-14

(Cherry-pick https://review.tizen.org/gerrit/c/platform/core/uifw/dali-core/+/312451 and improve.)

Resolve compile warnings : -Wno-template-id-cdtor, -Wno-dangling-reference

Can't locate XML/Parser.pm in @INC (you may need to install the XML::Parser module) (@INC entries checked: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.38.2 /usr/local/share/perl/5.38.2 /usr/lib/x86_64-linux-gnu/perl5/5.38 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.38 /usr/share/perl/5.38 /usr/local/lib/site_perl) at scripts/output_summary.pl line 6.
BEGIN failed--compilation aborted at scripts/output_summary.pl line 6

Change-Id: Ib00e042a7197d5bcb92b33af8059fc0d5c1b8b92

4 months agoChange TransformManager dirty flags only if the value is really changed 96/315296/10
Eunki Hong [Mon, 29 Jul 2024 15:57:23 +0000 (00:57 +0900)]
Change TransformManager dirty flags only if the value is really changed

Let we check the current value and inputed value, so if they are same, ignore.

It will be useful when we don't want to mark dirty for transform compoent property doesn't changed.

TODO : Could we check them also at Vector3?

Change-Id: I9c9f8abe7615ea53856b20706ea9163456105bc3
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
4 months agoMake TransformManager check WorldMatrix dirty, instead local matrix dirty 18/315518/8
Eunki, Hong [Fri, 2 Aug 2024 03:53:05 +0000 (12:53 +0900)]
Make TransformManager check WorldMatrix dirty, instead local matrix dirty

Since we only need to check parent's world matrix + parent's size
to calculate the world matrix,

Dirtyness of local matrix is not important. Instead, we'd better check
the world matrix changeness.

Change-Id: I5ef804f54300cbad355d7b265e42cd109d2b5d81
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months agoMatch trace begin/end tag for DALI_RENDER_FINISHED if their is no target 64/316064/1
Eunki, Hong [Tue, 13 Aug 2024 05:43:36 +0000 (14:43 +0900)]
Match trace begin/end tag for DALI_RENDER_FINISHED if their is no target

Change-Id: I7f90ce6e082e8e1495b474a3f3524a4c4a0821e4
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months ago(dali_env) Remove --force-yes and use --allow-change-held-packages 38/315638/2
Eunkiki Hong [Mon, 5 Aug 2024 14:16:56 +0000 (23:16 +0900)]
(dali_env) Remove --force-yes and use --allow-change-held-packages

W: --force-yes is deprecated, use one of the options starting with --allow instead.

And I think two option : --allow-downgrades, --allow-change-held-packages is enough

Change-Id: I936f8a0dcd11b9aedb0a2c23d2910119e37c18da
Signed-off-by: Eunkiki Hong <eunkiki.hong@samsung.com>
4 months agoMerge "DALi Version 2.3.36" into devel/master
David Steele [Fri, 9 Aug 2024 11:31:45 +0000 (11:31 +0000)]
Merge "DALi Version 2.3.36" into devel/master

4 months agoDALi Version 2.3.36 22/315922/1 dali_2.3.36
David Steele [Fri, 9 Aug 2024 11:09:21 +0000 (12:09 +0100)]
DALi Version 2.3.36

Change-Id: Ibf1efde8eea3cdfeb8737ef084275722e58d6233

4 months agoThe DEPTH value was being retrieved incorrectly. Fix this 93/315893/1
joogab.yun [Fri, 9 Aug 2024 05:03:49 +0000 (14:03 +0900)]
The DEPTH value was being retrieved incorrectly. Fix this

Change-Id: Ie0c7556bdaaa661cdfbcf5b298166a94048151fa

4 months agoReset memory pool when core terminate 81/315681/1
Eunki, Hong [Tue, 6 Aug 2024 05:41:01 +0000 (14:41 +0900)]
Reset memory pool when core terminate

Since we can create new Core without process terminate, (e.g. offscreen application)
We should ensurely clear the memory usage.

Without this clean-up process, some memory might be remained after
core terminate. For example, some OwnerPointer<Node> are exist at Message during
app terminate, it might not be release surely.

Change-Id: Iaef0b16bcd6631aa8a52e9b52bfa39374be770b6
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months agoFix UTC build error 14/315614/1
Eunki, Hong [Mon, 5 Aug 2024 08:07:11 +0000 (17:07 +0900)]
Fix UTC build error

Change-Id: Ie78675bd4a10301423214d163f4c38fe99599451
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months agoMerge "Get the actor who trigger visiblity changed signal" into devel/master
Eunki Hong [Mon, 5 Aug 2024 06:22:25 +0000 (06:22 +0000)]
Merge "Get the actor who trigger visiblity changed signal" into devel/master

4 months agoMerge "InheritedVisibilityChangedCallback with window Visibility" into devel/master
Seungho BAEK [Mon, 5 Aug 2024 05:13:23 +0000 (05:13 +0000)]
Merge "InheritedVisibilityChangedCallback with window Visibility" into devel/master

4 months agoChange the trace filter name : DALI_TRACE_UPDATE/RENDER_PROCESS 85/315585/1
Eunki, Hong [Mon, 5 Aug 2024 03:21:48 +0000 (12:21 +0900)]
Change the trace filter name : DALI_TRACE_UPDATE/RENDER_PROCESS

Now VD performance tracing system prepare the environment value name.

Let we hide the combined keyword at dali core side.

Change-Id: I17dc2cded6b89a1f593335299a092d3034d9ccdf
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months agoFix compile error at gcc-13 (Do not use operator< with nullptr) 73/315573/2
Eunki Hong [Sat, 3 Aug 2024 12:43:48 +0000 (21:43 +0900)]
Fix compile error at gcc-13 (Do not use operator< with nullptr)

Change-Id: Ic40ab0752eebbc33f13d1cd7c6f0d14ac424d8c6
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
4 months agoMerge "Print more logs when (animation finished case + previous state)" into devel...
Eunki Hong [Sat, 3 Aug 2024 06:58:51 +0000 (06:58 +0000)]
Merge "Print more logs when (animation finished case + previous state)" into devel/master

4 months agoMerge "Allow to compare IntrusivePtr comparision" into devel/master
Adeel Kazmi [Fri, 2 Aug 2024 14:43:14 +0000 (14:43 +0000)]
Merge "Allow to compare IntrusivePtr comparision" into devel/master

4 months agoMerge "DALi Version 2.3.35" into devel/master
Adeel Kazmi [Fri, 2 Aug 2024 08:34:03 +0000 (08:34 +0000)]
Merge "DALi Version 2.3.35" into devel/master

4 months agoPrint more logs when (animation finished case + previous state) 49/315549/2
Eunki, Hong [Fri, 2 Aug 2024 07:09:33 +0000 (16:09 +0900)]
Print more logs when (animation finished case + previous state)

Since we don't print any logs if animation finished naturally,
user might not know whether given rendering loops occured due to animation, or not.

To make ensure the animation state changeness, let we also print log
if animation finished naturally.

Also, print the log before change the animation state. It will be useful
when we trace the animation state changing.

Change-Id: I642057b56b86b2aca27874995ee1ff9adcfae30e
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months agoDALi Version 2.3.35 36/315536/1 dali_2.3.35
Adeel Kazmi [Fri, 2 Aug 2024 06:27:05 +0000 (07:27 +0100)]
DALi Version 2.3.35

Change-Id: I463177231febbb34e2e1ef3d8607ebe3f11fdc6a

4 months agoMerge "Make bake flag don't chage the set dirty flag for VisualRenderer" into devel...
Eunki Hong [Fri, 2 Aug 2024 04:52:58 +0000 (04:52 +0000)]
Merge "Make bake flag don't chage the set dirty flag for VisualRenderer" into devel/master

4 months agoGet the actor who trigger visiblity changed signal 75/315475/3
Eunki, Hong [Thu, 1 Aug 2024 09:25:17 +0000 (18:25 +0900)]
Get the actor who trigger visiblity changed signal

Since we cannot change the parameter of Visibility changed signal,
we need to make another API to get the actor who trigger visibility changed.

Change-Id: I990338910efc72fda941a66b0c9a802b22ff7f49
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months agoAdd GetLastPanGestureState 44/315444/8
joogab.yun [Thu, 1 Aug 2024 03:40:55 +0000 (12:40 +0900)]
Add GetLastPanGestureState

Change-Id: Ica2861de9274023bb6f0c7b8c79c105224badea8

4 months agoAllow to compare IntrusivePtr comparision 60/315460/1
Eunki, Hong [Thu, 1 Aug 2024 07:00:16 +0000 (16:00 +0900)]
Allow to compare IntrusivePtr comparision

Let we allow to compare IntrusivePtr operator<.

After this patch, we can use std::set<IntrusivePtr<T>> or map, without
custom comparisoin functor.

Change-Id: Ifce5ad1fe951837d21766daba4cda1546c263262
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months agoMake bake flag don't chage the set dirty flag for VisualRenderer 47/315447/1
Eunki, Hong [Thu, 1 Aug 2024 03:34:40 +0000 (12:34 +0900)]
Make bake flag don't chage the set dirty flag for VisualRenderer

Since VisualRendererProperty try to call AnimatablePropertyBase::OnBake directly,
it might change the overlaped bake flags.

To avoid this issue, let we call AnimableProperty<T>::OnBake, instead of
supersuper class

Change-Id: Ic57c34834b46e889f438b7b19a8a592e77a7fbcb
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months agoInheritedVisibilityChangedCallback with window Visibility 82/315182/9
Seungho Baek [Fri, 26 Jul 2024 06:51:07 +0000 (15:51 +0900)]
InheritedVisibilityChangedCallback with window Visibility

Change-Id: I0b99cb7052380537ff8f0924af3855445d9041cd
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
4 months agoMake Actor's name don't use ConstString 37/315237/1
Eunki, Hong [Mon, 29 Jul 2024 01:38:40 +0000 (10:38 +0900)]
Make Actor's name don't use ConstString

Since ConstString register into internal string pool
and never be released,
Their might be occured some memory limits if user use randomized name.

Until now, we use raw string comparision at FindChildByName.
So their is no performance issue after this patch.

TODO : How could we resolve same issue for RegisterProperty?

Change-Id: Ia4258d204e986c117f19489a075e3c5afff9fab9
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
4 months agoMerge "DALi Version 2.3.34" into devel/master
Adeel Kazmi [Fri, 26 Jul 2024 10:51:01 +0000 (10:51 +0000)]
Merge "DALi Version 2.3.34" into devel/master

4 months agoDALi Version 2.3.34 12/315212/1 dali_2.3.34
Richard Huang [Fri, 26 Jul 2024 10:46:56 +0000 (11:46 +0100)]
DALi Version 2.3.34

Change-Id: I41cd021c91e5e4ca71e5aa9bc36b9dfe3b974b54

4 months agoMerge "Cache string based shader if required" into devel/master
Eunki Hong [Thu, 25 Jul 2024 23:33:12 +0000 (23:33 +0000)]
Merge "Cache string based shader if required" into devel/master

4 months agoMerge "Trigger Program cleaning by the size of cache container" into devel/master
Eunki Hong [Thu, 25 Jul 2024 23:33:01 +0000 (23:33 +0000)]
Merge "Trigger Program cleaning by the size of cache container" into devel/master

5 months agoMake bake flag dont change set dirty flag 05/315105/1
Eunki, Hong [Thu, 25 Jul 2024 07:26:31 +0000 (16:26 +0900)]
Make bake flag dont change set dirty flag

Since we can bake componet side, it may have problem
if component property baked, and full property is set.

In this case, property call reset to base value only 1 times.
So it will show flickering.

To fix this issue, let we make mDirtyFlag |= BAKED_FLAG instead of
mDirtyFlag = BAKED_FLAG

Change-Id: I7269ac79ab1ec7796f62eaea438ee47dd104e963
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 months agoTrigger Program cleaning by the size of cache container 11/299911/34
Eunki, Hong [Thu, 12 Oct 2023 03:19:07 +0000 (12:19 +0900)]
Trigger Program cleaning by the size of cache container

Current logic try to clean program cache every 10 seconds.
That mean, we need to re-create program.
It might make some unneccessary performance slow-down actions.

To avoid it, let we try to GC only if the number of program cache size
is bigger than threshold, not always.

And also, for every GC time, we delete only 5 programs incrementally per each frame.
So make we less-block the rendering time.

It will be useful for real world app who don't use custom shader.

Change-Id: Ie4e3bfb3486984673caa79750f55d813f256c0bf
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 months agoCache string based shader if required 45/314345/10
Eunki, Hong [Wed, 10 Jul 2024 08:12:26 +0000 (17:12 +0900)]
Cache string based shader if required

Let we cache string based shader's ShaderData.
It will be useful to avoid use multiple ShaderData creation
even if we use same source code.

Change-Id: Ifeaa9c2fa47b402690dab9b650b01ce874002069
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 months agoMerge "Do not calculate transform if there is nothing changed as transform" into... devel/async_text
Eunki Hong [Tue, 23 Jul 2024 07:08:40 +0000 (07:08 +0000)]
Merge "Do not calculate transform if there is nothing changed as transform" into devel/master

5 months agoAdd internal UTC to use ShaderFactory.SaveShader 75/314375/3
Eunki, Hong [Thu, 11 Jul 2024 02:25:21 +0000 (11:25 +0900)]
Add internal UTC to use ShaderFactory.SaveShader

Since there was no UTC relative with it, platform abstraction code become broken.

To make code clean, let we implement something internal UTC about shader cache.

Change-Id: I83f10b5a7231af9f6a68c33336c92bc1f7ea1a68
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 months agoDo not calculate transform if there is nothing changed as transform 46/312646/10
Eunki, Hong [Wed, 12 Jun 2024 12:21:46 +0000 (21:21 +0900)]
Do not calculate transform if there is nothing changed as transform

Since we can know every cases when the local-world matrix changeness,
we can "skip" if there is nothing changed during current frame.

Transform calculation is kind of heavy operation.
So if there is any timing that we can skip it, it could be
increase performance for non-transform cases (a.k.a Lottie, AniamtedImage, Particle)

Change-Id: Ie7b6fdd8099810e599bf696fca267e48c7f83066
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 months agoMerge changes Ia910ced0,Ifa949d9b into devel/master
David Steele [Mon, 22 Jul 2024 10:21:46 +0000 (10:21 +0000)]
Merge changes Ia910ced0,Ifa949d9b into devel/master

* changes:
  Print log if TypeInfo asserted + Do not assert if we call SetProperty for readonly + Add keyword LIKELY / UNLIKELY
  Remove useless macro

5 months agoMerge "DALi Version 2.3.33" into devel/master
Adeel Kazmi [Fri, 19 Jul 2024 09:59:55 +0000 (09:59 +0000)]
Merge "DALi Version 2.3.33" into devel/master

5 months agoDALi Version 2.3.33 82/314782/1 dali_2.3.33
Adam Bialogonski [Fri, 19 Jul 2024 06:54:24 +0000 (07:54 +0100)]
DALi Version 2.3.33

Change-Id: I42061d53504977f1cd2b39eb984ecc9b9625f166

5 months agoFix secondary command buffer Begin flag 70/314770/1
David Steele [Thu, 18 Jul 2024 17:38:48 +0000 (18:38 +0100)]
Fix secondary command buffer Begin flag

Change-Id: I52db5f89da394444bcb248ff97ed0a2b0bf2b6da

5 months agoAdding Begin/End commands to graphics API 74/314574/1
David Steele [Mon, 15 Jul 2024 16:53:48 +0000 (17:53 +0100)]
Adding Begin/End commands to graphics API

Change-Id: Iff0f91133f4a8646f17ccaebf6d7d95e84c8fc17

5 months agoMerge "Cleaned up render pass creation comments" into devel/master
David Steele [Mon, 15 Jul 2024 13:20:00 +0000 (13:20 +0000)]
Merge "Cleaned up render pass creation comments" into devel/master

5 months ago(TestApplication) Fix SVACE issue 61/314561/1
Adeel Kazmi [Mon, 15 Jul 2024 09:47:33 +0000 (10:47 +0100)]
(TestApplication) Fix SVACE issue

Change-Id: I654a48b18ef90fb7c0a4737ac9dc273f4c3e661a

5 months agoMerge changes I03cb1f37,I66ce8530,Iad1ace55,Ib9eef3cf into devel/master
David Steele [Fri, 12 Jul 2024 15:44:43 +0000 (15:44 +0000)]
Merge changes I03cb1f37,I66ce8530,Iad1ace55,Ib9eef3cf into devel/master

* changes:
  Making test-render-surface.h/cpp common across repos
  Updating framebuffer to use renderpass
  Minor test harness updates
  Updating graphics-api for Vulkan

5 months agoCleaned up render pass creation comments 14/314514/1
David Steele [Tue, 9 Jul 2024 17:58:31 +0000 (18:58 +0100)]
Cleaned up render pass creation comments

Change-Id: I92a7a4c4beb236fd2caa9207c7726079374bc480

5 months agoDALi Version 2.3.32 95/314495/1 dali_2.3.32
David Steele [Fri, 12 Jul 2024 10:12:04 +0000 (11:12 +0100)]
DALi Version 2.3.32

Change-Id: If9a370530f2668add53306b58726d6cfb7c5f60a

5 months agoCalculate Has with std::string_view 20/314420/2
Eunki, Hong [Thu, 11 Jul 2024 10:26:56 +0000 (19:26 +0900)]
Calculate Has with std::string_view

Since convert from std::string_view to std::string
might requred memory copy.

To avoid this overhead, let we make a API that calculate
hash as string_view, instead of full string

Change-Id: Ie5455a5001e1c1f423023708a4988d53badff74c
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 months agoPrint log if TypeInfo asserted + Do not assert if we call SetProperty for readonly... 53/314153/2
Eunki, Hong [Mon, 8 Jul 2024 01:52:43 +0000 (10:52 +0900)]
Print log if TypeInfo asserted + Do not assert if we call SetProperty for readonly + Add keyword LIKELY / UNLIKELY

Change-Id: Ia910ced0e022f95a262cd508b02b31917b1e3a83
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 months agoMaking test-render-surface.h/cpp common across repos 52/313552/4
David Steele [Thu, 27 Jun 2024 17:12:20 +0000 (18:12 +0100)]
Making test-render-surface.h/cpp common across repos

Change-Id: I03cb1f37ad9f51bc96b08bb31b6ee9d7d20cd083
Signed-off-by: David Steele <david.steele@samsung.com>
5 months agoUpdating framebuffer to use renderpass 80/313480/5
David Steele [Thu, 20 Jun 2024 17:21:04 +0000 (18:21 +0100)]
Updating framebuffer to use renderpass

Vulkan framebuffer requires a renderpass to be defined before
the framebuffer can be created. Currently in gles backend, this
order is irrelevant, and is not defined in the graphics api.

Added Graphics::RenderPass vector to the
Graphics::FramebufferCreateInfo - this vector may have more than one
compatible render pass in it. The first render pass will be used to
create the framebuffer, but BeginRenderPass may use any of the defined
render passes with that framebuffer (as long as they are compatible in
vulkan, i.e. only differ by layout or load/store ops).

Change-Id: I66ce8530a34bcb1da57461db5644771efe0af48c

5 months agoMinor test harness updates 70/313170/6
David Steele [Wed, 19 Jun 2024 09:07:58 +0000 (10:07 +0100)]
Minor test harness updates

Adding test-render-surface to dali-core

Change-Id: Iad1ace557fd4bab95a5e5cae5cf8281a9f4d2c64

5 months agoUpdating graphics-api for Vulkan 69/313169/5
David Steele [Fri, 14 Jun 2024 08:56:47 +0000 (09:56 +0100)]
Updating graphics-api for Vulkan

Change-Id: Ib9eef3cf2901b4fae094891d9ac82939c5be9d49

5 months agoRemove useless macro 52/314152/2
Eunki, Hong [Mon, 8 Jul 2024 01:30:30 +0000 (10:30 +0900)]
Remove useless macro

Since we use IndexedMap for a long time and it doesn't show any problem, let we remove this macro

Change-Id: Ifa949d9b4a2b40238770d63b170d9dd462ff0f95
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
5 months agoDALi Version 2.3.31 19/314119/1 dali_2.3.31
Adam Bialogonski [Fri, 5 Jul 2024 09:08:01 +0000 (10:08 +0100)]
DALi Version 2.3.31

Change-Id: Ifa20f9c8ef8faea482e55bcfd24cf71f1460af05

5 months agoMerge "Print log if worker thread destruction occured for UI items." into devel/master
Adeel Kazmi [Thu, 4 Jul 2024 15:56:28 +0000 (15:56 +0000)]
Merge "Print log if worker thread destruction occured for UI items." into devel/master

5 months agoPrint log if worker thread destruction occured for UI items. 79/313979/7
Eunki, Hong [Wed, 3 Jul 2024 11:24:22 +0000 (20:24 +0900)]
Print log if worker thread destruction occured for UI items.

Change-Id: I15db9dd5d6763b403b4b5015c95e3491c18443dc
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>