platform/core/uifw/dali-core.git
3 years agoFix performance issue in UpdateManager::AddNode() 20/251020/2
Subhransu Mohanty [Thu, 7 Jan 2021 03:11:27 +0000 (12:11 +0900)]
Fix performance issue in UpdateManager::AddNode()

As node pointes are allocated by FixedMeomrySizedPool and the pool
allocates pages and page can be allocated at any location by global new.
it won't help with cache locality by keeping nodes in sorted order by address.

creating 100,000 actor takes 3 Second and 200,000 actor takes 11 Second .

Change-Id: Ic3b0da35ebd98d994d876083ffe3ee44f082d8c0

3 years agoDALi Version 2.0.10 14/252114/1 dali_2.0.10
Adeel Kazmi [Fri, 22 Jan 2021 17:15:51 +0000 (17:15 +0000)]
DALi Version 2.0.10

Change-Id: I0399a258942ac6e35dfe57d6d1c99a2c6a1ff76c

3 years agoMerge "Removed scene-graph dependency from internal actor headers" into devel/master
David Steele [Wed, 20 Jan 2021 16:05:42 +0000 (16:05 +0000)]
Merge "Removed scene-graph dependency from internal actor headers" into devel/master

3 years agoRemoved scene-graph dependency from internal actor headers 29/251829/2
David Steele [Tue, 19 Jan 2021 15:11:18 +0000 (15:11 +0000)]
Removed scene-graph dependency from internal actor headers

actor-impl.h unnecessarily included update-manager.h.

Modified header to remove dependency, and fixed up errors, moving
to use forward declarations where possible, and moving inline
dependencies into source files.

Change-Id: I330a70fc374eb11a414ae257e34858ab061d84ca
Signed-off-by: David Steele <david.steele@samsung.com>
3 years agoAll test execution now outputs results to xml files 88/250088/3
David Steele [Fri, 18 Dec 2020 16:47:55 +0000 (16:47 +0000)]
All test execution now outputs results to xml files

Change-Id: I2eaba2f830dc479f2720bf5ec9b7ef726b85f888

3 years agoMerge "Reduce Actor Class Size by using ConstString" into devel/master
Adeel Kazmi [Tue, 19 Jan 2021 17:17:43 +0000 (17:17 +0000)]
Merge "Reduce Actor Class Size by using ConstString" into devel/master

3 years agoInitial refactoring of graphics interface 14/251614/5
David Steele [Thu, 14 Jan 2021 19:14:11 +0000 (19:14 +0000)]
Initial refactoring of graphics interface

Core now takes a Graphics::Controller as a parameter
For now, this wraps references to old GlAbstraction, GlSyncAbstraction &
GlContextHelperAbstraction.

Changed up internal interfaces to use this graphics controller rather
than storing refs to GlAbstraction etc (except for Context)

Change-Id: Id1707dd4bddd8578d1227244757b309b0e33228b

3 years agoDALi Version 2.0.9 99/251599/1 dali_2.0.9
adam.b [Fri, 15 Jan 2021 11:16:25 +0000 (11:16 +0000)]
DALi Version 2.0.9

Change-Id: I933b0dc928ae1935423258d43f182e0e2667969a

3 years agoReduce Actor Class Size by using ConstString 42/248642/3
Subhransu Mohanty [Tue, 1 Dec 2020 06:05:41 +0000 (15:05 +0900)]
Reduce Actor Class Size by using ConstString

Actor size reduced from 392 byte to 368 byte in 64bit system.

Change-Id: I28da21c56acfe6dc7f799b5ffe509bccb2284d2c

3 years agoDo not calculate dirty rects when rendering is skipped 78/250678/2
Heeyong Song [Thu, 31 Dec 2020 04:41:49 +0000 (13:41 +0900)]
Do not calculate dirty rects when rendering is skipped

- Dirty rect should not be calculated when rendring is skipped
- Fix also RenderItem::mUpdateSize value

Change-Id: I82472d2f1fdeccd5e1d29517cfe5cc80d3169e8d

3 years agoFix Rendering behavior issue 53/250653/2
Heeyong Song [Thu, 31 Dec 2020 00:49:02 +0000 (09:49 +0900)]
Fix Rendering behavior issue

Ensure to keep rendering if the rendering behavior is CONTINUOUSLY

Change-Id: I65bb42d4a230c48009ff65ec9a249fc2726fb774

3 years agoDALi Version 2.0.8 45/251145/1 dali_2.0.8
Richard Huang [Fri, 8 Jan 2021 14:35:24 +0000 (14:35 +0000)]
DALi Version 2.0.8

Change-Id: Idda91357d8c0c533b9918bdaacd68b25a6d3d4b3

3 years agoUpdated macOS instructions 80/251080/2
Adeel Kazmi [Thu, 7 Jan 2021 18:18:28 +0000 (18:18 +0000)]
Updated macOS instructions

Change-Id: I86c11734748764fdf374496699caa0c9191509f3

3 years agoAdd installation instructions for MacOS 17/245917/6
Lucas Cavalcante de Sousa [Tue, 13 Oct 2020 18:31:11 +0000 (15:31 -0300)]
Add installation instructions for MacOS

Change-Id: I77679aff52590015a25e53b818e6ebfdd8a81672

3 years agoMatch Apple clang 11/249211/3
Wander Lairson Costa [Tue, 8 Dec 2020 19:20:51 +0000 (16:20 -0300)]
Match Apple clang

In macOS, the clang shipped with macOS has the string 'AppleClang' in
cmake.

Change-Id: I0995c3853fded17b35e41595398421d3c4001bf1

3 years agoFix scissor clipping issue 93/250593/1
Heeyong Song [Wed, 30 Dec 2020 04:25:45 +0000 (13:25 +0900)]
Fix scissor clipping issue

- Should consider y-axis inversion for the scissor box

Change-Id: I27d3e0842d0095198caf243d80ce2b2af6825750

3 years agoDALi Version 2.0.7 01/250401/1 dali_2.0.7
György Straub [Thu, 24 Dec 2020 07:48:36 +0000 (07:48 +0000)]
DALi Version 2.0.7

Change-Id: I0248e8eb3d88b7f9b2966a01d1c4911fd49f8e0e

3 years agoMerge "Updated patch coverage script." into devel/master
Adeel Kazmi [Wed, 23 Dec 2020 16:19:36 +0000 (16:19 +0000)]
Merge "Updated patch coverage script." into devel/master

3 years agoMerge "Fix stencil clipping bug" into devel/master
Heeyong Song [Mon, 21 Dec 2020 01:51:45 +0000 (01:51 +0000)]
Merge "Fix stencil clipping bug" into devel/master

3 years agoCreated PartialRenderingDataProvider to store per-frame data 24/247424/12
adam.b [Tue, 8 Dec 2020 14:10:51 +0000 (14:10 +0000)]
Created PartialRenderingDataProvider to store per-frame data

Change-Id: Ief3717a29bced6f30faa96cfe117ffa93bd9a8d0

3 years agoDALi Version 2.0.6 48/250048/1 dali_2.0.6
adam.b [Fri, 18 Dec 2020 11:08:15 +0000 (11:08 +0000)]
DALi Version 2.0.6

Change-Id: I05de7b86bcaf019399edcb2fa6a417a19abd91ba

3 years agoAdded notes to explain the difference between GetProperty & GetCurrentProperty 90/249790/1
Adeel Kazmi [Wed, 16 Dec 2020 18:58:37 +0000 (18:58 +0000)]
Added notes to explain the difference between GetProperty & GetCurrentProperty

Change-Id: Iecb8e9d950f6c3bf77090fae82636221ae03e125

3 years agoMerge "use std::string_view to avoid shader string duplication." into devel/master
David Steele [Wed, 16 Dec 2020 18:08:37 +0000 (18:08 +0000)]
Merge "use std::string_view to avoid shader string duplication." into devel/master

3 years agoFix stencil clipping bug 84/249784/1
Heeyong Song [Wed, 16 Dec 2020 15:28:16 +0000 (00:28 +0900)]
Fix stencil clipping bug

Change-Id: I5eb8f3033774fe20976048b24b0e25d7543d915e

3 years agoMerge "Ensure actor size is set to node if different" into devel/master
David Steele [Tue, 15 Dec 2020 11:35:37 +0000 (11:35 +0000)]
Merge "Ensure actor size is set to node if different" into devel/master

3 years agoEnsure actor size is set to node if different 44/249544/2
David Steele [Mon, 14 Dec 2020 14:06:05 +0000 (14:06 +0000)]
Ensure actor size is set to node if different

Change-Id: I9a47c38321d7753747261f7bd140a6cb58330d58

3 years agoFix Svace error in actor-parent-impl.cpp 42/249542/1
Adeel Kazmi [Mon, 14 Dec 2020 14:04:28 +0000 (14:04 +0000)]
Fix Svace error in actor-parent-impl.cpp

Change-Id: I085d990f1ccbc5a503c1ac84943a0a44bf093d46

3 years agoUpdated patch coverage script. 60/249460/1
David Steele [Fri, 11 Dec 2020 18:05:48 +0000 (18:05 +0000)]
Updated patch coverage script.

Ensured that the coverage output is only shown in verbose mode after
all other errors have been found.
Clearly separate the script output from the coverage output
Added errors and warning tags to... errors and warnings.

Change-Id: Ica9abc713fd35e53bbd40031503e87a911624ced

3 years agoMerge "DALi Version 2.0.5" into devel/master
Adeel Kazmi [Fri, 11 Dec 2020 12:14:09 +0000 (12:14 +0000)]
Merge "DALi Version 2.0.5" into devel/master

3 years agoDALi Version 2.0.5 41/249441/1 dali_2.0.5
David Steele [Fri, 11 Dec 2020 12:10:16 +0000 (12:10 +0000)]
DALi Version 2.0.5

Change-Id: I3c95f358b861b57145cbd1ca215b648e001da965

3 years agoMerge "[dali-core] add libhyphen-dev library to dali-env" into devel/master
Adeel Kazmi [Fri, 11 Dec 2020 10:33:12 +0000 (10:33 +0000)]
Merge "[dali-core] add libhyphen-dev library to dali-env" into devel/master

3 years agoMerge "Refactored actor impl child/parent handling out" into devel/master
Adeel Kazmi [Fri, 11 Dec 2020 10:22:42 +0000 (10:22 +0000)]
Merge "Refactored actor impl child/parent handling out" into devel/master

3 years agoEnsure we use TransformManager const methods to retrieve values from const getter... 02/249202/3
Richard Huang [Tue, 8 Dec 2020 13:23:10 +0000 (13:23 +0000)]
Ensure we use TransformManager const methods to retrieve values from const getter methods

Change-Id: Ibf8208bca7d876bffcc0df309757645adf4ac1d0

3 years agoMerge "[dali-core] add all X11 colors to Color namespace" into devel/master
David Steele [Tue, 8 Dec 2020 12:34:13 +0000 (12:34 +0000)]
Merge "[dali-core] add all X11 colors to Color namespace" into devel/master

3 years agoMerge "(UpdateProxy) Ensure we use TransformManager const methods to retrieve values...
Adeel Kazmi [Tue, 8 Dec 2020 12:26:11 +0000 (12:26 +0000)]
Merge "(UpdateProxy) Ensure we use TransformManager const methods to retrieve values" into devel/master

3 years ago(UpdateProxy) Ensure we use TransformManager const methods to retrieve values 93/249193/1
Adeel Kazmi [Tue, 8 Dec 2020 11:31:51 +0000 (11:31 +0000)]
(UpdateProxy) Ensure we use TransformManager const methods to retrieve values

Change-Id: I4331e41ca50a8f0ca7122218b7ef56e99a184df1

3 years agoMerge "Ensure to update nodes even though they are invisible" into devel/master
Heeyong Song [Tue, 8 Dec 2020 00:37:02 +0000 (00:37 +0000)]
Merge "Ensure to update nodes even though they are invisible" into devel/master

3 years agoRefactored actor impl child/parent handling out 43/249143/1
David Steele [Mon, 7 Dec 2020 16:43:58 +0000 (16:43 +0000)]
Refactored actor impl child/parent handling out

Change-Id: I7f0750da51bff8528f55098e829d5814336e97bc

3 years ago[dali-core] add libhyphen-dev library to dali-env 50/248550/2
ali198724 [Sun, 29 Nov 2020 15:44:37 +0000 (17:44 +0200)]
[dali-core] add libhyphen-dev library to dali-env

Change-Id: I174819f4df3b72a6153fe7f78dd3297a30bba65c

3 years agoDALi Version 2.0.4 50/249050/1 dali_2.0.4
Adeel Kazmi [Fri, 4 Dec 2020 14:56:57 +0000 (14:56 +0000)]
DALi Version 2.0.4

Change-Id: I06e9413d20ccf046ce02c01fa4f049c4cb0126da

3 years agorefactor Object,TypeInfo and PropertyMetaData to use ConstString 70/248870/2
Subhransu Mohanty [Thu, 3 Dec 2020 01:55:33 +0000 (10:55 +0900)]
refactor Object,TypeInfo and PropertyMetaData to use ConstString

Change-Id: I03e7021895d3089cb1427683accdff426b40286f

3 years agouse std::string_view to avoid shader string duplication. 86/248886/1
Subhransu Mohanty [Thu, 3 Dec 2020 04:19:55 +0000 (13:19 +0900)]
use std::string_view to avoid shader string duplication.

Change-Id: Iacad7e8c45d6176d2347c8ed423edd32e58de61f

3 years agoMerge "Fixed SVACE errors" into devel/master
Adeel Kazmi [Wed, 2 Dec 2020 18:36:21 +0000 (18:36 +0000)]
Merge "Fixed SVACE errors" into devel/master

3 years agoMerge "Optimize Orphan animator Cleanup." into devel/master
David Steele [Wed, 2 Dec 2020 16:30:36 +0000 (16:30 +0000)]
Merge "Optimize Orphan animator Cleanup." into devel/master

3 years agoFixed SVACE errors 08/248808/1
Adeel Kazmi [Wed, 2 Dec 2020 09:56:19 +0000 (09:56 +0000)]
Fixed SVACE errors

Change-Id: I8ba9c64b7e20cd58834bc9ca8280840dfa8ea7ef

3 years agoOptimize Orphan animator Cleanup. 63/248763/1
Subhransu Mohanty [Wed, 2 Dec 2020 05:48:17 +0000 (14:48 +0900)]
Optimize Orphan animator Cleanup.

keep a cleanup falg and update it if cleanup is required.
and then cleanup at onece all the orphan animators.

when there are no orphan animators we don't have to walk the animators twice.

Change-Id: I9c2f7f2bef9a7655481743a22abdf366d8b12f21

3 years agoEnsure to update nodes even though they are invisible 55/248555/2
Heeyong Song [Mon, 30 Nov 2020 02:34:06 +0000 (11:34 +0900)]
Ensure to update nodes even though they are invisible

Change-Id: I5a7b77fc12ca28b18d207946b89357e9600f7d91

3 years agoRefactored Internal::Actor by moving some methods into the Relayouter 06/248706/2
Adeel Kazmi [Tue, 1 Dec 2020 18:34:58 +0000 (18:34 +0000)]
Refactored Internal::Actor by moving some methods into the Relayouter

This reduces the LOC for Actor

Change-Id: I02201d933ca315581765ea91d8e5ea191201499f

3 years agoMoved sibling order algorithms out of actor-impl 07/248707/1
David Steele [Tue, 1 Dec 2020 18:41:53 +0000 (18:41 +0000)]
Moved sibling order algorithms out of actor-impl

Reducing the line count of Internal::Actor to increase SAM score

Change-Id: Icceb9d6a4d899a988a9d203f1879f1c84df3fe07

3 years agoMerge changes I2dff9828,Ie3c8048a,Ib1b1d3bc into devel/master
David Steele [Tue, 1 Dec 2020 13:06:39 +0000 (13:06 +0000)]
Merge changes I2dff9828,Ie3c8048a,Ib1b1d3bc into devel/master

* changes:
  Avoid Heap allocation in UniformMap.
  Refactor UniformMap, PropertyOwner and Program to use ConstString
  Added String Interning Support to Dali.

3 years agoMake blend for the opaque renderer when advanced blend equation is applied. 27/248327/4
Seungho Baek [Wed, 25 Nov 2020 10:07:17 +0000 (19:07 +0900)]
Make blend for the opaque renderer when advanced blend equation is applied.

 - Not to change BlendMode.

Change-Id: Ic0d085a67d3c49e270a5cd83e703981bfd916f24
Signed-off-by: Seungho Baek <sbsh.baek@samsung.com>
3 years agoAvoid Heap allocation in UniformMap. 90/248590/3
Subhransu Mohanty [Mon, 30 Nov 2020 09:04:20 +0000 (18:04 +0900)]
Avoid Heap allocation in UniformMap.

With the use of ConstString we no need to heap allocate UniformPropertyMapping.
So just keep a Dali::Vector instead of OwnerContainer.

Change-Id: I2dff9828a121f7b6b245c306e0f689f5d2073021

3 years agoRefactor UniformMap, PropertyOwner and Program to use ConstString 69/248569/5
Subhransu Mohanty [Mon, 30 Nov 2020 05:52:58 +0000 (14:52 +0900)]
Refactor UniformMap, PropertyOwner and Program to use ConstString

Change-Id: Ie3c8048a57ad667f4f8e557ba1cc4ec19b2d686f

3 years agoAdded String Interning Support to Dali. 60/248560/5
Subhransu Mohanty [Wed, 25 Nov 2020 09:16:42 +0000 (18:16 +0900)]
Added String Interning Support to Dali.

- thread safe StringPool.
- uses arena allocator to allocate the StringEntry object.
- Internal strings are allocated in String pages instead of indivisual heap allocation.
- Both StringData and length are stored in same location(StringEntry).
- StringPool implements FlatHash with open addresssing and Quadratic Probing (adopted from llvm)

Change-Id: Ib1b1d3bc74718dd613e924236bb1845e83f42353

3 years agoMerge "Reference counting made atomic" into devel/master
Adeel Kazmi [Mon, 30 Nov 2020 17:04:15 +0000 (17:04 +0000)]
Merge "Reference counting made atomic" into devel/master

3 years agoMerge "refactor AlphaFunction class to reduce size" into devel/master
David Steele [Mon, 30 Nov 2020 12:50:50 +0000 (12:50 +0000)]
Merge "refactor AlphaFunction class to reduce size" into devel/master

3 years agoAdd configuration file to enable CodeQL code scanning in github 43/248543/1
Richard Huang [Fri, 27 Nov 2020 16:40:57 +0000 (16:40 +0000)]
Add configuration file to enable CodeQL code scanning in github

Change-Id: I99cd2db52c9beef5d3fedb6199c9f83b3be65c54

3 years agoReference counting made atomic 36/248536/1
adam.b [Fri, 27 Nov 2020 11:58:52 +0000 (11:58 +0000)]
Reference counting made atomic

The ARM assembled code and GCC builtin call have been removed and replace
with std::atomic<>.

Change-Id: I86299c36b82fbc7263e5a463da1475179cb20a04

3 years agoDALi Version 2.0.3 24/248524/1 dali_2.0.3
Richard Huang [Fri, 27 Nov 2020 11:56:42 +0000 (11:56 +0000)]
DALi Version 2.0.3

Change-Id: Idffb204f3a542eef257b7c9c53ee24503abfa5a7

3 years agoMerge "Support screen and client rotation" into devel/master
Adeel Kazmi [Mon, 23 Nov 2020 16:48:36 +0000 (16:48 +0000)]
Merge "Support screen and client rotation" into devel/master

3 years agoImplement a semaphore primitive 32/244732/9
Wander Lairson Costa [Mon, 21 Sep 2020 20:03:52 +0000 (17:03 -0300)]
Implement a semaphore primitive

macOS doesn't implement unnamed POSIX semaphores (sem_*) and semaphores
is only available in the standard C++ library starting with C++20.

We implement a semaphore primitive that tries to mimic as much as
possible std::counting_semaphore, this way when we enable C++20 in the
code base we can easily migrate to the standard implementation.

Change-Id: Ifab8dbe41b57490564ad569cf53d6aa0c4100a13

3 years agoSupport screen and client rotation 21/244821/11
Wonsik Jung [Thu, 24 Sep 2020 11:32:20 +0000 (20:32 +0900)]
Support screen and client rotation

In Tizen embedded system, two types of rotation are supported.
One is Window Rotation and the other is Screen rotation
Although their use-case are different, their rotation itself  almost works are same.
Real surface buffer is not rotated.
When rotation event is received from window server,
then internal contents are rotated and drawn with angle of the event.
This patch is to support the Tizen Rotation.

Change-Id: I1745b8cefaeb1bb6ff7639ac5d942aeb3216262f

3 years agoDALi Version 2.0.2 79/248079/1 dali_2.0.2
György Straub [Fri, 20 Nov 2020 07:45:46 +0000 (07:45 +0000)]
DALi Version 2.0.2

Change-Id: Iba6ed1ee281eb70633c4425a8c55f075455368a4

3 years agoMerge "Clean up the code to build successfully on macOS" into devel/master
Adeel Kazmi [Wed, 18 Nov 2020 17:46:41 +0000 (17:46 +0000)]
Merge "Clean up the code to build successfully on macOS" into devel/master

3 years agoClean up the code to build successfully on macOS 85/243985/9
Wander Lairson Costa [Wed, 12 Aug 2020 17:49:44 +0000 (14:49 -0300)]
Clean up the code to build successfully on macOS

This commit does some code cleanup to successfully build dali-core in
macOS using the Apple provided clang compiler.

The clang version shipped with macOS doesn't have the
-Wno-class-memaccess and the -Wno-cast-function-type switches, so we
test their existence before adding them to the compiler options.

Mutex now has move constructor and assigment operator, so classes with
mutexes members can use their defaults move operations. Classes holding
references cannot have a default move assigment operator.

Virtual functions overriding parent classes are now declared with the
`override` keyword.

MAXIMUM_TIME_DIFF_ALLOWED is a global internal variable nerver used, so
it was removed.

.gitignore was updated to include some artifacts from coc-nvim
extension.

Change-Id: I76201f867240a0822e7e202c2edcbfa07b2dffd6

4 years agoDALi Version 2.0.1 04/247704/1 dali_2.0.1
Cheng-Shiun Tsai [Fri, 13 Nov 2020 14:53:14 +0000 (14:53 +0000)]
DALi Version 2.0.1

Change-Id: I60ab4275600a2a4fd7e0b6cac346357b05a5a2fa

4 years agoMerge "Blend Equation Advanced Supporting" into devel/master
Seungho BAEK [Wed, 11 Nov 2020 03:07:08 +0000 (03:07 +0000)]
Merge "Blend Equation Advanced Supporting" into devel/master

4 years ago(patch-coverage.pl) Outputs covered and total lines as well 05/247305/1
Adeel Kazmi [Mon, 9 Nov 2020 19:07:26 +0000 (19:07 +0000)]
(patch-coverage.pl) Outputs covered and total lines as well

Change-Id: Ia66f4f1fd8134548c94722e55ee3ae824af7c288

4 years ago[dali-core] add all X11 colors to Color namespace 10/246610/3
ali198724 [Mon, 2 Nov 2020 10:01:29 +0000 (12:01 +0200)]
[dali-core] add all X11 colors to Color namespace

this is subset used in CSS https://www.w3.org/TR/css-color-3

Change-Id: If180701ffa07fab4b93f36d0d204a6c076653bc7

4 years agorefactor AlphaFunction class to reduce size 11/247211/1
Subhransu Mohanty [Mon, 9 Nov 2020 02:33:12 +0000 (11:33 +0900)]
refactor AlphaFunction class to reduce size

Change-Id: I4ed9ad6e4367a97ac97f64cb5b82140fc969d99f

4 years agoDALi Version 2.0.0 72/247172/1 dali_2.0.0
Adeel Kazmi [Fri, 6 Nov 2020 09:17:46 +0000 (09:17 +0000)]
DALi Version 2.0.0

Change-Id: I0a32b1d26aa223dd728b36188726693084461e35

4 years agoRenderTaskProcessor::AddRenderablesForTask() optimization. 41/239741/9
György Straub [Wed, 29 Jul 2020 09:55:48 +0000 (10:55 +0100)]
RenderTaskProcessor::AddRenderablesForTask() optimization.

- pulled loop-invariant conditional for which RenderableContainer to add
  to, out of the loop;
- replaced branch for assigning true, with compound or-assignment of the
  result of the check;

Change-Id: I2f36f2b7a5eb95da6e3cc04bddfbede0f8437b69
Signed-off-by: György Straub <g.straub@partner.samsung.com>
4 years agoImplement GetNanoseconds() with std::chrono. 08/242608/7
Victor Cebollada [Fri, 28 Aug 2020 07:15:24 +0000 (08:15 +0100)]
Implement GetNanoseconds() with std::chrono.

* Platform independent.

Change-Id: I484dbfb5a0b6115a6ea8cd6c645420985e9aae0d
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
4 years agoImprove the logic using Erase-Remove Idiom. 36/242436/6
Subhransu Mohanty [Thu, 27 Aug 2020 03:57:28 +0000 (12:57 +0900)]
Improve the logic using Erase-Remove Idiom.

instead of erasing each element found and restarting the
loop again . first find all element and move them to the end
of list and then erase them once using std::erase(std::remove_if()).

This will improve the cache locality as this will avoid lot ofpointer chaseing.
Also avoids expensing Dali::Vector::end() call.

Change-Id: I306de3f017ef23ea7d4d1e6e5202940f84fcf872

4 years agoMerge "use string_view instead of const string literals." into devel/master
David Steele [Tue, 3 Nov 2020 15:43:52 +0000 (15:43 +0000)]
Merge "use string_view instead of const string literals." into devel/master

4 years agouse string_view instead of const string literals. 22/245322/4
Subhransu Mohanty [Wed, 7 Oct 2020 05:16:26 +0000 (14:16 +0900)]
use string_view instead of const string literals.

as constexpr stringview calculates the length of the string during
compiletime. the == comparison is fast as it first checks whether
the size of the both string are same before calling the expensive
compare() function.

Change-Id: I996faed4d82e5c478f5f55c31cfe25581aa4bbc9

4 years agorefactor dali-animation. 11/245511/11
sub.mohanty@samsung.com [Sun, 11 Oct 2020 01:26:36 +0000 (10:26 +0900)]
refactor dali-animation.

- refactor keyframeChannel class.
- refactor KeyFrameBaseSpec to avoid heap allocation.
- keep a templated form of GetSpecialization.
- in the keyframeanimation functor keep a copy of keyframeChannel instead of heap allocated object.
- remove AnimatorFunctorBase class and replace it with std::function to avoid heap allocation when possible.
- structure packing of AnimatorBase

Change-Id: I416df4601116547c79f04b2cf8e0bc95e622b869

4 years agoAdded test-harness timeout check 18/246618/2
David Steele [Mon, 2 Nov 2020 13:37:07 +0000 (13:37 +0000)]
Added test-harness timeout check

Change-Id: I82276c59de57bc29a2e6a2e895db26e5072a61e0

4 years agoDALi Version 1.9.36 29/246529/1 dali_1.9.36
David Steele [Fri, 30 Oct 2020 14:33:16 +0000 (14:33 +0000)]
DALi Version 1.9.36

Change-Id: Ie87e252297e782248c1d5222a3cabc58e2c8f76a

4 years agoBlend Equation Advanced Supporting 00/224500/45
Seungho, Baek [Tue, 11 Feb 2020 05:51:46 +0000 (14:51 +0900)]
Blend Equation Advanced Supporting

Change-Id: I7a813e3831424de2b63e1cc53fd5682bbaaa4683
Signed-off-by: Seungho, Baek <sbsh.baek@samsung.com>
4 years agoChange property name from TouchDelegateArea to TouchArea. 91/246391/2
Joogab Yun [Thu, 29 Oct 2020 03:33:55 +0000 (12:33 +0900)]
Change property name from TouchDelegateArea to TouchArea.

Change-Id: I6b2af477ffb8523d7e98ffbc250cbb2deb59c5cc

4 years agoUpdated patch-coverage.pl script 24/246124/1
David Steele [Fri, 23 Oct 2020 14:33:40 +0000 (15:33 +0100)]
Updated patch-coverage.pl script

Change-Id: I01c1e0e7a6959596bea5ff3318e964eda230b519

4 years agouse algorithm and range for 67/243767/3
Subhransu Mohanty [Thu, 10 Sep 2020 01:59:09 +0000 (10:59 +0900)]
use algorithm and range for

Change-Id: I8f276553114fecf8c9f6b60696e2dcd274388958

4 years agoMerge "DALi Version 1.9.35" into devel/master
Adeel Kazmi [Fri, 23 Oct 2020 10:48:15 +0000 (10:48 +0000)]
Merge "DALi Version 1.9.35" into devel/master

4 years agoDALi Version 1.9.35 03/246103/1 dali_1.9.35
adam.b [Fri, 23 Oct 2020 10:44:56 +0000 (11:44 +0100)]
DALi Version 1.9.35

Change-Id: I39bd529cc7846aebdebe06c06145977b3dd6e269

4 years agoMerge "use modern construct '= default' for special functions." into devel/master
David Steele [Fri, 23 Oct 2020 10:32:46 +0000 (10:32 +0000)]
Merge "use modern construct '= default' for special functions." into devel/master

4 years agoMerge "Add TouchDelegateArea property." into devel/master
joogab yun [Fri, 23 Oct 2020 02:02:45 +0000 (02:02 +0000)]
Merge "Add TouchDelegateArea property." into devel/master

4 years agoAdding new patch-coverage script 61/245661/3
David Steele [Tue, 13 Oct 2020 15:57:58 +0000 (16:57 +0100)]
Adding new patch-coverage script

Change-Id: Iaf227f70e10f2af1db928c0f0614619dbee53d5d

4 years agoAdd TouchDelegateArea property. 35/245935/9
Joogab Yun [Tue, 20 Oct 2020 06:46:19 +0000 (15:46 +0900)]
Add TouchDelegateArea property.

TouchDelegateArea can reset the actor's touchable area.
This is usefull when the actor is small, but it should have a larger touch area.

for example

      Actor actor = Actor::New();
      actor.SetProperty(Actor::Property::SIZE, Vector2(10.0f, 10.0f));
      actor.SetProperty(DevelActor::Property::TOUCH_DELEGATE_AREA, Vector2(200.0f, 200.0f));
      actor.TouchedSignal().Connect(OnTouchCallback);

The actor is small, If you want to set the touch area to a larger area,
you can use the TOUCH_DELEGATE_AREA property.

Change-Id: Ic4e3683e09d1636bc61719ea1e83bcd05a1c4153

4 years agoMerge "refactor Property::Map interface." into devel/master
David Steele [Tue, 20 Oct 2020 15:05:45 +0000 (15:05 +0000)]
Merge "refactor Property::Map interface." into devel/master

4 years agoMerge "add base type of enum to reduce class size." into devel/master
David Steele [Mon, 19 Oct 2020 13:35:41 +0000 (13:35 +0000)]
Merge "add  base type of enum to reduce class size." into devel/master

4 years agoMerge "DALi Version 1.9.34" into devel/master
Adeel Kazmi [Fri, 16 Oct 2020 10:39:18 +0000 (10:39 +0000)]
Merge "DALi Version 1.9.34" into devel/master

4 years ago[dali_1.9.34] Merge branch 'devel/master' 42/245842/1
Richard Huang [Fri, 16 Oct 2020 10:33:08 +0000 (11:33 +0100)]
[dali_1.9.34] Merge branch 'devel/master'

Change-Id: I9ad15755abccc4c455918b049bec38c1bcb84b4d

4 years agoDALi Version 1.9.34 36/245836/1 dali_1.9.34
Richard Huang [Fri, 16 Oct 2020 10:30:35 +0000 (11:30 +0100)]
DALi Version 1.9.34

Change-Id: I5f8723bdcce4d478589a8dc72cea88180882d69f

4 years agoMerge "Skip rendering if no animation is currently active" into devel/master
Adeel Kazmi [Fri, 16 Oct 2020 08:03:24 +0000 (08:03 +0000)]
Merge "Skip rendering if no animation is currently active" into devel/master

4 years agoAdd intercept touch event 58/245258/18
Joogab Yun [Tue, 6 Oct 2020 06:38:33 +0000 (15:38 +0900)]
Add intercept touch event

The Touch event calls the TouchEvent callback by going back from the last child actor to the parent via hitTest.
InterceptTouchEvent checks the touch event in the parent first.
Returning false from interceptTouchEvent allows child actors to receive TouchEvents.
If it returns true, the actor will receive a TouchEvent.

for example

   Actor parent = Actor::New();
   Actor actor = Actor::New();
   parent.Add(actor);
   actor.TouchedSignal().Connect(&application, functor);
   parent.TouchedSignal().Connect(&application, parentFunctor);

The callbacks are called in the order functor -> parentFunctor.

If you connect interceptTouchSignal to parentActor.

   Dali::DevelActor::InterceptTouchedSignal(parent).Connect(&application, interceptFunctor);

When interceptFunctor returns false, it is called in the same order functor -> parentFunctor.
If it returns true, it means that the TouchEvent was intercepted.
So the child actor will not be able to receive touch events.
Only the parentFunctor is called.

Change-Id: Ib6887adbcee59168a7caf7f36bcc400500c626e8

4 years agoFix doxygen comments 85/245585/1
Adeel Kazmi [Mon, 12 Oct 2020 19:46:40 +0000 (20:46 +0100)]
Fix doxygen comments

Change-Id: If8c7b64bbf197370ccdcf71d959846a477cee8d1

4 years agoMerge "Fix PropertySetSignalType signal interface signature" into devel/master
David Steele [Fri, 9 Oct 2020 14:07:06 +0000 (14:07 +0000)]
Merge "Fix PropertySetSignalType signal interface signature" into devel/master

4 years agouse modern construct '= default' for special functions. 75/243875/3
Subhransu Mohanty [Fri, 11 Sep 2020 01:17:42 +0000 (10:17 +0900)]
use modern construct '= default' for special functions.

This patch is auto generated by clang-tidy with modernize-use-equals-default.
excluded automated-tests

Change-Id: I50cf90eb5684144a95b263774f3d8b3be8f4518c

4 years agoMerge changes I2769d6ae,I11060630,I5c96789c,I1d0e89be,I331a838c, ... into devel/master
David Steele [Fri, 9 Oct 2020 13:37:15 +0000 (13:37 +0000)]
Merge changes I2769d6ae,I11060630,I5c96789c,I1d0e89be,I331a838c, ... into devel/master

* changes:
  Add template keyword for android compiler
  refactor SignalBase and CallbackBase using variadic template.
  refactor Signal class.
  refactor ConnectionTracker class.
  refactor SlotConnection class.
  refactor CallbackBase class.
  refactor BaseSignal class.
  refactor  SignalConnection class.