platform/core/uifw/dali-core.git
10 years ago(Image) Add support for 9-patch images 34/19434/1
David Steele [Thu, 3 Apr 2014 17:38:11 +0000 (18:38 +0100)]
(Image) Add support for 9-patch images

[Issue#]       N/A
[Problem]      There is no support for 9 patch images with the
stretch / child info information stored in a 1 pixel border within
the image
[Cause]        N/A
[Solution]     Added new class NinePatchImage, which is automatically
used by Image::New when a 9 patch filename is seen.

Adding a 9 patch image to an ImageActor via an Image handle will generate
an alternative BitmapImage with the border cropped out. It will set up the
ImageActor to use the 9 patch style and set the stretch areas up appropriately.

Adding a 9 patch image to an ImageActor via a NinePatchImage handle will
use the image as is (i.e. without the border cropped out).

[Verification] Build Repo

Change-Id: I8fa5cc34220ea9abcf085c600279ef92bc12da00
Signed-off-by: David Steele <david.steele@partner.samsung.com>
10 years ago(PanGesture) Logging enabled via environment variable 33/19433/1
Paul Wisbey [Fri, 4 Apr 2014 14:35:33 +0000 (15:35 +0100)]
(PanGesture) Logging enabled via environment variable

[Issue#]   N/A
[Problem]  Touch smootness etc. is hard to profile
[Cause]    No logging features available
[Solution] Added new environment variable, usage:

  DALI_LOG_PAN_GESTURE=1 your-app.exe

Change-Id: I96a78aca0838cd50d02365e952f10a0a74fd515f
Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
10 years agoDisabled automatic creation of TextStyle::Impl object on every TextStyle object.
Richard Underhill [Mon, 31 Mar 2014 14:39:35 +0000 (15:39 +0100)]
Disabled automatic creation of TextStyle::Impl object on every TextStyle object.

[Issue#] N/A

[Problem] Unnecessary memory overhead on unused Implementation objects

[Cause]

[Solution] TextStyle::Impl is only created when a parameter contained
in that object is written to. Any query for a parameter on an
uninitialized Implementation object will return a default value
directly, without creating that Implementation object.

Signed-off-by: Richard Underhill <r.underhill@partner.samsung.com>
10 years agopan smoothing and prediction
Paul Wisbey [Wed, 2 Apr 2014 12:44:53 +0000 (13:44 +0100)]
pan smoothing and prediction

Rebase of this change:

This patch keeps track of a history of the the last 60 touches.
The time stamp of the update (which is a pretty regular 16.7ms),
queries the history for the touch point at the update timestamp
minus a constant (e.g. 16.7ms). The history returns a touch
point which is the linearly interpolated value between the two
nearest touches in the sample. Thus reflecting where the touch
would've been at fixed intervals of a video frame.

-- Reverted to just blending the last two touch video-frames
Appears that most of the problem is noise in the touch positions
rather than their alignment with the frame interval.

Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
10 years agoBoost::any replacement in Dali Core functions
Richard Underhill [Wed, 19 Mar 2014 11:25:20 +0000 (11:25 +0000)]
Boost::any replacement in Dali Core functions

[Issue#] N/A

[Problem]

[Cause]

[Solution]

[Notes]

This needs to be verified with the corresponding adaptor and CAPI
patches:
   http://slp-info.sec.samsung.net/gerrit/#/c/450053/
   http://slp-info.sec.samsung.net/gerrit/#/c/450681/

[Updates]

Patch Set 2 Changes:
* Updated comments according to Kimmo feedback.

Patch Set 3:
* Synced with CAPI patch set 5.

Patch Set 4:
* Simple rebase.

Signed-off-by: Richard Underhill <r.underhill@partner.samsung.com>
10 years ago(Properties) Create a new actor using a Property::Map & event-thread-only default...
Adeel Kazmi [Tue, 25 Mar 2014 16:07:08 +0000 (16:07 +0000)]
(Properties) Create a new actor using a Property::Map & event-thread-only default properties.

[Problem]  1) Cannot create an actor from a Property::Map.
           2) No mechanism of having event-thread only properties within Core.
[Cause]    1) Not available.
           2) Not available.
[Solution] 1) Create a method which creates an actor from a property map and vice versa.
           2) Added mechanism which checks whether a property can be used as an input to a
              constraint.

Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
10 years ago(PanGestures)PropertyOwner.ResetDefaultProperties is now called on PanGestures
Julien Heanley [Tue, 25 Mar 2014 11:21:18 +0000 (11:21 +0000)]
(PanGestures)PropertyOwner.ResetDefaultProperties is now called on PanGestures

[Issue#]   N/A
[Problem]  PanGesture properties were never being reset and so would cause constraints to be updated every update frame
[Cause]
[Solution] Implemented ResetDefaultProperties

Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
10 years ago(Properties) Fixes to Actor/ShaderEffect/ImageActor incorrectly setting properties.
Adeel Kazmi [Tue, 25 Mar 2014 17:49:04 +0000 (17:49 +0000)]
(Properties) Fixes to Actor/ShaderEffect/ImageActor incorrectly setting properties.

[Problem]  1) Actor world-scale type and name is out-of-sync.
           2) Cannot create a shader effect if geometry is not specified in script.
           3) ImageActor setting nine-patch property does not work.
[Cause]    1) Mistake in table initialisation. Table is clearer in a later patch.
           2) Only creating a shader-effect if geometry is specified.
           3) Not specifying that our values are in pixels.
[Solution] 1) Fix.
           2) Create with default geometry type.
           3) Specify that we have specified the 9-patch border in pixels.

Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
10 years ago(RenderTasks) Fixed test cases for chained framebuffers
David Steele [Mon, 24 Mar 2014 19:01:03 +0000 (19:01 +0000)]
(RenderTasks) Fixed test cases for chained framebuffers

[Issue#]       N/A
[Problem]      Test case failed after previous update
[Cause]        Not enough care and attention
[Solution]     Updated the test case to show that the framebuffer gets drawn
[Verification] Build Repo

Signed-off-by: David Steele <david.steele@partner.samsung.com>
10 years ago(RenderTask) Make FB image attachments immediately ready
David Steele [Fri, 14 Mar 2014 18:37:59 +0000 (18:37 +0000)]
(RenderTask) Make FB image attachments immediately ready

[Problem]      Image attachments rendering Framebuffers are not
immediately marked as ready.
[Cause]        Poor design
[Solution]     Ensure attachments that render FBOs are marked as ready so they can
be rendered straight away.
Stops flickering of text with snapshot view.

[Verification] Build Repo
Signed-off-by: David Steele <david.steele@partner.samsung.com>
10 years ago(Animation) Fix for issue in keyframed animation when only 1 key frame present
Julien Heanley [Mon, 24 Mar 2014 14:11:11 +0000 (14:11 +0000)]
(Animation) Fix for issue in keyframed animation when only 1 key frame present

[Issue#]   N/A
[Problem]  Keyframe was not affecting property value
[Cause]    key frames only affect property if current progress is between first and last key frame (if only 1 key frame then it uses same time for first and last)
[Solution] if progress is greater than last key frame time then set property to last key frame

Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
10 years agoImplementation of boost::any container substitute 35/17935/17
Richard Underhill [Fri, 21 Mar 2014 14:05:18 +0000 (14:05 +0000)]
Implementation of boost::any container substitute

[Issue#] N/A

[Problem]

[Cause]

[Solution]

Change-Id: I8a6ec38bc0c3932f90aff6b5debb972f2fb9fa9a
Signed-off-by: Richard Underhill <r.underhill@partner.samsung.com>
10 years ago(PropertyNotifications) Added incremental step notification 55/18255/7
Julien Heanley [Wed, 19 Mar 2014 11:42:56 +0000 (11:42 +0000)]
(PropertyNotifications) Added incremental step notification

[Issue#]   N/A
[Problem]  No simple notification for properties changing over time
[Cause]
[Solution] Added incremental step notification

Change-Id: I9ad819fb3b19b2f45f722b034412b294af038915
Signed-off-by: Julien Heanley <j.heanley@partner.samsung.com>
10 years agoUpdated non-capi public API documentation to new style. 78/18178/7
David Steele [Mon, 17 Mar 2014 17:00:38 +0000 (17:00 +0000)]
Updated non-capi public API documentation to new style.

Updated coding style guide to reflect true dali style and new doxygen
style.

Change-Id: I30e697223143d3c096885d1b542e307cc8865970
Signed-off-by: David Steele <david.steele@partner.samsung.com>
10 years agoReimplement InvertYAxis API in CameraActor. 13/18213/6
Francisco Santos [Tue, 18 Mar 2014 11:41:57 +0000 (11:41 +0000)]
Reimplement InvertYAxis API in CameraActor.

The InvertYAxis now has a slightly different meaning.
The Y invertion is done in the projection matrix.

Change-Id: I5af0b8fb0856b69787889c35ebfa7fceb07541cb
Signed-off-by: Francisco Santos <f1.santos@samsung.com>
10 years agoMake while loop a compound statement to fix code analysis warning. 61/18161/2
Francisco Santos [Mon, 17 Mar 2014 14:58:52 +0000 (14:58 +0000)]
Make while loop a compound statement to fix code analysis warning.

Change-Id: I9aab6460d5428ad23fdc933f4600d083c5dd3efb
Signed-off-by: Francisco Santos <f1.santos@samsung.com>
10 years agoUpdated CAPI documentation style. 56/18056/4
David Steele [Fri, 14 Mar 2014 11:18:53 +0000 (11:18 +0000)]
Updated CAPI documentation style.

Change-Id: Idbf19cf1fc92558e10b2c77cd03fef395225041c
Signed-off-by: David Steele <david.steele@partner.samsung.com>
10 years ago(Animation) Added component index to allow animation of separate components of a... 80/17980/5
Julien Heanley [Thu, 13 Mar 2014 11:50:05 +0000 (11:50 +0000)]
(Animation) Added component index to allow animation of separate components of a Vector

[Issue#]   N/A
[Problem]  Other than internally fixed components (e.g. POSITION_X), sub components of a Vector property could not be animated, creating a need for some properties to be split into multiple float values
[Cause]
[Solution] Added componentIndex parameter to Property() constructor

Change-Id: I82cd672301e5ac46e1a9a04a642553ca5e56d12a
Signed-off-by: Julien Heanley <j.heanley@partner.samsung.com>
10 years agoPrint the value that we are trying to find when uniform test fails. 41/17941/1
Francisco Santos [Wed, 12 Mar 2014 18:10:03 +0000 (18:10 +0000)]
Print the value that we are trying to find when uniform test fails.

Change-Id: Iaaceb6ce9431443a271d8e48bd2d79adb6aba146
Signed-off-by: Francisco Santos <f1.santos@samsung.com>
10 years agoCustom property owning objects 10/17710/16
Paul Wisbey [Fri, 7 Mar 2014 17:24:08 +0000 (17:24 +0000)]
Custom property owning objects

[Issue#]   n/a
[Problem]  There is no way of using custom properties without an actor.
[Cause]    Can't instantiate a Constrainable object.
[Solution] Add method to create Constrainable objects.

Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
Change-Id: I0233ec5621ffdbe032d2e6e6bec8ec12d2a5463f

10 years ago(Matrix) Fixing matrix multiply by quaternion 68/17868/1
David Steele [Thu, 6 Mar 2014 15:50:50 +0000 (15:50 +0000)]
(Matrix) Fixing matrix multiply by quaternion

[Issue#]       N/A
[Problem]      Last row of matrix has random values
[Cause]        It's not being initialized or written to
[Solution]     Ensure the last row is set appropriately

Change-Id: I1b5d3da3d970b7c311ead4203eb197d11d52ccd7
Signed-off-by: David Steele <david.steele@partner.samsung.com>
10 years agoRemoved legacy resource tracking / logging 60/17760/4
Richard Underhill [Mon, 10 Mar 2014 10:46:09 +0000 (10:46 +0000)]
Removed legacy resource tracking / logging

[Issue#] N/A

[Problem]

[Cause]

[Solution]

Change-Id: Ia957b8c40aff77b15ee53e681a09a3dcd4d17d04
Signed-off-by: Richard Underhill <r.underhill@partner.samsung.com>
10 years agoAdd DALI_COMPOSE_SHADER macro to write shader source conveniently. 72/17772/2
jonghyun.ho [Wed, 19 Feb 2014 07:44:02 +0000 (16:44 +0900)]
Add DALI_COMPOSE_SHADER macro to write shader source conveniently.

[Issue]    N/A
[Problem]  We normally use double quotation marks to write a string such as "Hello World".
           However many symbols are needed to add multiple lines of string.
[Cause]    We don't want to write quotation marks at every line.
[Solution] Add DALI_COMPOSE_SHADER macro to write shader source conveniently.

Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
Change-Id: I4862e9723a9b16a591385d0f6dd25b5fbbe96b67

10 years agoMerge "Print line numbers with shader source."
Paul Wisbey [Mon, 10 Mar 2014 17:19:21 +0000 (10:19 -0700)]
Merge "Print line numbers with shader source."

10 years agoPrint line numbers with shader source. 69/17769/1
Francisco Santos [Thu, 27 Feb 2014 17:39:00 +0000 (17:39 +0000)]
Print line numbers with shader source.

Change-Id: I9729b9bf75d5082e0a3be5a5a194e4afe0ede8c6
Signed-off-by: Francisco Santos <f1.santos@samsung.com>
10 years agoChanged view matrix calculation to fix related problems. 62/17762/1
Francisco Santos [Mon, 10 Mar 2014 10:50:52 +0000 (10:50 +0000)]
Changed view matrix calculation to fix related problems.

Changed the view matrix to be the inverse of the Camera View matrix in the FREE_LOOK camera.
Updated the LOOK_AT view matrix to match an equivalent FREE_LOOK camera.
Updated sorting of renderables to work with the new view space.
Updated shader viewport uniform translation to match new view space.

Change-Id: Ideeacd1990ee4ebde715362e8006b0f2adebda91
Signed-off-by: Francisco Santos <f1.santos@samsung.com>
10 years agoClamp text shadow offset to limit clipping and/or bleeding of the shadow 02/17702/1
Javon Prince [Thu, 6 Mar 2014 11:05:15 +0000 (11:05 +0000)]
Clamp text shadow offset to limit clipping and/or bleeding of the shadow

[Issue#] P140304-04522

[Problem] If the shadow offset value is too large artifacts can be seen.

[Cause] Range of values is relative to the font point size.

[Solution] Clamp the shadow offset value internally.

Change-Id: Idb26ac962b08fc302988d1ea101962e637ed1e44
Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
10 years ago(PropertyRegistration) Moved enums outside of PropertyRegistration class. 01/17701/1
Adeel Kazmi [Thu, 6 Mar 2014 15:53:52 +0000 (15:53 +0000)]
(PropertyRegistration) Moved enums outside of PropertyRegistration class.

[Issue#]   N/A
[Problem]  PropertyRegistration is not in CAPI but the enum is being used by Toolkit headers that
           are in CAPI.
[Cause]    N/A
[Solution] Move the enum outside of CAPI as we do not want to include type-registry in CAPI yet.

Change-Id: Iabc97d6257c1bac1870dab5084a1c9a53d3fad7e
Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
10 years agoInline default layer sort function to avoid unnecessary function call 21/17221/1
Kimmo Hoikka [Fri, 28 Feb 2014 15:12:59 +0000 (15:12 +0000)]
Inline default layer sort function to avoid unnecessary function call

[Issue#] N/A
[Problem]
[Cause]
[Solution] inline it and make layer aware when default function is used

Change-Id: Ic5376536a9a0925dcfab71aa02f9a0c0a337ab1e
Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
10 years agoRemove redundant Core::SendEvent() & NotificationEvent 20/17220/1
Paul Wisbey [Tue, 4 Mar 2014 11:14:28 +0000 (11:14 +0000)]
Remove redundant Core::SendEvent() & NotificationEvent

[Issue#]   N/A
[Problem]  Notification event is redundant
[Cause]    Previously there was no way of telling Core to process events,
except by sending an event.
[Solution] Use the ProcessEvents() method, which was separated from Core::SendEvent()

Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
Change-Id: I3ae05b53931a685c59b5b0e2a449c633901d7ede

10 years agoEmscripten/llvm related issues 54/17154/1
Lee Morgan [Mon, 3 Mar 2014 12:57:20 +0000 (12:57 +0000)]
Emscripten/llvm related issues

[Issue] N/A
[Problem] Emscripten/llvm patch (f33bf99) highlighted issues
[Cause] N/A
[Solution] N/A

Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
Change-Id: I625e1cd852bf199b5bea261581c71ae4d0ff83e2

10 years agoEmscripten workarounds and llvm syntax fixes
Lee Morgan [Tue, 17 Dec 2013 18:10:26 +0000 (18:10 +0000)]
Emscripten workarounds and llvm syntax fixes

[Issue] N/A
[Problem] N/A
[Cause] N/A
[Solution] N/A

10 years ago(Properties) Added ability to add non-animatable event-thread only properties via...
Adeel Kazmi [Tue, 18 Feb 2014 17:27:45 +0000 (17:27 +0000)]
(Properties) Added ability to add non-animatable event-thread only properties via type-registry

[Issue#]   N/A
[Problem]  1) Toolkit in particular, but objects in general have several properties which do not
              require any instance on the update-thread. This was partly why the OnPropertySet()
              virtual method was added to CustomActor but this is intrinsically broken as the same
              property could be set indirectly from the OnPropertySet() method which could cause
              an unwanted loop.
           2) Additionally, due to the change of property numbers where there are numerical gaps
              between base and derived class properties, it has become quite difficult to retrieve
              all properties for a certain class/object.
[Cause]    N/A
[Solution] 1) A property registration system has been introduced which allows properties to be
              dynamically added to a class on library load time (using the type-registry).
              Upon registration, a getter and setter is specified.
              Number ranges are used for property indices to distinguish between property types:
               - Default Properties range from 0 to 10000000.
               - Currently, event-only properties use 10000000 to 19999999.
               - Custom properties are anything equal to or greater than 50000000.
           2) Added a method to Object which retrieves a container of all the indices that an
              object has. Only the indices are required as the name, type etc. can be retrieved by
              using existing methods (if the index is known).

Change-Id: Icd477996465a4fb291f446feffa65ce2eb8c9120

10 years ago(KeyEvents) Removing deprecated and unused KeyEvents
Agnelo Vaz [Fri, 28 Feb 2014 10:34:02 +0000 (10:34 +0000)]
(KeyEvents) Removing deprecated and unused KeyEvents

[Issue#] N/A
[Problem] N/A
[Cause] N/A
[Solution] Removing Deprecated parts of KeyEvent
           Removing cursorOffset and numberOfCharacters memebers variables as not used
[Verification] Build Repo

10 years ago(PropertyNotifications) Fixed TET issue
Julien Heanley [Fri, 28 Feb 2014 10:49:52 +0000 (10:49 +0000)]
(PropertyNotifications) Fixed TET issue

[Issue#]   N/A
[Problem]
[Cause]
[Solution]

Change-Id: I6bb009706f17807873d6757c77c671a40f509474

10 years agoFix the renderable visibility checking and its relationship with render once
Kimmo Hoikka [Thu, 27 Feb 2014 17:46:05 +0000 (17:46 +0000)]
Fix the renderable visibility checking and its relationship with render once

[Issue#] N/A
[Problem] incorrect algorithm
[Cause]
[Solution] fix the logic and clarify

Change-Id: I7114e35209f8a11d4f9e5c6aaa619b1744b20015

10 years agoHide the sort function implementation and remove the unused functions.
Francisco Santos [Thu, 27 Feb 2014 18:44:08 +0000 (18:44 +0000)]
Hide the sort function implementation and remove the unused functions.

[Issue#] (N/A)

[Problem]

[Cause]

[Solution]

10 years ago(PropertyNotification) Added conditions to allow checking of a specific vector components
Julien Heanley [Tue, 25 Feb 2014 10:33:56 +0000 (10:33 +0000)]
(PropertyNotification) Added conditions to allow checking of a specific vector components

[Issue#]   N/A
[Problem]  N/A
[Cause]    N/A
[Solution] N/A

Change-Id: I468b57fb1deb46a711073d0d578c2da9f475f66a

10 years ago(ImageSize) Add natural image size handling
David Steele [Tue, 25 Feb 2014 13:25:04 +0000 (13:25 +0000)]
(ImageSize) Add natural image size handling

[Issue#]       N/A
[Problem]      Need a way of switching actor between natural image size and
constrained, animated or set size.
[Cause]        Natural image size not handled correctly
[Solution]     Add mechanism to switch to natural size, (using existing
Actor::SetSize() will override this)
[Verification] Build Repo

Change-Id: Id4641d87bc8de68e613a0e10d8dddf26cddae9fb
Signed-off-by: David Steele <david.steele@partner.samsung.com>
10 years ago(ImageLoader) Added synchronous method to get closest image size
David Steele [Wed, 19 Feb 2014 20:43:47 +0000 (20:43 +0000)]
(ImageLoader) Added synchronous method to get closest image size

[Issue#]       N/A
[Problem]      Can't synchronously determine what the loaded image size will be
[Cause]        Not implemented
[Solution]     Added a new method to the platform abstraction to get the closest
size for a given requested size and orientation correction.
Changed image implementation to set the correct image size on creation.

Change-Id: I7dab185ecc18e6f8605a3c3996d6586c47e5fb6e
[Verification] Build Repo
Signed-off-by: David Steele <david.steele@partner.samsung.com>
10 years ago(Images) Reducing thread tennis
David Steele [Mon, 17 Feb 2014 20:16:48 +0000 (20:16 +0000)]
(Images) Reducing thread tennis

[Issue#]       N/A
[Problem]      Non-loaded images do not get size set immediately, and
rely on messages from update thread to update their size.
[Cause]        N/A
[Solution]     Store image size in image base class and in created ticket's image
attributes. Remove message notification of creation of bitmaps, native images and framebuffers
where the size is already known.

This will also prevent LoadingFinished signal from being sent for
bitmaps, native images and framebuffers that are created directly.
LoadingFinished will only be sent for images created from filenames.

On adding images to image-actors, only listens to LoadingFinished signal if the image
has a filename, otherwise it uses the known size.

Change-Id: Ie08a0c9070d903b87447841af8ddc1da0234a51f
Signed-off-by: David Steele <david.steele@partner.samsung.com>
10 years ago[SRUK] Initial copy from Tizen 2.2 version
Paul Wisbey [Mon, 3 Mar 2014 18:14:45 +0000 (18:14 +0000)]
[SRUK] Initial copy from Tizen 2.2 version

Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>
Change-Id: I34519cb86d06e4edd581a5ff010224e96d702aab

10 years agoInitial empty repository
Sehong Na [Sun, 16 Feb 2014 23:48:25 +0000 (15:48 -0800)]
Initial empty repository