platform/core/uifw/dali-core.git
7 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>
7 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

7 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

7 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

7 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

7 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>
7 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>
7 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>
7 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

8 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>
8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 months agoDALi Version 2.3.20 27/310027/1 dali_2.3.20
David Steele [Fri, 19 Apr 2024 09:47:06 +0000 (10:47 +0100)]
DALi Version 2.3.20

Change-Id: Ib80a171ab80256a0a5cdb5e18484c79fdbbe138e

8 months agoMinor reduce IntrusivePtr<Actor>'s meanless Reference and Unreference 13/310013/2
Eunki, Hong [Fri, 19 Apr 2024 06:03:11 +0000 (15:03 +0900)]
Minor reduce IntrusivePtr<Actor>'s meanless Reference and Unreference

During Actor.Remove() API call, we try to increase whole child actor's
reference and unreference again while iteration.

It might give "minor" overhead. So let we don't do it.

Change-Id: If572a06ce72eae2dd2ce2bf4b1b4db29f69038a0
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
8 months agoMove OrderedSet as integration-api, so dali-toolkit can use it. 44/309944/1
Eunki, Hong [Thu, 18 Apr 2024 07:00:56 +0000 (16:00 +0900)]
Move OrderedSet as integration-api, so dali-toolkit can use it.

Let we move the OrderedSet class as integration-api so dali-toolkit can use it.

Change-Id: I2dbbff14db048d52c5a02bc967b379defcd2c03e
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
8 months agoDo not call RemoveObserver when we don't add it for PropertyResetter 98/309898/2
Eunki, Hong [Thu, 18 Apr 2024 03:01:01 +0000 (12:01 +0900)]
Do not call RemoveObserver when we don't add it for PropertyResetter

It is possible that PropertyResetter destructed before Initialize()
when app terminate case.

If then, it is possible to got some crash when we try to access to
'destroyed' property owner, and call RemoveObserver();

To avoid this case, let we make ensure that we call initalized so
it is possible to call RemoveObserver().

Change-Id: I24b74f1d963090d867e1d047fe739132f9465ee3
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
8 months agoMerge "Seperate KeepRendering reason more detail" into devel/master
David Steele [Mon, 15 Apr 2024 10:49:51 +0000 (10:49 +0000)]
Merge "Seperate KeepRendering reason more detail" into devel/master

8 months agoDALi Version 2.3.19 89/309589/1 dali_2.3.19
Richard Huang [Fri, 12 Apr 2024 09:52:03 +0000 (10:52 +0100)]
DALi Version 2.3.19

Change-Id: I569d4803c7ca83bc4f955b35545665f3ec04c4e6

8 months agoSeperate KeepRendering reason more detail 39/309539/2
Eunki, Hong [Fri, 12 Apr 2024 04:48:37 +0000 (13:48 +0900)]
Seperate KeepRendering reason more detail

Let we said more detail reason why we need to keep rendering.
KeepRendering called vs FrameCallbackInterface return true vs Renderer behaviour is Continuously.

Change-Id: I00310a718f4667f401512e2f370bb2930318f5b2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
8 months agoDALi Version 2.3.18 74/309174/1 dali_2.3.18
David Steele [Fri, 5 Apr 2024 09:57:31 +0000 (10:57 +0100)]
DALi Version 2.3.18

Change-Id: I27f0ea2fcd707fc371d79aeeb8c61532c90ae1cf

8 months ago1. Fixes a bug where events do not occur when longPressGestures overlap. This is... 22/309022/5
joogab.yun [Thu, 4 Apr 2024 01:54:25 +0000 (10:54 +0900)]
1. Fixes a bug where events do not occur when longPressGestures overlap. This is when using gestures with FeedTouch.
2. Remove unnecessary conditional statements.

Change-Id: If8a4e876cb0b6031e744b6f0b8a3beef6d28517d

8 months agoAdd SetTime in TouchEvent 97/308797/2
joogab.yun [Mon, 1 Apr 2024 08:03:16 +0000 (17:03 +0900)]
Add SetTime in TouchEvent

Change-Id: Iad92d4c0e3e07fded7f1fdbb44e59d967502f2c9

8 months agoMerge "Add SetTapMaximumMotionAllowedDistance" into devel/master
joogab yun [Fri, 29 Mar 2024 00:04:29 +0000 (00:04 +0000)]
Merge "Add SetTapMaximumMotionAllowedDistance" into devel/master

8 months agoDALi Version 2.3.17 43/308643/1 dali_2.3.17
Adeel Kazmi [Thu, 28 Mar 2024 09:29:26 +0000 (09:29 +0000)]
DALi Version 2.3.17

Change-Id: Icdfb9fe6152f2eae50bb2ab5a57570e111c30270

8 months agoAdd SetTapMaximumMotionAllowedDistance 01/308601/2
joogab.yun [Thu, 28 Mar 2024 05:03:47 +0000 (14:03 +0900)]
Add SetTapMaximumMotionAllowedDistance

Change-Id: I5c8dd3304774f73d2bda7ca5566406b05039e233

9 months agoactorCoordinates were missing from TapGesture when FeedTouch was used 74/308474/2
joogab.yun [Tue, 26 Mar 2024 07:39:41 +0000 (16:39 +0900)]
actorCoordinates were missing from TapGesture when FeedTouch was used

Change-Id: Icfc319322f02920c76923cdaffce3b69354bcf92

9 months agoUpdated README.md to include recursive pre-requisite 40/308440/1
Adeel Kazmi [Mon, 25 Mar 2024 15:18:36 +0000 (15:18 +0000)]
Updated README.md to include recursive pre-requisite

Change-Id: Ic40db23478b503520e228bd5734bf4ca406d6cbb

9 months ago(HitTest) Overlay actors should not be clipped if CLIP_TO_BOUNDING_BOX is selected 59/307959/3
Adeel Kazmi [Thu, 14 Mar 2024 16:01:31 +0000 (16:01 +0000)]
(HitTest) Overlay actors should not be clipped if CLIP_TO_BOUNDING_BOX is selected

Change-Id: Id76d47a773766e19f969d73bb912e5aa6518380e

9 months agoDALi Version 2.3.16 71/308371/1 dali_2.3.16
Adam Bialogonski [Fri, 22 Mar 2024 10:31:53 +0000 (10:31 +0000)]
DALi Version 2.3.16

Change-Id: I964b2baeaf0a5dd83ac6f00c624c5e22e73a7684

9 months agoMerge "Clean initialization and shutdown of UniformBufferManager" into devel/master
David Steele [Thu, 21 Mar 2024 17:21:32 +0000 (17:21 +0000)]
Merge "Clean initialization and shutdown of UniformBufferManager" into devel/master

9 months agoClean initialization and shutdown of UniformBufferManager 75/308275/2
David Steele [Wed, 20 Mar 2024 17:44:54 +0000 (17:44 +0000)]
Clean initialization and shutdown of UniformBufferManager

Ensure all unique ptrs are null initialized
Clean down UBO buffers in UpdateRender thread ContextDestroyed,
rather than waiting to clean down in event thread.

Change-Id: I95a14be51e91230612d1a08808f8b151691328c3
Signed-off-by: David Steele <david.steele@samsung.com>
9 months agoMerge "Fix build issues for windows platform" into devel/master
Adeel Kazmi [Thu, 21 Mar 2024 09:43:17 +0000 (09:43 +0000)]
Merge "Fix build issues for windows platform" into devel/master

9 months agoAllow to set renderpass tag even RenderTask removed from RenderTaskList 00/308200/1
Eunki Hong [Tue, 19 Mar 2024 13:35:41 +0000 (22:35 +0900)]
Allow to set renderpass tag even RenderTask removed from RenderTaskList

There was potential of crash if we set RenderPassTag after RenderTask removed.

Change-Id: Iab01b01b4d4c59ce0328fc5f4b55f40a26f82435
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
9 months agoSVACE Fix: Initialise all members in SceneGraph::Animation 88/308188/1
Adeel Kazmi [Tue, 19 Mar 2024 08:11:02 +0000 (08:11 +0000)]
SVACE Fix: Initialise all members in SceneGraph::Animation

Change-Id: I96c3d9e6606afd0dcab84053620fcadec64c685d

9 months agoMerge "Append Stopped animation notify list at Update Animation time" into devel...
Eunki Hong [Mon, 18 Mar 2024 08:15:54 +0000 (08:15 +0000)]
Merge "Append Stopped animation notify list at Update Animation time" into devel/master

9 months agoGet the id of animation and render task 07/305707/3
Eunki Hong [Tue, 6 Feb 2024 15:35:48 +0000 (00:35 +0900)]
Get the id of animation and render task

Let we support to get the id of Animation and RenderTask, follow by NotifyInterface notify id.

Change-Id: I56b6a0d27ceae4024fb52255062ebd00b87332eb
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
9 months agoAppend Stopped animation notify list at Update Animation time 45/307245/6
Eunki, Hong [Wed, 6 Mar 2024 09:01:41 +0000 (18:01 +0900)]
Append Stopped animation notify list at Update Animation time

Let we insert animation notification list at Animate() time, instead of
immediate.

This will make insure we will not notify signal for destroyed, cleared animation.
And it will increase performance minor.

Change-Id: I5371be63c36787874e9ae850e14e5796c5f819b1
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
9 months agoMerge "Unregister all processors if we need" into devel/master
Eunki Hong [Fri, 15 Mar 2024 23:26:41 +0000 (23:26 +0000)]
Merge "Unregister all processors if we need" into devel/master

9 months agoDALi Version 2.3.15 75/308075/1 dali_2.3.15
Adeel Kazmi [Fri, 15 Mar 2024 19:24:06 +0000 (19:24 +0000)]
DALi Version 2.3.15

Change-Id: I5d758ab48c230b0b4a4c1893991628c7ad180a6a

9 months agoUnregister all processors if we need 91/307691/2
Eunki, Hong [Tue, 12 Mar 2024 08:19:14 +0000 (17:19 +0900)]
Unregister all processors if we need

Let we ensure that all processor are unregistered after call
Core::UnregisterProcessors() API.

It will remove both Processor, and PostProcessor.

Change-Id: Ie70f287d8e0ec33579a5128ce2268a66aa4de277
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
9 months agoMerge "Add NoIntercept KeyEvent modifier" into devel/master
Seoyeon Kim [Thu, 14 Mar 2024 04:59:36 +0000 (04:59 +0000)]
Merge "Add NoIntercept KeyEvent modifier" into devel/master

9 months agoRemove useless flag at SceneGraph::Renderer.mDirtyFlag 90/301290/4
Eunki Hong [Mon, 13 Nov 2023 11:33:33 +0000 (20:33 +0900)]
Remove useless flag at SceneGraph::Renderer.mDirtyFlag

We can use PropertyOwner::Updated() instead of mDirtyFlag.

Let we make use PropertyOwner system, instead of Renderer's own member value.

Change-Id: Ibf18f8dc8e1b8ebaf140034fe9132d1b45ac69d2
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
9 months agoDALi Version 2.3.14 52/307452/1 dali_2.3.14
Adam Bialogonski [Fri, 8 Mar 2024 10:49:30 +0000 (10:49 +0000)]
DALi Version 2.3.14

Change-Id: If6cd46a0c4579fdacc804665c4375fc0019e5bcd

9 months agoFix typo error 10/307110/1
Eunki, Hong [Tue, 5 Mar 2024 03:51:04 +0000 (12:51 +0900)]
Fix typo error

Change-Id: I2b95863582ac00000d50b2491e4085bb09d7b5c0
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
9 months agoDo not recreate SG::Animation when we call Clear + Redefine Clear behavior 57/306957/4
Eunki, Hong [Thu, 29 Feb 2024 08:16:01 +0000 (17:16 +0900)]
Do not recreate SG::Animation when we call Clear + Redefine Clear behavior

Let we make Clear don't destroy & re-create the SG::Animation.

And also, we don't need to cache current loop count at event side.
Let we ask it to scene graph side, Same as other values are doing now.

Change-Id: I4b5353e7fb9ab1898ff4d22a8db78ccb3a19c460
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
9 months agoFix svace : Assert when malloc matrix failed 11/307011/2
Eunki, Hong [Mon, 4 Mar 2024 01:49:47 +0000 (10:49 +0900)]
Fix svace : Assert when malloc matrix failed

It is possible to fail malloc memory. Let we notify this case.

Change-Id: Ice13e4f5a845f28d947fb9f0edff002e1b4b1c89
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
9 months agoFix svace : assert when we fail to register animatable properties 06/307006/1
Eunki, Hong [Sun, 3 Mar 2024 23:57:12 +0000 (08:57 +0900)]
Fix svace : assert when we fail to register animatable properties

Change-Id: I8eccee3b241e0fbff509eab4c03a75466d33259f
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
9 months agoDALi Version 2.3.13 81/306981/1 dali_2.3.13
Richard Huang [Fri, 1 Mar 2024 11:42:03 +0000 (11:42 +0000)]
DALi Version 2.3.13

Change-Id: Ic5d63355961a026b33214e70ab0f229f7916fadd

9 months agoAdd NoIntercept KeyEvent modifier 28/298928/6
Artur Świgoń [Thu, 14 Sep 2023 13:34:58 +0000 (15:34 +0200)]
Add NoIntercept KeyEvent modifier

This modifier prevents the event from being intercepted. This, in turn, allows
the Accessibility module to intercept all events and then feed them back if not
consumed by the Screen Reader, without entering an infinite interception loop.

Change-Id: I667d5be40b1180c992852e2af025eb3b916742e8

9 months agoAdd updated area function to update-proxy 41/306041/7
Wonsik Jung [Thu, 15 Feb 2024 12:23:05 +0000 (21:23 +0900)]
Add updated area function to update-proxy

Add updated area function to update-proxy for partial rendering.
It is to improve the performance of update area hint.

Change-Id: I29960bd17e488147a5f382fe591346768ea686b2

10 months agoDALi Version 2.3.12 34/306634/1 dali_2.3.12
David Steele [Fri, 23 Feb 2024 13:05:32 +0000 (13:05 +0000)]
DALi Version 2.3.12

Change-Id: Id01839aa0cf90116286e2d23dbe091794fa6f1f9

10 months agoMerge "Do not re-create SG::Animation when we call Clear to empty animation + Clear...
Eunki Hong [Thu, 22 Feb 2024 05:31:32 +0000 (05:31 +0000)]
Merge "Do not re-create SG::Animation when we call Clear to empty animation + Clear reset some values" into devel/master

10 months agoMerge "Fix coverity issue : auto cause copy" into devel/master
Eunki Hong [Thu, 22 Feb 2024 04:18:47 +0000 (04:18 +0000)]
Merge "Fix coverity issue : auto cause copy" into devel/master

10 months agoMerge "Change the DIRECTION_HORIZONTAL value." into devel/master
joogab yun [Thu, 22 Feb 2024 01:45:12 +0000 (01:45 +0000)]
Merge "Change the DIRECTION_HORIZONTAL value." into devel/master

10 months agoSafety guard for BaseObject during SetProperty 50/306450/1
Eunki, Hong [Wed, 21 Feb 2024 12:43:32 +0000 (21:43 +0900)]
Safety guard for BaseObject during SetProperty

It is possible to delete self during SetProperty.
To avoid this case, let we keep the handle during
SetProperty / OnSetProperty / PropertySetSignal emit.

TODO : Is SetProperty is the only case to be break down?

Change-Id: I7cb8249958914105a2cb8e8e3a44545f23948516
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
10 months agoChange the DIRECTION_HORIZONTAL value. 86/306386/1
joogab.yun [Wed, 21 Feb 2024 04:22:19 +0000 (13:22 +0900)]
Change the DIRECTION_HORIZONTAL value.

There is no difference in actual operation,
but the values ​​of DIRECTION_LEFT and DIRECTION_HORIZONTAL are matched just as DIRECTION_UP and DIRECTION_VERTICAL are the same.

Change-Id: I2c39ab7c48cb57e66ac5992a1e4134be7bed100b

10 months agoFix coverity issue : auto cause copy 17/306317/1
Eunki, Hong [Tue, 20 Feb 2024 06:14:06 +0000 (15:14 +0900)]
Fix coverity issue : auto cause copy

Make some auto as const auto& if we can

Change-Id: Icb8f1cb3e4c0c1559f03b049c630655a2885f0cb
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
10 months agoAdded ExecutionMode to RenderCallback. 86/306186/5
Adam Bialogonski [Fri, 16 Feb 2024 13:49:50 +0000 (13:49 +0000)]
Added ExecutionMode to RenderCallback.

ExecutionMode is a hint that tells graphics backend whether it should isolate native graphics API calls from main DALi rendering pipeline (ie. by creating individual GL context for the RenderCallback) or should inject calls directly into the DALi main rendering pipeline which will alter API state.

ExecutionMode::UNSAFE - injects calls directly, unsafe
ExecutionMode::ISOLATED - creates isolated context

Change-Id: Iac679a87ee47b95c623182d669d26664fdda7cc9

10 months agoMerge "When a hover event enters a new actor, events are delivered in the order of...
joogab yun [Mon, 19 Feb 2024 06:10:25 +0000 (06:10 +0000)]
Merge "When a hover event enters a new actor, events are delivered in the order of start -> leave, but are modified to be delivered in the order of leave -> started." into devel/master

10 months agoDo not re-create SG::Animation when we call Clear to empty animation + Clear reset... 38/305938/8
Eunki Hong [Wed, 14 Feb 2024 02:51:16 +0000 (11:51 +0900)]
Do not re-create SG::Animation when we call Clear to empty animation + Clear reset some values

Since we always destroy & create scene obeject whenever we call Clear(),
It will be make some useless memory increasement when user call
Clear() infinitely.

To avoid this cases, let we re-create that object only if we call Play() before
or at least 1 animator exist.

And also, make Clear() API reset some sensitive values, like CurrentLoop and State.

Change-Id: I7f79b5e8e2bf822f01f094e4023e90e5f0922faa
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
10 months agoMerge "DALi Version 2.3.11" into devel/master
David Steele [Fri, 16 Feb 2024 11:13:02 +0000 (11:13 +0000)]
Merge "DALi Version 2.3.11" into devel/master

10 months agoDALi Version 2.3.11 61/306161/1 dali_2.3.11
Richard Huang [Fri, 16 Feb 2024 11:02:03 +0000 (11:02 +0000)]
DALi Version 2.3.11

Change-Id: I6cf2537b57fa1e81ba245372f9222615caff1fce

10 months agoMerge "Support to get shader language version for shader static API" into devel/master
Eunki Hong [Fri, 16 Feb 2024 07:17:22 +0000 (07:17 +0000)]
Merge "Support to get shader language version for shader static API" into devel/master

10 months agoMerge "Cache traveler only if the node was child of root node" into devel/master
Eunki Hong [Thu, 15 Feb 2024 23:41:47 +0000 (23:41 +0000)]
Merge "Cache traveler only if the node was child of root node" into devel/master

10 months agoMerge "Added wait/client wait methods to sync abstraction" into devel/master
David Steele [Thu, 15 Feb 2024 16:48:23 +0000 (16:48 +0000)]
Merge "Added wait/client wait methods to sync abstraction" into devel/master

10 months agoMerge "Change Layer's ReuseRenderers check only if we need" into devel/master
David Steele [Thu, 15 Feb 2024 16:47:46 +0000 (16:47 +0000)]
Merge "Change Layer's ReuseRenderers check only if we need" into devel/master

10 months agoWhen a hover event enters a new actor, events are delivered in the order of start... 35/306035/1
joogab.yun [Thu, 15 Feb 2024 09:42:39 +0000 (18:42 +0900)]
When a hover event enters a new actor, events are delivered in the order of start -> leave, but are modified to be delivered in the order of leave -> started.

Change-Id: Ib917930b4e48b3ded41f10cebce62af41046ddce

10 months agoCache traveler only if the node was child of root node 36/305936/2
Eunki Hong [Wed, 14 Feb 2024 02:29:48 +0000 (11:29 +0900)]
Cache traveler only if the node was child of root node

To avoid cache node infinitly, let we cache only if the node was child of root.
If then, we don't worry about memory increasement.

Change-Id: I8a97a84f6dc6721ca185241f76df5e968f02161a
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
10 months agoAdded wait/client wait methods to sync abstraction 84/305884/3
David Steele [Mon, 12 Feb 2024 18:42:56 +0000 (18:42 +0000)]
Added wait/client wait methods to sync abstraction

Note, sync abstraction isn't used by dali-core, but still
has a test implementation, so not going to move it to
dali-adaptor in this patchset.

Change-Id: Iea2b9cb74bcbaffbdf1a181de796010aa371ad03
Signed-off-by: David Steele <david.steele@samsung.com>
10 months agoSupport to get shader language version for shader static API 37/305637/4
Eunki, Hong [Mon, 5 Feb 2024 14:47:04 +0000 (23:47 +0900)]
Support to get shader language version for shader static API

Let we support to get shader language version

Change-Id: Ic9a1c2223633acb965f945d04179d20a9d7b89b7
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
10 months agoMerge "Add shader class name so we can debug easly." into devel/master
Eunki Hong [Wed, 14 Feb 2024 06:37:23 +0000 (06:37 +0000)]
Merge "Add shader class name so we can debug easly." into devel/master

10 months agoChange Layer's ReuseRenderers check only if we need 04/305704/2
Eunki Hong [Tue, 6 Feb 2024 14:37:11 +0000 (23:37 +0900)]
Change Layer's ReuseRenderers check only if we need

Until now, we check ReuseRenderers value even though we make it as false.
It may required iterate O(RenderItem) times. So we can reduce useless check.

Change-Id: I83364e5dd7816e1b09c1ac01e30c45ad20d1769a
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
10 months agoDALi Version 2.3.10 42/305842/1 dali_2.3.10
Adeel Kazmi [Fri, 9 Feb 2024 10:11:30 +0000 (10:11 +0000)]
DALi Version 2.3.10

Change-Id: I60227547556b391ef337ea6a2688c11e2663c311

10 months agoDo not travel scene tree what we don't need to 71/305771/1
Eunki, Hong [Wed, 7 Feb 2024 12:14:35 +0000 (21:14 +0900)]
Do not travel scene tree what we don't need to

During Renderables adding cases, there was some hidden tree treversal exist
when the view visibility changed (false --> true).

This mUpdated = true; will be used when we check DamagedRects.

Since we dont need to propargate this informations to all decents,
let we propargate this visibility changed information only for this
recursive function, and forget.

Change-Id: I36e6e045a72d7bdfb1b0ea2d5b4784cc05e6173c
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
10 months agoAdd shader class name so we can debug easly. 88/305488/8
Eunki, Hong [Fri, 2 Feb 2024 08:01:53 +0000 (17:01 +0900)]
Add shader class name so we can debug easly.

Let we allow to apply / get the name of shader.
It will be useful when we want to control default shader + debug it.

Change-Id: Ic69201401191449bc78dafa750e6d097e5f72cde
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
10 months agoMerge "Optimize render task completed notify signal" into devel/master
Eunki Hong [Wed, 7 Feb 2024 03:52:31 +0000 (03:52 +0000)]
Merge "Optimize render task completed notify signal" into devel/master

10 months agoMerge "Touch and Hover event propagrated by geometry way.(5)" into devel/master
joogab yun [Wed, 7 Feb 2024 01:28:12 +0000 (01:28 +0000)]
Merge "Touch and Hover event propagrated by geometry way.(5)" into devel/master

10 months agoMerge "Remove inclusion of gl-abstraction.h" into devel/master
Adeel Kazmi [Tue, 6 Feb 2024 18:53:02 +0000 (18:53 +0000)]
Merge "Remove inclusion of gl-abstraction.h" into devel/master

10 months agoOptimize render task completed notify signal 08/305708/1
Eunki Hong [Tue, 6 Feb 2024 15:59:05 +0000 (00:59 +0900)]
Optimize render task completed notify signal

Let we follow up RenderTask also optimized like Animation.

The relationship between RenderTask <-> RenderTaskList is euqal with
Animation <-> AnimationPlayList. So we can use same logic.

Change-Id: I61072374252394e01fe542d8b02941c5b4e58476
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
10 months agoMerge "Fix INTEGER_OVERFLOW coverity issues" into devel/master
Eunki Hong [Tue, 6 Feb 2024 05:17:42 +0000 (05:17 +0000)]
Merge "Fix INTEGER_OVERFLOW coverity issues" into devel/master

10 months agoMerge "Add OrderIndex to RenderTask to control rendering order between RenderTask...
Seungho BAEK [Tue, 6 Feb 2024 05:17:19 +0000 (05:17 +0000)]
Merge "Add OrderIndex to RenderTask to control rendering order between RenderTask" into devel/master

10 months agoTouch and Hover event propagrated by geometry way.(5) 98/304098/19
joogab.yun [Wed, 10 Jan 2024 04:51:24 +0000 (13:51 +0900)]
Touch and Hover event propagrated by geometry way.(5)

1. If there is a consumed actor, the intercept is sent only up to the moment before the consumed actor.
2. To propagate the gesture, check whether it has been detected and the NeedGesturePropagation flag.

Change-Id: Icfbec13c000092ae8526e0a269cd180fd7431a9e

10 months agoRemove inclusion of gl-abstraction.h 42/305642/1
David Steele [Mon, 5 Feb 2024 16:55:47 +0000 (16:55 +0000)]
Remove inclusion of gl-abstraction.h

Remove all #includes.

Would like to move this abstraction to dali-adaptor, but many tests use the test-gl-abstraction
layer to check that e.g. uniforms have been written. Instead, they should be modified to use the
test graphics layer, but that's a lot of work :/.

So, have just removed the usage, but left the file there.

Change-Id: I16f4945eb54ede451f4c91ee130284e84d653309
Signed-off-by: David Steele <david.steele@samsung.com>
10 months agoAdd OrderIndex to RenderTask to control rendering order between RenderTask 49/305249/8
seungho baek [Tue, 30 Jan 2024 09:14:19 +0000 (18:14 +0900)]
Add OrderIndex to RenderTask to control rendering order between RenderTask

Change-Id: I7aa9bec7a27c04878d1842751ea64813068d582f
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
10 months agoFix mis-implementation for GetLinearEnumerationName 58/305558/1
Eunki, Hong [Mon, 5 Feb 2024 03:51:24 +0000 (12:51 +0900)]
Fix mis-implementation for GetLinearEnumerationName

Let we fix mis-implementation of GetLinearEnumerationName,
and add relative UTC for it.

Change-Id: I77dc0b9ae3ca0f5fd563f12e8faaf4fc36549b97
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
10 months agoMerge "Removing old temporary graphics APIs" into devel/master
David Steele [Fri, 2 Feb 2024 16:43:24 +0000 (16:43 +0000)]
Merge "Removing old temporary graphics APIs" into devel/master

10 months agoDALi Version 2.3.9 97/305497/1 dali_2.3.9
Adam Bialogonski [Fri, 2 Feb 2024 09:57:58 +0000 (09:57 +0000)]
DALi Version 2.3.9

Change-Id: I2a50f5f3d7de05bcad0e3c73dc8cdeb08fd16180

10 months agoFix INTEGER_OVERFLOW coverity issues 29/305429/4
Eunki, Hong [Thu, 1 Feb 2024 11:28:08 +0000 (20:28 +0900)]
Fix INTEGER_OVERFLOW coverity issues

 - LinearConstraint : min value could be zero. We should branch out that case.
 - Render::Geometry : The number of indecies could be zero.
 - BaseSignal : Callback might be nullptr (even if we don't allow this cases)
 - Program : we might fail to find '[' keyword.

Change-Id: I45c3fe567e98973d2a215b975f8094b7222995a8
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
10 months agoRemoving old temporary graphics APIs 56/305356/2
David Steele [Wed, 31 Jan 2024 18:56:41 +0000 (18:56 +0000)]
Removing old temporary graphics APIs

Change-Id: I41c5af839ab5b0807194ebe2ecedbbaa27ba033c

10 months agoRemoving unused threadpool 53/305353/1
David Steele [Wed, 31 Jan 2024 16:52:55 +0000 (16:52 +0000)]
Removing unused threadpool

Change-Id: Ia2cccb3bee0068b15f5eff1c23d46ff62cc97b3b

10 months agoMerge "Remove duplicate codes for screen position" into devel/master
Seoyeon Kim [Wed, 31 Jan 2024 08:33:59 +0000 (08:33 +0000)]
Merge "Remove duplicate codes for screen position" into devel/master

10 months agoRemove duplicate codes for screen position 43/305143/2
Seoyeon Kim [Mon, 29 Jan 2024 07:28:48 +0000 (16:28 +0900)]
Remove duplicate codes for screen position

- There are some duplicate codes when screen position and screen extent
are calculated.
- Remove these duplicate codes to make new methods for calculation

Change-Id: I5c9a50f5125933013bfd20a85c13f55a16fc4387
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
10 months agoKeep node by id + Make SceneGraphTraveler don't travel anymore 62/305062/6
Eunki, Hong [Fri, 26 Jan 2024 04:12:28 +0000 (13:12 +0900)]
Keep node by id + Make SceneGraphTraveler don't travel anymore

Let we keep whole nodes cache by id.
And let we make scene graph traveler use this system instead of traveling.

Previously, if we want to check whether given node is under root node,
we should search whole childrens (travel up-to-down).

Instead, let we travel down-to-up, s.t. will spend much less time than before.

And also, let we make a way to user don't use root actor for frame callback.
It is not a neccessary if we ask to node to mUpdateManger.

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