platform/core/uifw/dali-core.git
5 weeks ago[Tizen] Support for recognizing legacy shaders. accepted/tizen_unified_toolchain accepted/tizen_unified_x_asan accepted/tizen/unified/20240619.151925 accepted/tizen/unified/toolchain/20240624.121629 accepted/tizen/unified/x/20240620.061559 accepted/tizen/unified/x/asan/20240625.092800
jykeon [Tue, 18 Jun 2024 07:50:06 +0000 (16:50 +0900)]
[Tizen] Support for recognizing legacy shaders.

This reverts commit 2c7991716b7f84bd8131ff17168f9899878cde70.

5 weeks ago[Tizen] Revert "Support for recognizing legacy shaders.
jykeon [Tue, 18 Jun 2024 06:59:10 +0000 (15:59 +0900)]
[Tizen] Revert "Support for recognizing legacy shaders.

This reverts commit b7d8a62f303186e5737267832b561dd1de20c298.

5 weeks ago[Tizen] Support asan build option
jykeon [Tue, 18 Jun 2024 06:57:30 +0000 (15:57 +0900)]
[Tizen] Support asan build option

This reverts commit 93a2618af3259604293124f72db76781f655c2ca.

5 weeks ago[Tizen] Not execute the remove callback
jykeon [Tue, 18 Jun 2024 06:56:27 +0000 (15:56 +0900)]
[Tizen] Not execute the remove callback

This reverts commit 1072d412d5d313412809e853f221ad0a5a122ebf.

5 weeks agoMerge branch 'devel/master' into tizen
jykeon [Tue, 18 Jun 2024 06:51:58 +0000 (15:51 +0900)]
Merge branch 'devel/master' into tizen

Change-Id: I367ef4ec12d35030aaedbf0550ac97bf44b8e057

5 weeks agoRevert "[Tizen] Not execute the remove callback"
jykeon [Tue, 18 Jun 2024 06:51:38 +0000 (15:51 +0900)]
Revert "[Tizen] Not execute the remove callback"

This reverts commit ddc64ee374268c04f314189d5c45b1feee97a92c.

5 weeks agoRevert "[Tizen] Support asan build option"
jykeon [Tue, 18 Jun 2024 06:51:31 +0000 (15:51 +0900)]
Revert "[Tizen] Support asan build option"

This reverts commit 5410a6ac04c014f1676c62fd2ca05dd7d0d570e0.

5 weeks agoRevert "[Tizen] Revert "Support for recognizing legacy shaders.""
jykeon [Tue, 18 Jun 2024 06:51:27 +0000 (15:51 +0900)]
Revert "[Tizen] Revert "Support for recognizing legacy shaders.""

This reverts commit a6078655a74f289dd2497bec6b0dfc582cb5130e.

5 weeks agoRevert "[Tizen] Fix for GCC14"
jykeon [Tue, 18 Jun 2024 06:51:03 +0000 (15:51 +0900)]
Revert "[Tizen] Fix for GCC14"

This reverts commit 61ff81a0eeb34fdf0d6740271f17d0603858786f.

5 weeks agoRevert "[Tizen] Support for recognizing legacy shaders."
jykeon [Tue, 18 Jun 2024 06:50:57 +0000 (15:50 +0900)]
Revert "[Tizen] Support for recognizing legacy shaders."

This reverts commit 41f3d5f5f98ba14d05623ca27aa90af06cee3356.

5 weeks agoRevert "[Tizen] Fix Animation with EndAction::DISCARD dont reset properties."
jykeon [Tue, 18 Jun 2024 06:50:48 +0000 (15:50 +0900)]
Revert "[Tizen] Fix Animation with EndAction::DISCARD dont reset properties."

This reverts commit 996004bad5ddd1e4454a8066e7286a6b8f25a7a9.

5 weeks agoRevert "[Tizen] Fix partial update issue after VisualRenderer patch applied"
jykeon [Tue, 18 Jun 2024 06:50:24 +0000 (15:50 +0900)]
Revert "[Tizen] Fix partial update issue after VisualRenderer patch applied"

This reverts commit cbb873b5bc7a844d7448f4e9b563e52afa64b4c5.

5 weeks agoMerge "Make Transform Component dirty as 2 frames, not for true/false" into devel...
Eunki Hong [Mon, 17 Jun 2024 05:52:25 +0000 (05:52 +0000)]
Merge "Make Transform Component dirty as 2 frames, not for true/false" into devel/master

6 weeks agoDALi Version 2.3.28 01/312801/1 dali_2.3.28
Adam Bialogonski [Fri, 14 Jun 2024 08:32:14 +0000 (09:32 +0100)]
DALi Version 2.3.28

Change-Id: I6208c856efbdcce2f56dc53d8745062c3c012f94

6 weeks agoRemove old pan gesture history when guesture started. 89/312689/1
Eunki, Hong [Thu, 13 Jun 2024 05:02:29 +0000 (14:02 +0900)]
Remove old pan gesture history when guesture started.

Change-Id: I2cec5ea23b801c5dc6e7ac2e0fd0da0c780c42c2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
6 weeks ago[Tizen] Fix partial update issue after VisualRenderer patch applied 51/312651/1 accepted/tizen/unified/20240614.010828 accepted/tizen/unified/dev/20240620.005934 accepted/tizen/unified/x/20240614.080600
Eunki, Hong [Wed, 12 Jun 2024 13:18:42 +0000 (22:18 +0900)]
[Tizen] Fix partial update issue after VisualRenderer patch applied

Change-Id: I0df716d6a4607ada01119c67f77f127a70566ab2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
6 weeks agoFix partial update issue after VisualRenderer patch applied 47/312647/1
Eunki, Hong [Wed, 12 Jun 2024 13:18:42 +0000 (22:18 +0900)]
Fix partial update issue after VisualRenderer patch applied

Change-Id: I0df716d6a4607ada01119c67f77f127a70566ab2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
6 weeks agoMake Transform Component dirty as 2 frames, not for true/false 15/312615/4
Eunki, Hong [Wed, 12 Jun 2024 09:11:58 +0000 (18:11 +0900)]
Make Transform Component dirty as 2 frames, not for true/false

Since ResetToBaseValue for TransfromProperty doesn't use basic
AnimatableProperty logic, the dirty flag is not match with common sence.

To match it as frame-by-frame, let we make component dirty as 2 bit,
and age-down every frame.

And after we allow to use dirty flag feature for transform,
we can determine whether we need to re-calculate matrix or not.

If that flag be used, we can 'skip' heavy matrix multiply operation.

Change-Id: Icf51e0be37962bee5147c08bb0cd3302bf203f89
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
6 weeks agoMerge "Fix for GCC14" into devel/master
Seungho BAEK [Wed, 12 Jun 2024 04:56:04 +0000 (04:56 +0000)]
Merge "Fix for GCC14" into devel/master

6 weeks agoCall ResetToBaseValue only 1 times per PropertyBase 60/312360/4
Eunki Hong [Fri, 7 Jun 2024 08:26:06 +0000 (17:26 +0900)]
Call ResetToBaseValue only 1 times per PropertyBase

If multiple animation try to change single property, the dirty flag
of PropertyBase would not be works well.

To ensure the dirty flag, let we collect resetter required properties
into single container, and call ResetToBaseValue only one times.

It will ensure that we call the resetter only 1 times per 1 frame.

Change-Id: I1a3792993f2ef681399f72f6f1718731408f2128
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
6 weeks ago[Tizen] Fix Animation with EndAction::DISCARD dont reset properties. 31/312531/1
Eunki, Hong [Tue, 4 Jun 2024 12:38:38 +0000 (21:38 +0900)]
[Tizen] Fix Animation with EndAction::DISCARD dont reset properties.

If Animation::EndAction::DISCARD finisehd normally cases,
The mDirtyFlag was not matched with real world

For example

ResetToBaseValue[0](mDirtyFlag become 1)
Animate and finished (mValue[0] changed.)
(update)
ResetToBaseValue[1](mDirtyFlag become 0)
(update)
(ResetToBaseValue did not called. So mValue[0] is last frame value)
(update)
(ResetToBaseValue did not called. So mValue[1] is BaseValue)

Now, mValue become flickering.

To avoid this problem, let we call ResetToBaseValue at least 2 frames
if finished animation's EndAction is DISCARD.
(Note that we don't consider Stop() call cases, since Stop() will not Animate
Animator, so mValue[0] is BaseValue)

And also, There was some issue that visual renderer property changeness not updated to
the dirty rect infomation.
(Since SG::Renderer don't be mark as updated)

To fix this issue, let we ensure to check the visual renderer property dirty.

And also, for apply Animation::EndAction::DISCARD case,
Let we make visual renderer coefficient use double buffered flags,
and age down every frames.

TODO : UpdateManager need to ResetBaseValue at least 2 frames
if Finished animation is EndAction::DISCARD.

This will need update manager side fix. So just keep this bug and fix as another patch.

Change-Id: Ibf654f723e1f986843cda620bc741b1121ee95d7
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
6 weeks ago[Tizen] Support for recognizing legacy shaders.
Eunki, Hong [Tue, 11 Jun 2024 07:55:55 +0000 (16:55 +0900)]
[Tizen] Support for recognizing legacy shaders.

This reverts commit a6078655a74f289dd2497bec6b0dfc582cb5130e.

Change-Id: I6f67507c22224fb86b087c2cabed664b693bf733

6 weeks ago[Tizen] Fix for GCC14
Hosang Kim [Tue, 11 Jun 2024 07:45:35 +0000 (16:45 +0900)]
[Tizen] Fix for GCC14

This reverts commit 578445a33e3a6e97bbebc666accf69b84bf3bfae.

6 weeks ago[Tizen] Revert "Support for recognizing legacy shaders."
Hosang Kim [Tue, 11 Jun 2024 07:45:20 +0000 (16:45 +0900)]
[Tizen] Revert "Support for recognizing legacy shaders."

This reverts commit 0b57c9a8192c9d31fe28a25bb577ff9ba9761424.

6 weeks ago[Tizen] Support asan build option
Hosang Kim [Tue, 11 Jun 2024 07:43:23 +0000 (16:43 +0900)]
[Tizen] Support asan build option

This reverts commit 1aaeea4580ef4cdde0fa755cc5ca4b6b7a2eaa19.

6 weeks ago[Tizen] Not execute the remove callback
Hosang Kim [Tue, 11 Jun 2024 07:43:07 +0000 (16:43 +0900)]
[Tizen] Not execute the remove callback

This reverts commit e17af4d1ca59c0822b4a6dbe63a7f5200a69b74c.

6 weeks agoMerge branch 'devel/master' into tizen
Hosang Kim [Tue, 11 Jun 2024 06:47:44 +0000 (15:47 +0900)]
Merge branch 'devel/master' into tizen

6 weeks agoRevert "[Tizen] Not execute the remove callback"
Hosang Kim [Tue, 11 Jun 2024 06:47:41 +0000 (15:47 +0900)]
Revert "[Tizen] Not execute the remove callback"

This reverts commit befd495189e7037e9dad52053333db39596a6006.

6 weeks agoRevert "[Tizen] Support asan build option"
Hosang Kim [Tue, 11 Jun 2024 06:47:33 +0000 (15:47 +0900)]
Revert "[Tizen] Support asan build option"

This reverts commit 5eb75d25e2620ff9efbb8ed5af3d7a45da0f0fd5.

6 weeks agoRevert "[Tizen] Add initialization of StopperNode"
Hosang Kim [Tue, 11 Jun 2024 06:47:23 +0000 (15:47 +0900)]
Revert "[Tizen] Add initialization of StopperNode"

This reverts commit 1df1b6906169f5d72b78142c976170362827b3b3.

6 weeks agoRevert "[Tizen] Revert "Support for recognizing legacy shaders.""
Hosang Kim [Tue, 11 Jun 2024 06:47:07 +0000 (15:47 +0900)]
Revert "[Tizen] Revert "Support for recognizing legacy shaders.""

This reverts commit 9441e0d2ff14f0c89b91340304166a73f6087465.

6 weeks agoRevert "[Tizen] Fix for GCC14"
Hosang Kim [Tue, 11 Jun 2024 06:46:59 +0000 (15:46 +0900)]
Revert "[Tizen] Fix for GCC14"

This reverts commit 12c0494f08b4b53807ec1a7e3b7ffc85ecb33600.

6 weeks agoFix for GCC14 62/312462/2
Seungho Baek [Mon, 10 Jun 2024 09:06:51 +0000 (18:06 +0900)]
Fix for GCC14

Change-Id: I3a0528f8c6752e2f042a5cf6bfa11b66d875b22a
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
6 weeks ago[Tizen] Fix for GCC14 56/312456/1 accepted/tizen/unified/20240611.123654 accepted/tizen/unified/toolchain/20240610.173311 accepted/tizen/unified/x/20240610.223842
Seungho Baek [Mon, 10 Jun 2024 09:06:51 +0000 (18:06 +0900)]
[Tizen] Fix for GCC14

Change-Id: I3a0528f8c6752e2f042a5cf6bfa11b66d875b22a
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
6 weeks agoFix Animation with EndAction::DISCARD dont reset properties. 43/312143/7
Eunki, Hong [Tue, 4 Jun 2024 12:38:38 +0000 (21:38 +0900)]
Fix Animation with EndAction::DISCARD dont reset properties.

If Animation::EndAction::DISCARD finisehd normally cases,
The mDirtyFlag was not matched with real world

For example

ResetToBaseValue[0](mDirtyFlag become 1)
Animate and finished (mValue[0] changed.)
(update)
ResetToBaseValue[1](mDirtyFlag become 0)
(update)
(ResetToBaseValue did not called. So mValue[0] is last frame value)
(update)
(ResetToBaseValue did not called. So mValue[1] is BaseValue)

Now, mValue become flickering.

To avoid this problem, let we call ResetToBaseValue at least 2 frames
if finished animation's EndAction is DISCARD.
(Note that we don't consider Stop() call cases, since Stop() will not Animate
Animator, so mValue[0] is BaseValue)

And also, There was some issue that visual renderer property changeness not updated to
the dirty rect infomation.
(Since SG::Renderer don't be mark as updated)

To fix this issue, let we ensure to check the visual renderer property dirty.

And also, for apply Animation::EndAction::DISCARD case,
Let we make visual renderer coefficient use double buffered flags,
and age down every frames.

TODO : UpdateManager need to ResetBaseValue at least 2 frames
if Finished animation is EndAction::DISCARD.

This will need update manager side fix. So just keep this bug and fix as another patch.

Change-Id: Ibf654f723e1f986843cda620bc741b1121ee95d7
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
6 weeks agoMake InternalState for animation. So ensure Stop() Play() make the playstate is Playing 79/312079/4
Eunki, Hong [Tue, 4 Jun 2024 02:26:51 +0000 (11:26 +0900)]
Make InternalState for animation. So ensure Stop() Play() make the playstate is Playing

Since there is no way to determine that Animation::HasFinished() function called
due to we call Stop() API, or Animation finished normally.

To seperate the state, let we make new internal state
: STOPPING, PLAYING_DURING_STOPPING, PAUSED_DURING_STOPPING

STOPPING will be changed as STOPPED after Animation::HasFinished() function called.

And also, make CLEARED state so we can easly control Clear() function call.

Change-Id: I2acccfaaa034dd1edc956e4a23b0726b5d1b65e7
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
7 weeks agoDALi Version 2.3.27 79/312379/1 dali_2.3.27
Adeel Kazmi [Fri, 7 Jun 2024 17:25:58 +0000 (18:25 +0100)]
DALi Version 2.3.27

Change-Id: Icdbaecd822027f41547003ee98b716227d07306d

7 weeks agoEnsure cleared animation not emit finished signal during finished signal emit 21/312021/1
Eunki, Hong [Mon, 3 Jun 2024 01:51:16 +0000 (10:51 +0900)]
Ensure cleared animation not emit finished signal during finished signal emit

Since we collect all finished animations and emit after,
It is possible that finisehd signal emitted what we should not
(e.g. Animation::Clear() called during another animation's finished signal)

To avoid it, let we ensure to check whether given animation is ignored or not.

Change-Id: I681c2c8e0f1624e0846409eb862862e5392ab7ec
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
7 weeks agoMerge "Ignore AnimationFinishedCallback when we call Animation::Clear() hard + Resolv...
Eunki Hong [Mon, 3 Jun 2024 01:35:17 +0000 (01:35 +0000)]
Merge "Ignore AnimationFinishedCallback when we call Animation::Clear() hard + Resolve bug when we call Play multiple times" into devel/master

8 weeks agoDALi Version 2.3.26 86/311986/1 dali_2.3.26
Adeel Kazmi [Fri, 31 May 2024 10:45:04 +0000 (11:45 +0100)]
DALi Version 2.3.26

Change-Id: I8aa7325ed7b1a0ea7980c47e6c9f062db0c3060b

8 weeks agoIgnore AnimationFinishedCallback when we call Animation::Clear() hard + Resolve bug... 25/311925/3
Eunki, Hong [Thu, 30 May 2024 11:18:50 +0000 (20:18 +0900)]
Ignore AnimationFinishedCallback when we call Animation::Clear() hard + Resolve bug when we call Play multiple times

There was several bugs at AnimationPlayList.

1. Core::ProcessCoreEvents sequence is like this :
     SceneEvent -> NotificationManager -> Relayout -> Flush.
   If we call Animation::Clear() at SceneEvent timing, Notfication will send animation finished signal
   what we must not send.

   To avoid this system, let we store the cleared animations at AnimationPlayList.

   Since AnimationFinished callback required at least 1 frame times after flush,
   we can ignore whole notify events before Flush done.

2. Scene mPlayList keep the reference of Animation whenever we call Play, there
   were several problems. For example, If we call Play() 2 times and Clear(),
   that Dali::Animation never be removed.

Change-Id: Ie9d5298311b9e5318fecad21b1124c896fcf3a8e
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
8 weeks agoRemove render once trace log 91/311891/1
Eunki, Hong [Thu, 30 May 2024 04:18:09 +0000 (13:18 +0900)]
Remove render once trace log

Since it print too much logs, let we remove it

Change-Id: I8987d8fe6b184938780f268f0349702456dd0433
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
8 weeks agoMerge "Add FittingMode for visual fittingMode" into devel/master
sunghyun kim [Wed, 29 May 2024 03:59:11 +0000 (03:59 +0000)]
Merge "Add FittingMode for visual fittingMode" into devel/master

8 weeks agoMerge "Apply RenderUntil() on sorted RenderList" into devel/master
Jeongmin Lee [Tue, 28 May 2024 14:32:29 +0000 (14:32 +0000)]
Merge "Apply RenderUntil() on sorted RenderList" into devel/master

8 weeks agoApply RenderUntil() on sorted RenderList 66/311366/14
jmm [Fri, 19 Apr 2024 11:55:52 +0000 (20:55 +0900)]
Apply RenderUntil() on sorted RenderList

Change-Id: I64a3b567984494d1f284095d68e44b7e318a04d5

8 weeks agoImplement ProcessorOnce 95/311795/2
Eunki, Hong [Tue, 28 May 2024 04:06:18 +0000 (13:06 +0900)]
Implement ProcessorOnce

Since unregister processor during Process will give overhead,
we'd better make another container to process only once time
during ProcessCoreEvent.

Change-Id: I0b38490ccdbd7da4f7ec1acf80253a1aee8c42ad
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
8 weeks agoOptimize Add/Remove SG::RenderTask from SG::RenderTaskList 04/308204/3
Eunki Hong [Tue, 19 Mar 2024 14:28:22 +0000 (23:28 +0900)]
Optimize Add/Remove SG::RenderTask from SG::RenderTaskList

Let we make render task list use OrderedSet instead of vector container.

Vector container is slow if we call RemoveRenderTask.

TODO : Optimize event side render task list too.
But since it is quite complex, we'd better optimize that points
in another patch

Change-Id: Icd6f2e7a24964eb05c92fa9a5ce0e306814445ee
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
2 months agoDALi Version 2.3.25 18/311718/1 dali_2.3.25
Richard Huang [Fri, 24 May 2024 11:32:58 +0000 (12:32 +0100)]
DALi Version 2.3.25

Change-Id: Ib32a2c7cb1d61bff3955047cb03be7142d14693f

2 months agoControl core policy as one flag 71/311671/1
Eunki, Hong [Thu, 23 May 2024 08:27:59 +0000 (17:27 +0900)]
Control core policy as one flag

Let we collect core creation status, instead of parameter increasement.

It will be useful when we add more features of Core.

Change-Id: I746bdb714eac5dcbd792a1a33a93abd2b96fe4cb
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoPerformance trace for some bottleneck of update/render manager 48/311648/3
Eunki, Hong [Thu, 23 May 2024 05:13:06 +0000 (14:13 +0900)]
Performance trace for some bottleneck of update/render manager

Let we check trace the top 5 area of update : update itself / animation /
frame update callback / update renderer / transform
and top 2 area of render : render instruction process / flush

TODO : Since the name of environment need to be sync with peformance
trace tool, we'd better change it after the system prepared.

Change-Id: I4a9e38b6b957508138737ee225c0cfa9ad94a8f9
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoMerge changes Ib3f51bd8,Ibfbeca64 into devel/master
Eunki Hong [Thu, 23 May 2024 06:20:51 +0000 (06:20 +0000)]
Merge changes Ib3f51bd8,Ibfbeca64 into devel/master

* changes:
  Pint log if animation play / stop / pause / clear / destroy
  Print top5 longest time spend AnimationFinished & FrameUpdate callbacks

2 months agoPint log if animation play / stop / pause / clear / destroy 46/311646/1
Eunki, Hong [Thu, 23 May 2024 04:53:40 +0000 (13:53 +0900)]
Pint log if animation play / stop / pause / clear / destroy

Let we know the animation's state by id, if user want to know.

Change-Id: Ib3f51bd8035ae6958f37f2340b1dbbe10cfaf029
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoPrint top5 longest time spend AnimationFinished & FrameUpdate callbacks 43/311643/1
Eunki, Hong [Tue, 20 Feb 2024 04:55:34 +0000 (13:55 +0900)]
Print top5 longest time spend AnimationFinished & FrameUpdate callbacks

Very rarely, we got some report from performance team that
"DALI_NOTIFICATION_NOTIFY_COMPLETED" and "DALI_FRAME_CALLBACK_UPDATE" is bottleneck.

To escape the false accusation, let we collect the App side callback
execute time and print it.

This time checker already merged at tizen_8.0 branch.

Change-Id: Ibfbeca6440f1b9c46ebb2f71200139de611a2b4a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoEven when multi-touching, the captured actor is used without a hittest every time. 87/311487/5
joogab.yun [Wed, 22 May 2024 05:07:38 +0000 (14:07 +0900)]
Even when multi-touching, the captured actor is used without a hittest every time.

Change-Id: Ib934b4b5626747a9ed7036d7489f82c94e7b4b16

2 months agoMerge "Remove an unneccessary argument at Process()" into devel/master
Jeongmin Lee [Tue, 21 May 2024 04:49:53 +0000 (04:49 +0000)]
Merge "Remove an unneccessary argument at Process()" into devel/master

2 months agoRemove an unneccessary argument at Process() 70/311370/1
jmm [Mon, 20 May 2024 07:05:36 +0000 (16:05 +0900)]
Remove an unneccessary argument at Process()

Change-Id: I62c8ab7fe11b28c67fa3fe5e277142d969af8698

2 months agoAdd FittingMode for visual fittingMode 29/311429/1
sunghyun kim [Mon, 20 May 2024 06:15:05 +0000 (15:15 +0900)]
Add FittingMode for visual fittingMode

Add new type for visual fittingMode

Change-Id: I17cb51564117a1c0426052dac547d0beb944e1c2

2 months ago[Tizen] Revert "Support for recognizing legacy shaders." 64/311364/1 accepted/tizen/unified/20240520.131902 accepted/tizen/unified/x/20240521.022232
Eunki, Hong [Mon, 20 May 2024 05:31:59 +0000 (14:31 +0900)]
[Tizen] Revert "Support for recognizing legacy shaders."

This reverts commit 45d64aa2c47f7c9a0a8a9a411ddf2924f7404e85.

Change-Id: I5a712a32733f010e31538886534b019872089fa3

2 months ago[Tizen] Add initialization of StopperNode
Eunki, Hong [Mon, 20 May 2024 05:14:52 +0000 (14:14 +0900)]
[Tizen] Add initialization of StopperNode

This reverts commit a69a590ff85a34d4926c1561b8848751796e4b98.

Change-Id: I2af83a4f140c88db493088503b3bb56876e6ecf1

2 months ago[Tizen] Support asan build option
Eunki, Hong [Mon, 20 May 2024 05:14:18 +0000 (14:14 +0900)]
[Tizen] Support asan build option

This reverts commit eb2a251d85c5af62e42e5a326a9ecf43a9cefe79.

Change-Id: I390c0bb63edd12c2c4a19a1923345ea010d65412

2 months ago[Tizen] Not execute the remove callback
Eunki, Hong [Mon, 20 May 2024 05:13:59 +0000 (14:13 +0900)]
[Tizen] Not execute the remove callback

This reverts commit b1166d00bd44d06cfe38f1595cadde741d254ba8.

Change-Id: Ib945c874c0878c148b9678aefb938acab4fb3e54

2 months agoMerge branch 'devel/master' into tizen
Eunki, Hong [Mon, 20 May 2024 05:13:50 +0000 (14:13 +0900)]
Merge branch 'devel/master' into tizen

Change-Id: I985a9d8a6047962b641428f15fa8e5a17dace34b

2 months agoRevert "[Tizen] Not execute the remove callback"
Eunki, Hong [Mon, 20 May 2024 05:13:42 +0000 (14:13 +0900)]
Revert "[Tizen] Not execute the remove callback"

This reverts commit 85a1851a73b4faf2c84fb3ba4915dbfbd9815897.

2 months agoRevert "[Tizen] Support asan build option"
Eunki, Hong [Mon, 20 May 2024 05:13:38 +0000 (14:13 +0900)]
Revert "[Tizen] Support asan build option"

This reverts commit 9433ec3b3bd3f094da85916c3334ed9af1034f31.

2 months agoRevert "[Tizen] Add initialization of StopperNode"
Eunki, Hong [Mon, 20 May 2024 05:13:36 +0000 (14:13 +0900)]
Revert "[Tizen] Add initialization of StopperNode"

This reverts commit e752fbcd0de4345412de1be9d31e478330d3dd3b.

2 months agoDALi Version 2.3.24 02/311302/1 dali_2.3.24
David Steele [Fri, 17 May 2024 11:10:57 +0000 (12:10 +0100)]
DALi Version 2.3.24

Change-Id: Ifbf8d83b68753dea68479978185e75da8fb81b49

2 months agoMerge "(Partial Update) Refactorize PartialRenderingData check logic" into devel...
Eunki Hong [Tue, 14 May 2024 05:38:24 +0000 (05:38 +0000)]
Merge "(Partial Update) Refactorize PartialRenderingData check logic" into devel/master

2 months ago[Tizen] Add initialization of StopperNode 85/311085/1 accepted/tizen/unified/20240516.163525 accepted/tizen/unified/x/20240517.024413
Seungho Baek [Tue, 14 May 2024 02:34:31 +0000 (11:34 +0900)]
[Tizen] Add initialization of StopperNode

Change-Id: I69579b014173f849f9b12c2cab5064af7dd946c5
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
2 months agoMerge "Add compile time option to memory management for low spec devices (Dali::Vecto...
David Steele [Mon, 13 May 2024 16:45:22 +0000 (16:45 +0000)]
Merge "Add compile time option to memory management for low spec devices (Dali::Vector, OrderedSet and memory pool)" into devel/master

2 months agoMerge "Use some observer list use OrderedSet instead of Dali::Vector" into devel...
David Steele [Mon, 13 May 2024 16:10:36 +0000 (16:10 +0000)]
Merge "Use some observer list use OrderedSet instead of Dali::Vector" into devel/master

2 months agoMerge "Assert to add / remove observer during notifying" into devel/master
David Steele [Mon, 13 May 2024 16:07:58 +0000 (16:07 +0000)]
Merge "Assert to add / remove observer during notifying" into devel/master

2 months ago(Partial Update) Refactorize PartialRenderingData check logic 00/310900/5
Eunki, Hong [Thu, 9 May 2024 07:51:46 +0000 (16:51 +0900)]
(Partial Update) Refactorize PartialRenderingData check logic

Since we check node's partial update data only 1 times and then update directly
when we add RenderItem.

Unfortunatly, VisualRenderer has there own update area calculation logic
(like offset and size) and Node can add multiple renderer,
The partial update data said that it is not updated for the 'second' Renderer.

So it was possible that second renderer's update area could not be applied
when we check dirty rects.

===

To fix this issue, we reset the partial update data flags for all nodes every begin of
update. And keep + calculate the partial data only 1 times.

If we check the updateness at this frame, keep this infomation and reuse it.
It will avoid useless Hash calculation.

Change-Id: Ib01712b56131b5813c8629c013f60223ed850577
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months ago[Tizen] Support asan build option
Seungho Baek [Mon, 13 May 2024 05:18:04 +0000 (14:18 +0900)]
[Tizen] Support asan build option

This reverts commit d3f289ae49859a537175c4a0d66afbdbfed1fbdd.

Change-Id: Ic3cf17368c007263b81d70167746dcc7f4bcd599

2 months ago[Tizen] Not execute the remove callback
Seungho Baek [Mon, 13 May 2024 05:17:47 +0000 (14:17 +0900)]
[Tizen] Not execute the remove callback

This reverts commit a169ed61dffd1d20bcc2b866397ec111c9fc832d.

Change-Id: I3be1a1e93aef82b372ad0eea7870af05e9e8add2

2 months agoMerge branch 'devel/master' into tizen
Seungho Baek [Mon, 13 May 2024 05:17:40 +0000 (14:17 +0900)]
Merge branch 'devel/master' into tizen

Change-Id: Ibc16c442b1cbab6e7765e9e45f1f5686d82e268c

2 months agoRevert "[Tizen] Not execute the remove callback"
Seungho Baek [Mon, 13 May 2024 05:17:30 +0000 (14:17 +0900)]
Revert "[Tizen] Not execute the remove callback"

This reverts commit e7b5fd34fc5eaa75c6d05a08cb9ea7f333622aba.

2 months agoRevert "[Tizen] Support asan build option"
Seungho Baek [Mon, 13 May 2024 05:17:27 +0000 (14:17 +0900)]
Revert "[Tizen] Support asan build option"

This reverts commit aeba901745cad05623bbd1e877c722672c89505d.

2 months agoRevert "[Tizen] Print logs if dali skip rendering"
Seungho Baek [Mon, 13 May 2024 05:17:25 +0000 (14:17 +0900)]
Revert "[Tizen] Print logs if dali skip rendering"

This reverts commit 5e044cc85ee638a3fd4092f675a25470e071f9d2.

2 months agoDALi Version 2.3.23 69/310969/1 dali_2.3.23
Adeel Kazmi [Fri, 10 May 2024 10:01:56 +0000 (11:01 +0100)]
DALi Version 2.3.23

Change-Id: Ie50bf0ceb4c85aafd71a46b2497e30e419e99d33

2 months agoAdd compile time option to memory management for low spec devices (Dali::Vector,... 69/308569/20
Eunki Hong [Wed, 27 Mar 2024 12:20:24 +0000 (21:20 +0900)]
Add compile time option to memory management for low spec devices (Dali::Vector, OrderedSet and memory pool)

Let we give some option to reduce memory capacity for low spec devices.

If app create a lots of Actors and release all of them,
the memory might not be reduced, since we don't release capacity of continous array.

Most of memory bottleneck occured at Transform::Data and Node memory pool, and
Graphics::CommandBuffer.

CommandBuffer pool control at dali-adaptor. So let we control what dali-core
can reduce capacities first.

Note : 64bit OS will always use memory pool feature even if we give compile option
, due to KeyType is uint32_t.

USAGE :

 * gbs build -A armv7l --include-all --define "%enable_low_spec_memory_management 1"

 * cmake -DCMAKE_INSTALL_PREFIX=$DESKTOP_PREFIX -DENABLE_LOW_SPEC_MEMORY_MANAGEMENT=ON

Change-Id: Ifeb2e81a5e56fd31b7a61e55dc311f1205b8dfa8
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
2 months agoUse some observer list use OrderedSet instead of Dali::Vector 72/309872/5
Eunki, Hong [Wed, 17 Apr 2024 12:40:40 +0000 (21:40 +0900)]
Use some observer list use OrderedSet instead of Dali::Vector

Let we use Integration::OrderedSet instead of Dali::Vector.

Integration::OrderedSet has good point if we try to remove the items.

For BaseObject::Observer case, it will be called only 1 times per
each object's lifetime. So we have low priority of iteration overhead.

Change-Id: I227e8ecb2021448d892fcaeae78b814d52e09739
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoAssert to add / remove observer during notifying 26/310026/7
Eunki, Hong [Fri, 19 Apr 2024 09:25:16 +0000 (18:25 +0900)]
Assert to add / remove observer during notifying

Let we assert the cases when observer list try to be changed during notifying.

But, allow to remove observer during notifying, only for Object cases.

Until now, we just change the observer list directly, so if notifying, then
memory corruption occured.

To avoid this case, follow as ProcessorInterface did, copy the observer lists
and check whether it is valid or not, only if somebody touch original list.

Note : For BaseObject::Impl case, it is not opened
and it didn't send notify when scene on/off.
The only observer for BaseObject::Impl is WeakHandle. and OnDestroy() didnt'
send callback that timing.

Note2 : PropertyOwner case, it is also only for update-render thread for DALi.
We can control that non of callback change the observers for this thing.

So let we assume BaseObject::Impl::RemoveObserver and
PropertyOwner::RemoveObserver will not be called
during desturct object.

TODO : Should we also control Object::RemoveObserver case?
TODO : Should we remove observer copy?

Change-Id: Ia373243bdaae83613b1b91680a77b86409977028
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoMerge "Fix several hit issue for offscreen rendering" into devel/master
Seungho BAEK [Tue, 7 May 2024 02:48:19 +0000 (02:48 +0000)]
Merge "Fix several hit issue for offscreen rendering" into devel/master

2 months agoSupport for recognizing legacy shaders. 79/310179/10
Adam Bialogonski [Fri, 3 May 2024 13:57:38 +0000 (14:57 +0100)]
Support for recognizing legacy shaders.

Legacy shaders should be bypassed through the shader processing
pipeline as they are.

Change-Id: I04b2d15c5e95edaaf78ddff3e5c3ca99096fcc2e

2 months agoMerge "DALi Version 2.3.22" into devel/master
Adeel Kazmi [Fri, 3 May 2024 09:07:47 +0000 (09:07 +0000)]
Merge "DALi Version 2.3.22" into devel/master

2 months agoDALi Version 2.3.22 41/310641/1 dali_2.3.22
Adam Bialogonski [Fri, 3 May 2024 08:26:37 +0000 (09:26 +0100)]
DALi Version 2.3.22

Change-Id: I2cf0620aa085c2c9de12bc47519570164f6d2e19

2 months agoFix several hit issue for offscreen rendering 58/310258/6
Seungho Baek [Wed, 24 Apr 2024 12:21:39 +0000 (21:21 +0900)]
Fix several hit issue for offscreen rendering

 - Previous implementation
   - MappingActor is not hittable by default, but it was used to check
     whether it is hitted from OnScreen RenderTask or not in HitTestRenderTaskList.
   - There is nothing to check the layer including MappingActor is consuming hit.

 - Current implementation
   - For the OnScreen hit result, check whether there is a mappingActor of OffScreen
     hit results that can be hit in front of the OnScreen hit result.
     If it is, returns the OffScreen hit results.
   - If the OnScreen hit result is layer and the layer consumes hit(the layer must
     not be hittable), returns the OffScreen hit results.
   - If there is no hit in OnScreen but there are hit results from OffScreen
     RenderTask, returns the top OffScreen hit results.

Change-Id: I2788ed90dbe0145b4c263c371353b201c65c2a80
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
2 months agoPrint logs if dali skip rendering 83/310583/3
Eunki, Hong [Thu, 2 May 2024 06:58:19 +0000 (15:58 +0900)]
Print logs if dali skip rendering

Change-Id: I9ddca01a172b742c60b4d01c3d997306b0710d5f
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoDo not allow to add duplicated renderer into actor 06/310606/1
Eunki, Hong [Thu, 2 May 2024 13:19:52 +0000 (22:19 +0900)]
Do not allow to add duplicated renderer into actor

Internal::Actor allow to add same renderer, but SceneGraph::Node doesn't allow.

If we do something like this, the logic might be breakdown.

actor.AddRenderer(renderer);
actor.AddRenderer(renderer);
actor.RemoveRenderer(renderer);

///< actor will have renderer, but actor's node doesn't have renderer.

To match with node's logic, let we don't allow to push-back the duplicated renderer.
Instead, just check the duplication and return the index.

Change-Id: I689896171b3df5d140089c3b99f44e1d3f0f8722
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
2 months agoAdd RenderTask::RenderUntil() 44/310044/10
jmm [Fri, 19 Apr 2024 11:52:19 +0000 (20:52 +0900)]
Add RenderTask::RenderUntil()

Change-Id: I264e29303deedaf0f8539137b26e7d0c3e8454ce

3 months agoAdd Inherited Visibility Changed signal 84/310084/12
Seungho Baek [Mon, 22 Apr 2024 07:43:13 +0000 (16:43 +0900)]
Add Inherited Visibility Changed signal

Change-Id: I1d592e6a5c9f17b77b8ee9f8828586f424985699
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
3 months agoMerge "DALi Version 2.3.21" into devel/master
David Steele [Fri, 26 Apr 2024 09:48:47 +0000 (09:48 +0000)]
Merge "DALi Version 2.3.21" into devel/master

3 months agoDALi Version 2.3.21 91/310391/1 dali_2.3.21
Richard Huang [Fri, 26 Apr 2024 09:42:44 +0000 (10:42 +0100)]
DALi Version 2.3.21

Change-Id: I9ebe010c86446d8cae0e243144673306e0235ac9

3 months agoMerge "Add log in EmitSingleTap" into devel/master
joogab yun [Fri, 26 Apr 2024 09:02:07 +0000 (09:02 +0000)]
Merge "Add log in EmitSingleTap" into devel/master

3 months agoMerge "Allows updating MinimumDistance and MinimumPanEvents of pan gestures." into...
joogab yun [Fri, 26 Apr 2024 09:02:01 +0000 (09:02 +0000)]
Merge "Allows updating MinimumDistance and MinimumPanEvents of pan gestures." into devel/master

3 months agoAdd VIRTUAL_REMOCON and VIRTUAL_MOUSE device types 16/310216/2
joogab.yun [Wed, 24 Apr 2024 06:50:45 +0000 (15:50 +0900)]
Add VIRTUAL_REMOCON and VIRTUAL_MOUSE device types

Change-Id: I67f3ae35d364253b22a1d218df6c8c1bda848e97

3 months agoAdd log in EmitSingleTap 46/310146/2
joogab.yun [Tue, 23 Apr 2024 06:18:59 +0000 (15:18 +0900)]
Add log in EmitSingleTap

Change-Id: Ic5c4831daa355195c272c298d478b7d1519a20b4

3 months agoAllows updating MinimumDistance and MinimumPanEvents of pan gestures. 39/310139/3
joogab.yun [Tue, 23 Apr 2024 05:45:38 +0000 (14:45 +0900)]
Allows updating MinimumDistance and MinimumPanEvents of pan gestures.

Change-Id: Ibe985928ae9e68f70fc4faf573284ce1ee956fb5

3 months agoMerge "Minor reduce IntrusivePtr<Actor>'s meanless Reference and Unreference" into...
Eunki Hong [Sat, 20 Apr 2024 07:40:47 +0000 (07:40 +0000)]
Merge "Minor reduce IntrusivePtr<Actor>'s meanless Reference and Unreference" into devel/master

3 months agoMerge "Move OrderedSet as integration-api, so dali-toolkit can use it." into devel...
Eunki Hong [Fri, 19 Apr 2024 12:43:16 +0000 (12:43 +0000)]
Merge "Move OrderedSet as integration-api, so dali-toolkit can use it." into devel/master