Julien Heanley [Thu, 10 Jul 2014 15:12:53 +0000 (16:12 +0100)]
(Pan Gesture Prediction Tests) Added tests for pan prediction algorithms
Change-Id: I3e7c47f5198516b4c3e9fe9681db53254ad9149b
Signed-off-by: Julien Heanley <j.heanley@partner.samsung.com>
Agnelo Vaz [Mon, 7 Jul 2014 10:06:24 +0000 (11:06 +0100)]
(Image) Fix Ninepatch image to get correct child region and stretch border
[problem] Algorithm for calculating child region stops when reaches end of stretch region and regions are off by 1.
[solution] Don't break loop until found the end of both regions correctly. Fix logic for calculating regions. Create Test case.
Change-Id: I30d8e4b43c5ec04313e1523a8f633e346e273621
Signed-off-by: Agnelo Vaz <agnelo.vaz@samsung.com>
Victor Cebollada [Fri, 11 Jul 2014 08:21:18 +0000 (09:21 +0100)]
Coverage fix for test cases execute script.
*.gcno files are deleted every time the execute.sh script is run.
These files are needed to run the coverage script and they are generated only when DALi or test cases are built.
Change-Id: I7c6a4fb491d7586aff4dfc4be2c40b53f0e44bc1
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
David Steele [Thu, 10 Jul 2014 14:33:26 +0000 (15:33 +0100)]
Updated scripts for faster build/execution cycle
Added 2 options to build script to prevent cleaning down the build
area and to prevent generation of tests - this improves the cycle time
for writing/building tests
Removed old coverage data prior to executing tests - prevents large
scale output with "version mismatch" errors.
Change-Id: I86f1c37a2207bc62eda699340c37588720ed70dd
Signed-off-by: David Steele <david.steele@partner.samsung.com>
David Steele [Thu, 10 Jul 2014 13:32:10 +0000 (14:32 +0100)]
Enabled test cases to install to target.
Test cases require an install script to put them on target.
Change-Id: I13e01b4539eaa7fdb64bb05af2f144dc90c07cdd
Signed-off-by: David Steele <david.steele@partner.samsung.com>
Yan Wang [Wed, 25 Jun 2014 07:12:55 +0000 (15:12 +0800)]
Remove smack flags for Tizen 3.0.
Change-Id: I2261293e7f2554570c9c9ab5c20408965af3429b
Adeel Kazmi [Wed, 9 Jul 2014 17:03:42 +0000 (18:03 +0100)]
DALi Version 1.0.0
Change-Id: I162fa67691cad9cf74b259978793902b033ba857
Adeel Kazmi [Tue, 8 Jul 2014 11:57:45 +0000 (12:57 +0100)]
(AutomatedTests) Added a touch test for checking actors that are reparented and require leave
[problem] No test for problem fixed by:
(Touch) Ensure leave events are emitted to an actor that's detatched then re-attached to the stage in quick succession
[cause] N/A
[solution] Add a test which would have failed before the specified patch.
Change-Id: I7cb24f8617e991d454afde4ae1f30908007f76a8
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Tue, 8 Jul 2014 11:12:45 +0000 (12:12 +0100)]
(Touch) Ensure leave events are emitted to an actor that's detatched then re-attached to the stage in quick succession
[problem] The primary hit actor is removed from the stage then re-added between motion events.
[cause] Problem is that when it is removed, we have a flag to say we have disconnected
from it. Normally we set a different actor on the next touch but if we set the same
actor again, then this flag is not reset.
[solution] Reset the flag when setting the actor.
Change-Id: Ia64fe0ac91107ada391f91a7d7b3d5a7a1280e84
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
David Steele [Mon, 7 Jul 2014 19:35:36 +0000 (20:35 +0100)]
Removed synchronous image size getter
[problem] Image::New() takes 1-4ms under load
[cause] Each Image::New() calls GetClosestImageSize(), which performs
synchronous file i/o to load the image header.
[solution] Removed this call and backed off to use the requested size or the
loaded size. Application code that relies on image size being immediately set on
creation will break. (Image actors will no longer get their size set
automatically ).
Change-Id: Ide116312cf841a61e13993ff42b7c8399bb86ca7
Signed-off-by: David Steele <david.steele@partner.samsung.com>
Kimmo Hoikka [Mon, 7 Jul 2014 12:58:15 +0000 (13:58 +0100)]
Stop using raw matrix pointers directly in render thread as that can cause matrix from wrong frame to being used
Change-Id: Ie956986f048786657cc6055b87f39113bb55a54d
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Kimmo Hoikka [Mon, 7 Jul 2014 17:17:52 +0000 (18:17 +0100)]
fix the normal matrix calculation and view matrix check to send the matrix when it has not yet been sent
Change-Id: I1afc0383fc0a2712a0121328c8081f37418a6460
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
daemyung jang [Fri, 4 Jul 2014 04:48:43 +0000 (13:48 +0900)]
Fixed the build errors.
[problem] Build error with gcc4.8
[cause] No declarations were found by argument-dependent lookup at the
point of instantiation
[solution] Call the functions with this pointer.
Change-Id: Ib3aeea88f607f6d7a9f43afbaa5ca39497d9b039
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
David Steele [Tue, 1 Jul 2014 16:53:48 +0000 (17:53 +0100)]
Added pre/post render methods to GL abstraction
[problem] Metrics gathering in adaptor needs to know start and end of
frame in order to perform per-frame data gathering.
[solution] Add PreRender and PostRender calls that render thread can call
Change-Id: I84a87bdfd5dd7c26642694b25be2602dd854e0ea
Signed-off-by: David Steele <david.steele@partner.samsung.com>
Kimmo Hoikka [Tue, 1 Jul 2014 17:10:38 +0000 (18:10 +0100)]
Cleanup of the renderers and shader, reduces parameters passed to renderers and shader so saves some CPU time and ROM size, remove duplicate code.
1. move Matrix and Color uniform setters to Renderer base class (reduces the number of parameter to derived renderers)
2. rename Shader::Apply to SetUniforms and move the call to base Renderer class from (removes parameters and code duplication)
4. perform culling first in base renderer Render method so we avoid any GL state changes if renderer is culled (previously we enabled blending etc)
5. remove MVP matrix from Shader as it has no use there anymore
6. rename GetGeometryTypes to ResolveGeometryTypes as its not just-a-getter. Remove duplicate calls to it from text and mesh renderers (removes code duplication)
7. removed implementation of dynamics debug renderer as it was a uncommented hack.
Change-Id: I1bcd57c205ff54cad7f6f3fd23561d568c1d9802
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Victor Cebollada [Mon, 30 Jun 2014 13:07:13 +0000 (14:07 +0100)]
Font - Fixes some documentation issues and the pass of some parameters has been replaced from copy to const references.
Change-Id: I3a824f1ea040d4bf73ed533b5a0d94f032b1e601
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
Julien Heanley [Wed, 2 Jul 2014 14:52:56 +0000 (15:52 +0100)]
TCT Fix - Added header declaration for integration-api/input-options.h
[problem] utc-Dali-PanGestureDetector.cpp failed to build
[cause] Missing header
[solution] Included header in .cpp
Change-Id: I46a1065c56a423276bb6b5fe5a0f0cd2cecbc8a0
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Julien Heanley [Wed, 2 Jul 2014 07:30:20 +0000 (08:30 +0100)]
Pan Gesture Cleanup Move functions from profiling.h/cpp to new files input-options.h/cpp Removed backwards compatible pan gesture environment variable code since homescreen already has patch for new ones Correct references to old environment values
Change-Id: I5eb2b75fce7d4f57fa0dd4e38c3c3942379ac2b2
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Julien Heanley [Thu, 12 Jun 2014 13:40:43 +0000 (14:40 +0100)]
Pan Gesture Prediction - Added smoothing phase
Removed SimpleAverageAlgorithm, instead use:
DALI_PAN_PREDICTION_MODE=0 and DALI_PAN_SMOOTHING_MODE=1
Any prediction method can be combined with any smoothing algorithm (currently only 1 simple algorithm)
Current prediction mode is SMOOTHING_LAST_VALUE(1)
For prediction use DALI_PAN_PREDICTION_MODE=1 with DALI_PAN_PREDICTION_AMOUNT
For smoothing use DALI_PAN_SMOOTHING_MODE=1 with DALI_PAN_SMOOTHING_AMOUNT(0.0 to 1.0)
Increase DALI_PAN_PREDICTION_AMOUNT to make up for touch distance increase due to smoothing
[problem] Prediction modes are not very smooth
[cause] Prediction calculations can exagerate movement
[solution] Add smoothing phase
Change-Id: Ied98227e1dc8002be94bd0449ac09179b7125d75
Signed-off-by: Julien Heanley <j.heanley@partner.samsung.com>
Kimmo Hoikka [Mon, 30 Jun 2014 17:05:05 +0000 (18:05 +0100)]
avoid sending view and projection matrices multiple times per frame to gl programs
Reduces almost 30% of matrix sets in dali-demo (from 75k to 53k once the demo is up and running)
Change-Id: I21b6985446fb2e9d832388c0c619b0bc60c13000
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Mon, 30 Jun 2014 08:05:39 +0000 (17:05 +0900)]
(PanGesture) Ensure we do not send invalid velocities
[problem] Sometimes, the velocity is an infinite number.
[cause] In these cases, no time has passed between the current and the last velocity so time
difference is zero.
[solution] Ensure we do not divide by 0, just send a ZERO vector2 if this is the case.
Change-Id: I80c03000576a324febe0e19e257a4f095079547b
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Ferran Sole [Fri, 20 Jun 2014 08:47:07 +0000 (09:47 +0100)]
Added funcionality to play animations from an specified initial progress
[problem] Lack of functionality to play an animation from an specified
initial progress
[cause] N/A
[solution] Added new API to retrieve the current progress and to play
animations from an specified initial cursor
Change-Id: I2777961e0ae6a9b18ddb16e62920c68cb3eb39a3
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Kimmo Hoikka [Wed, 25 Jun 2014 10:58:20 +0000 (11:58 +0100)]
Guarantee notifications are served in the right order in the case that event thread did not have time to process them yet
Change-Id: I30374a8a86a93bb022ee83abe6a9459e78c9acab
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Fri, 27 Jun 2014 16:10:10 +0000 (01:10 +0900)]
(Touch) Ensure touch-events are cleared before emitting to stage and documentation update
[problem] Stage signal has the wrong touch-event information.
[cause] We change it when we emit the interrupted event for the original down actor.
[solution] Revert to original.
Change-Id: Ib93364a8df74204c5f15c8d33e264189dc1a752c
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Fri, 27 Jun 2014 12:24:19 +0000 (21:24 +0900)]
(Touch) Emit Up to down consumer (if different from current consumer)
[problem] Actor receiving touch-down may never receive touch-up and it cannot rely on leave.
[cause] Can be moved away and another actor may be hit.
[solution] Emit an Interrupted event to the touch-down actor if it's not the current one
consumed.
Change-Id: Icb59c3434eac12cffebf4d58dff9a2310764099b
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Fri, 20 Jun 2014 08:22:17 +0000 (17:22 +0900)]
(Gestures) Remove Functor usage from processors
[problem] Functor usage is confusing and they need to be stack-allocated at the start of every
gesture.
[cause] N/A
[solution] Use deriving methods instead which is a bit clearer and does not require stack allocation
when the gesture starts.
Change-Id: I099eed5677914301559c5ff7ca55a170b5a99816
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Kimmo Hoikka [Tue, 24 Jun 2014 17:22:36 +0000 (18:22 +0100)]
Prevent event thread from picking up notifications too soon
[problem] Animation-finished and property-notifications can be fired off too soon.
[cause] We queue the message from update straight away, even before the scene has been
updated.
[solution] Create another buffer in the notification-manager which is only swapped at the end
of the update.
Change-Id: I7b72fa2485ed9faa606b52a3925e111df2931776
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
David Steele [Mon, 23 Jun 2014 10:15:52 +0000 (11:15 +0100)]
Added more unit tests for NinePatchImage
Double checking the ImageActor behaviour with 9 patch images.
Change-Id: If00f9ca4425305885c965202a09d7862fe813d49
Signed-off-by: David Steele <david.steele@partner.samsung.com>
Adeel Kazmi [Tue, 24 Jun 2014 12:53:25 +0000 (21:53 +0900)]
(UpdateManager) Fire animation notifications ONLY when scene is actually updated
[problem] Timing problem where animation finsihed callbacks are emitted before the scene has
been updated.
[cause] We add messages to the event-queue before we've updated the scene. The queues can
be swapped while we're still updating and the finished callback can be then fired.
Any attempt to get current values in this callback will be from the previous frame.
[solution] Delay adding animation-finished messages to the queue till just before update ends.
Change-Id: I3c610e5139e1bfe32873cf3f85474ab7d61ed343
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Kimmo Hoikka [Sat, 21 Jun 2014 13:11:50 +0000 (14:11 +0100)]
fixing a potential memory corruption/crash if Dali::Vector is Resized before putting any elements into it
Change-Id: Idb66f6938421ca53ddc3199e0677f0bc87ceeceb
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
David Steele [Thu, 12 Jun 2014 18:11:43 +0000 (19:11 +0100)]
Added image renderer clip space culling
[problem] Render thread taking too long setting up renderers that will be clipped by GPU
[solution] Calculate which renderers are in clip space, and cull those that aren't.
Now uses OBB culling (which is relatively expensive, but still less expensive than drawing)
Adds an API to RenderTask to disable culling (enabled by default)
Change-Id: Ibe0c9c454b97fb02d8a63d17aeed9e2d4ff5d12e
Signed-off-by: David Steele <david.steele@partner.samsung.com>
David Steele [Fri, 20 Jun 2014 13:59:46 +0000 (14:59 +0100)]
Fixed segfault if nine-patch image failed to load
[problem] If nine patch image fails to load, e.g. file not found,
then empty bitmap pointer is accessed when image actor tries to use it.
[cause] Not checking bitmap pointer before dereference
[solution] Ensured bitmap pointers are checked, if NULL, then an error is logged.
Change-Id: If42d2db4f662fc2323057f71b365a741e254d125
Signed-off-by: David Steele <david.steele@partner.samsung.com>
Paul Wisbey [Thu, 19 Jun 2014 17:56:41 +0000 (18:56 +0100)]
Optimization to reduce Handle size by 50%
[problem] Memory usage is too high, event-thread operations are too heavy.
[cause] Too much Dali::Handle data copied around.
[solution] Remove all virtual methods from handles, to avoid needing a C++ vptr
Change-Id: Ib03898bc8fe073d41e5a44cc49af91958d164ee1
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Wed, 18 Jun 2014 01:17:26 +0000 (10:17 +0900)]
(HitTest) Added API to layer so that it can consume all touch if required
[problem] Currently, the only way to stop gestures being delivered to actors behind a layer is
by attaching the layer to a gesture detector which is cumbersome.
[cause] N/A
[solution] Implemented an API which allows the user to set whether a layer should consume all
touch. When this is set on a layer, any layers behind that layer are not hit-test.
Change-Id: I34468c13a3b7b5f81a53ca4746a5c97a4ece09ba
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Wed, 18 Jun 2014 02:46:59 +0000 (11:46 +0900)]
(AutomatedTests) Ensure dali automated tests can be built for target
[problem] Tests cannot be built for target on a clean gbs-root.
[cause] Missing boost-devel dependency.
[solution] Add dependency to test spec files.
Change-Id: I6f2663f281c5006eb6a54e5355cdcb2a395f2f2c
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Mon, 16 Jun 2014 08:47:08 +0000 (17:47 +0900)]
(PanGesture) Added pan velocities as a property.
[problem] Unable to use the pan velocity values in constraint.
[cause] They are not properties.
[solution] Add properties which use this.
Change-Id: I066a528ab0f56c1208e891d2f0d7a698ce09feac
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Victor Cebollada [Fri, 23 May 2014 09:50:57 +0000 (10:50 +0100)]
Any type - const getters added.
[problem] Getter methods from clases which store values inside an Any container can't be const.
[cause] Some const getters are missing in the Any class.
[solution] Add them.
Change-Id: Icdf4276a8efe31ee7d9ba3b17c3fcf075081d41d
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
Paul Wisbey [Fri, 13 Jun 2014 11:36:28 +0000 (20:36 +0900)]
Fixed RenderTask bug when source actor is off-stage.
[problem] If a render-once RenderTask's source actor is off-stage, this will cause Dali to render continuously.
[cause] The RenderTask is waiting, but not ready to render.
[solution] Change update logic to only keepUpdating if a waiting task is ready.
Change-Id: I8f6e400a4f19ba731460bcda7e9ea83bd3593268
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Richard Underhill [Thu, 22 May 2014 08:54:24 +0000 (09:54 +0100)]
(Dali-Core) Memory optimisation for Text-Styles
[problem] TextStyles create structure for all attributes, the moment
one is created taking up more memory than needed
[cause] Single structure of attributes
[solution] A container is created when attributes (or a set of attributes) are created.
Change-Id: Ibcb69df8b8f8f84ec862f295125fe0d9c83d511e
Signed-off-by: Richard Underhill <r.underhill@partner.samsung.com>
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
Agnelo Vaz [Wed, 11 Jun 2014 15:11:24 +0000 (16:11 +0100)]
Hit test algorithm fixed to traverse hit actor tree if stencil first
[problem] If stencil is added to layer before a tree of actors only the first actor in the tree will be returned, it's children will not be traversed.
[solution] Only stop traversal if current actor is a stencil and that stencil was hit, else traverse children.
Change-Id: I19bf8b3a24b2ac5629079bec7131b266db460143
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Andrew Cox [Wed, 11 Jun 2014 17:18:51 +0000 (18:18 +0100)]
Remove cropping from ImageAttributes
[problem] We have a cropping feature advertised but not used and not
really implemented so confusing potential users and wasting space in our
current builds.
[cause] No users have wanted this feature.
[solution] Remove the partial implementation of this feature.
Change-Id: I24d604c439111ed5a2048908bcdb17795d7a82df
Signed-off-by: Andrew Cox <andrew.cox@partner.samsung.com>
Xiangyin Ma [Wed, 11 Jun 2014 10:24:25 +0000 (11:24 +0100)]
(MeshActor) Add a reference to AnimatableMesh
[problem] AnimatableMesh get deleted before MeshActor
[solution] Keep a reference to the AnimatableMesh so it would not be destroyed before the MeshActor object
Change-Id: Ib56bd23ddd630e4fb25f65310bd639f76a656fa3
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Andrew Cox [Wed, 11 Jun 2014 12:55:43 +0000 (13:55 +0100)]
Document the processing pipeline applied to images at load time
[problem] Dali applications cannot use image attributes with confidence
and they are not obeyed in our image loading code.
[cause] There is no clear wording on how the use of ImageAttributes is
expected to affect the loading of images by Dali in our documentation.
[solution] Clearly lay out an order of operations and the handling of
special parameter values (zero dimensions).
Change-Id: I30399cc17dc6581606fa85886ab8b51c79e4a94f
Signed-off-by: Andrew Cox <andrew.cox@partner.samsung.com>
Adeel Kazmi [Tue, 10 Jun 2014 14:07:59 +0000 (15:07 +0100)]
(BaseObject) If type-name is not found then show a warning instead of an error
[problem] Too many error messages when launching apps that do not use the type-registry
(not an bug, apps can choose not to use it).
[solution] Change to warning.
Change-Id: I9900fcf987aa7b02a904d1f304e43f0fe7e556c5
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Fri, 6 Jun 2014 16:45:19 +0000 (17:45 +0100)]
(Gestures) Use the actor-gesture-data containers and use raw Actor pointers.
Use the containers provided by actor-gesture-data rather than checking if the actor
is available in attached detectors (should be faster).
Using raw Internal::Actor pointers instead of handles.
Removing unnecessary templates.
Next step is to remove gesture-processor functors and use deriving methods instead.
Change-Id: I130cc8cbd0dae293713b74156fcbf3c1c3eaa758
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Wed, 11 Jun 2014 10:30:33 +0000 (11:30 +0100)]
Updated spec file and removed unrequired shader binaries
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Change-Id: I5be805be1b4d8c6fe6ecd64daa9f107b8ab3b5aa
Adeel Kazmi [Fri, 6 Jun 2014 14:23:38 +0000 (15:23 +0100)]
(Gestures) Extract out GestureData from Actor
[problem] Actor is too closely coupled with gesture-detectors.
[cause] GestureData is private within Actor which stores info about gesture detection.
[solution] Move GestureData out of actor-impl.cpp and Actor provides a method to retrieve this.
Change-Id: I534723f5cfb772c88f13d2d90ab97d8c64571f8f
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
David Steele [Thu, 5 Jun 2014 16:38:59 +0000 (17:38 +0100)]
Fixed test case build & some test cases
Change-Id: Id86bef87e2f24bf4b31a02cea3358a36fd7efa32
Signed-off-by: David Steele <david.steele@partner.samsung.com>
Julien Heanley [Mon, 2 Jun 2014 19:32:43 +0000 (20:32 +0100)]
Pan Gesture Prediction - Fixed issue where initial displacement could be close to zero
This used to result in 0 pixel movement in first frame
Change-Id: Ia12ba1660a6ae8c17c8596437dfbb3be5e506fb4
Signed-off-by: Julien Heanley <j.heanley@partner.samsung.com>
Andrew Cox [Thu, 5 Jun 2014 10:23:25 +0000 (11:23 +0100)]
Image Load Cancelation - Downgrade error log to warning and note the cause of it
[problem] A rare event that will probably continue to happen until we do
some rewrites is firing as an error.
[solution] Turn error into a warning and document why it currently
Signed-off-by: Andrew Cox <andrew.cox@partner.samsung.com>
Julien Heanley [Thu, 5 Jun 2014 09:26:59 +0000 (10:26 +0100)]
Pan Gestures - Changed Pan gesture prediction amount units to millis
Instead of 0.7 the prediction amount to set should be (0.7 * 16)
Change-Id: I4cb5a10018b35ab3d2000eaf796b1c7994927dd3
Signed-off-by: Julien Heanley <j.heanley@partner.samsung.com>
Taeyoon [Tue, 3 Jun 2014 09:55:46 +0000 (18:55 +0900)]
Conversion to Apache 2.0 license
Change-Id: I841fa42a784c2ae44266b579dad04db62ad9c246
Adeel Kazmi [Wed, 4 Jun 2014 12:59:57 +0000 (13:59 +0100)]
(Gestures) Each actor is now aware of what gestures it requires which is used when hit-testing
[problem] Cannot tap anything behind invisible status bar.
[cause] Status bar consumes all gestures even though it doesn't require them.
[solution] Change the system so that actors are aware of what gestures they have so it is
possible to gesture actors behind the status bar.
Change-Id: I713c907c764445263362803a98af0fa514ffd955
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Adeel Kazmi [Wed, 4 Jun 2014 13:10:52 +0000 (14:10 +0100)]
(HitTest) Ensure we do not create Actor handles when using the hit-test callback
[problem] Whenever we call the hit-test callback, we create a temporary Actor handle which
can be quite an expensive operation (as constructors are called). We HAVE to do
this for public hit-testing, but we are paying the penalty on internal hit-testing
as well.
[cause] Using the same interface for public and internal hit-testing.
[solution] Use a functor internally which uses a specialised functor with an Actor handle for
external hit-testing and another functor for the internal hit-test which uses
an Internal::Actor* so we do not pay the penalty of creating a handle then.
Change-Id: I7bb81265b9c03aa3c7a714f0dd2ceec22e6a997b
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
jonghyun.ho [Thu, 5 Jun 2014 01:27:47 +0000 (10:27 +0900)]
Upload package dali_0.9.21
daemyung jang [Thu, 5 Jun 2014 05:38:12 +0000 (14:38 +0900)]
Change the default pan algorithm
[problem] Jitter problem is happend.
[cause] Cause by the prediction algorithm.
[solution] Use the average algorithm.
Richard Huang [Wed, 4 Jun 2014 13:04:11 +0000 (14:04 +0100)]
Fixed build error
Julien Heanley [Fri, 30 May 2014 09:30:59 +0000 (10:30 +0100)]
Pan Gesture Prediction - Added DALI_PAN_GESTURE_PREDICTION_AMOUNT environment variable
Increase how far pan gestures try to predict position 1.0f is 1 frame further ahead. Can use decimals like 0.6 or 1.3.
Change-Id: Id5ac2e6c7273e25f51d41aa16ad113ec6632256d
Signed-off-by: Julien Heanley <j.heanley@partner.samsung.com>
jonghyun.ho [Mon, 2 Jun 2014 00:36:46 +0000 (09:36 +0900)]
Upload package dali_0.9.20
jonghyun.ho [Sat, 31 May 2014 02:05:16 +0000 (11:05 +0900)]
Guard against constraint sending messages during core destruction
[cause] ProxyObject was about to send a message after core is already destroyed.
[solution] Guard against constraint sending messages during core destruction
Adeel Kazmi [Fri, 30 May 2014 10:22:56 +0000 (11:22 +0100)]
Fixed Image & Model problems with TypeRegistry
[problem] A lot of error messages shown with images & model related to type-registry which
can slow startup time due to a lot of error logging
[cause] Image types not registering with type-registry
[solution] Register with type-registry
Change-Id: Id38bf29974e672a00171ec803707ff23c1610d5a
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Julien Heanley [Fri, 30 May 2014 06:12:45 +0000 (07:12 +0100)]
PanGestures - Adjust average gesture movement for better displacement value
Change-Id: Ia5af0c9c3c5178d51449ac85f0040a821d380cbd
Signed-off-by: Julien Heanley <j.heanley@partner.samsung.com>
Julien Heanley [Tue, 22 Apr 2014 09:42:01 +0000 (10:42 +0100)]
(PanGesture) Refining of smoothing algorithms
Change-Id: I85cddd4c63f2a2ba1f38e5781717c33694a36ed1
Signed-off-by: Julien Heanley <j.heanley@partner.samsung.com>
Kimmo Hoikka [Thu, 29 May 2014 12:08:38 +0000 (13:08 +0100)]
(cleanup) Stop including std::vector directly inside dali
Change-Id: Iefe976f24129a890f645a8f33acd67153fa291d4
jonghyun.ho [Thu, 29 May 2014 01:44:08 +0000 (10:44 +0900)]
Upload package dali_0.9.19
Paul Wisbey [Wed, 28 May 2014 08:09:55 +0000 (17:09 +0900)]
Avoid showing garbage when dali-demo is launched
[problem] When window transition effect is disabled, dali-demo shows
random framebuffer contents when launched.
[cause] First glClear is delayed until renderers are ready.
[solution] Always do the first glClear regardless of renderers.
Adeel Kazmi [Tue, 10 Jun 2014 14:52:59 +0000 (15:52 +0100)]
Merge branch 'master' into tizen
Adeel Kazmi [Tue, 10 Jun 2014 14:49:22 +0000 (07:49 -0700)]
Revert "License conversion from Flora to Apache 2.0"
This reverts commit
7dcb0a38005dd8c6d71e466c1ea0ec4d7d57239f.
Change-Id: I5091ba33989ecc9707f787e0a4f7e8df3c06e24e
jonghyun.ho [Wed, 28 May 2014 01:35:54 +0000 (10:35 +0900)]
Fixed PREVENT "Using invalid iterator"
[problem] Using invalid iterator
[cause] std::vector::erase invalidates interator "iter".
then invalidated "iter" is used again in next while loop.
[solution] "iter" is set again once it's invalidated.
Jonghyun Ho [Mon, 26 May 2014 04:40:28 +0000 (13:40 +0900)]
Avoid PanGesture circular buffer overflow
[problem] ScrollView sometimes moves in the wrong direction.
[cause] Motion events received in excess of PanGesture PAN_GESTURE_HISTORY limit,
before the update-thread can process in the correct order.
[solution] Increase PAN_GESTURE_HISTORY value.
jonghyun.ho [Sat, 24 May 2014 02:31:38 +0000 (11:31 +0900)]
Upload package dali_0.9.18.
David Steele [Mon, 12 May 2014 13:23:13 +0000 (14:23 +0100)]
Added object sizes to platform abstraction in profiling section
[Problem] No measure of object sizes in object profiler
[Cause] New requirement
[Solution] Use constants to accumulate sizes of related objects (keeps number of constants small)
Added Image as a registered type (Requires that object registration is done as a second stage
process; also requires that all newly allocated objects are stored to an intrusive pointer (otherwise
signal generation creates a handle, triggers, then throws the handle away and deletes the new object...)
Change-Id: I1b9c0a427fa7b2ed67f93cde94a50377c0ed560d
[Verification] Build Repo
Signed-off-by: David Steele <david.steele@partner.samsung.com>
Adeel Kazmi [Tue, 27 May 2014 14:59:06 +0000 (15:59 +0100)]
Removed open-gles-20 dependency
jonghyun.ho [Wed, 21 May 2014 05:18:23 +0000 (14:18 +0900)]
Upload package dali-0.9.17.
Paul Wisbey [Wed, 21 May 2014 09:09:40 +0000 (18:09 +0900)]
Revert "[SRUK] Avoid creating unnecessary strings for built in shader uniforms"
[problem] Crash while registering uniforms
[cause] Invalid pointer into mExternalUniformNames std::set
[solution] Rollback to previous version (does not use std::set)
Change-Id: I63ea051fc9b7c182515463b3ad8c801eb73636b1
David Steele [Thu, 15 May 2014 19:28:33 +0000 (20:28 +0100)]
Fixed dynamic shapes using meshes.
[problem] Cloth demos crash
[cause] DynamicsShape of type mesh is using discardable meshes
[solution] Need to ensure that the meshes used for dynamics shapes are not
discardable. Needs a new API to create mesh actors from such a mesh.
(Don't want to have non-discardable meshes in public API)
New API is:
Cloth cloth = Cloth::New(width, height, numXDivisions, numYDivisions);
DynamicsShape meshShape = DynamicsShape::NewMesh( cloth );
MeshActor clothActor = MeshActor::New( cloth );
Change-Id: I5c89bfd481d6162f8f17e03710c320e8fbb249bf
Signed-off-by: David Steele <david.steele@partner.samsung.com>
jonghyun.ho [Wed, 14 May 2014 08:00:03 +0000 (17:00 +0900)]
Upload pacakge dali_0.9.16.
David Steele [Wed, 14 May 2014 17:09:07 +0000 (18:09 +0100)]
Fixed saving of models to binary format
Change-Id: I294751226e9b44adf202982eabe8907daf5069ed
Signed-off-by: David Steele <david.steele@partner.samsung.com>
Adeel Kazmi [Wed, 14 May 2014 14:56:09 +0000 (15:56 +0100)]
(Scripting) Removing const from parameters
Change-Id: Ie9d7011092e60f0b279c6e979e21260901f47d2b
Francisco Santos [Wed, 14 May 2014 13:08:35 +0000 (14:08 +0100)]
Fix color overflow in faded text.
Change-Id: I276a89f7187f9a6501013e994b7589519f234728
Signed-off-by: Francisco Santos <f1.santos@samsung.com>
Adeel Kazmi [Fri, 9 May 2014 18:05:42 +0000 (19:05 +0100)]
(Scripting) Some internal structs/templates public so that they can be re-used in toolkit
Change-Id: I08966d5ce46918957027e776450fdaebdee3c31e
Signed-off-by: Adeel Kazmi <adeel.kazmi@samsung.com>
Taeyoon [Thu, 22 May 2014 04:53:03 +0000 (13:53 +0900)]
License conversion from Flora to Apache 2.0
LICENSE file change.
Boilerplate notice changed to apply the Apache License to dali
SPEC file change.
Change-Id: I5ee51b5dcb44087a48bb81a92459bb8dfd451c2d
Taeyoon [Thu, 22 May 2014 04:16:57 +0000 (13:16 +0900)]
Revert "License conversion from Flora to Apache 2.0"
This reverts commit
df59eea2434495c32414fcf9ffafe4cb7dff5324.
Taeyoon [Thu, 22 May 2014 02:47:39 +0000 (11:47 +0900)]
License conversion from Flora to Apache 2.0
Richard Underhill [Tue, 13 May 2014 13:47:32 +0000 (14:47 +0100)]
TextParameters object now contains only the specific parameters set
[Issue#] N/A
[Problem] TextParameters contained Outline, Glow, DropShadow and Gradient
values even if some were not used.
[Cause]
[Solution] A container of Dali::Any objects describe the TextParameters
Change-Id: I73ff83b01b8e84df72f0fc3659e035c6a730d747
Signed-off-by: Richard Underhill <r.underhill@partner.samsung.com>
Kingsley Stephens [Tue, 13 May 2014 12:19:48 +0000 (13:19 +0100)]
(Image) Make Image GetWidth and GetHeight return natural size
[Issue#] N/A
[Problem] The size of the image should be available at all times
[Cause] N/A
[Solution] Make GetWidth and GetHeight return the natural size
Change-Id: I92f9374b8582c92a356abd62af277cf6b73af86c
Andrew Cox [Tue, 13 May 2014 17:14:31 +0000 (18:14 +0100)]
Revert "[SRUK] Bitmap core patch 2 of 4 - Replace all uses of the Bitmap class with new simpler type ImageData in core / adaptor communication"
This reverts commit
fffd4cca80c05dbc332a2b28ade580894a3915f3.
!! Note !! This code is good but we want to delay this series of Adaptor
changes until late May for client stability reasons.
Change-Id: I35e2c3d6940c0b531f9e47f87b15bcbc1c0abfbc
Signed-off-by: Andrew Cox <andrew.cox@partner.samsung.com>
Artem Dergachev [Thu, 17 Apr 2014 14:29:41 +0000 (18:29 +0400)]
Optimize HitTestWithinLayer (20% faster HitTest).
Whenever a temporary HitActor structure instance is created, constructor and destructor functions
are called for its .actor field.
In certain scenarios this results in creating and instantly deleting around 1000 dummy Actor
objects during a single call of HitTest().
HitTestWithinLayer is an important bottleneck in such scenarios, second only to
UpdateNodesAndAttachments (depending on the touchevent:framerate ratio).
This change makes the test around 20% faster and additionally reduces power consumption.
Change-Id: Iad9f59f39f6229516f036cc49025c2e0ef72ad3d
Paul Wisbey [Wed, 7 May 2014 12:54:28 +0000 (13:54 +0100)]
Stubbed-out Dynamics implementation to reduce binary size
[Issue#] N/A
[Problem] Binary size
[Cause] Lots of optional features built by default
[Solution] Don't build dynamics support by default. A stub API is
still provided; applications should anyway have been checking whether
DynamicsWorld was available i.e. whether bullet plugin was installed.
libdali-core.so sizes:
Before:
1.4 MB (1,433,052 bytes)
After:
1.3 MB (1,369,312 bytes)
Note - apps should check Stage::InitializeDynamics() return value, before
using any other Dynamics APIs.
/**
* @return A handle to the world object of the dynamics simulation, or an empty handle if Dynamics capable
* of supporting the requirement in config is not available on the platform.
*/
DynamicsWorld InitializeDynamics(DynamicsWorldConfig config);
David Steele [Tue, 13 May 2014 13:05:38 +0000 (14:05 +0100)]
Removing unnecessary dependencies
Change-Id: I50d11b88986777f29ca094e8934b920de136d402
Signed-off-by: David Steele <david.steele@partner.samsung.com>
Francisco Santos [Thu, 8 May 2014 15:39:21 +0000 (16:39 +0100)]
Add missing uniforms.
Change-Id: I528d0108c4bd58adeac6cbf0d64b8ef6b96ca812
Signed-off-by: Ferran Sole <ferran.sole@samsung.com>
Andrew Cox [Wed, 26 Mar 2014 11:06:55 +0000 (11:06 +0000)]
Bitmap core patch 2 of 4 - Replace all uses of the Bitmap class with new simpler type ImageData in core / adaptor communication
[Issue#] N/A
[Problem]
Bitmap is a complicated abstract base class with several
interactions across core. Exposing it to the adaptor for the simple
job of moving some pixels and metadata from disk and application
memory buffers back to the core is unnecessary complication.
[Cause]
Legacy implementation.
[Solution]
Update all users of Bitmap at the core / adaptor boundary to employ the
simpler ImageData class instead and translate that to a Bitmap within
core.
A follow-up patch moves the code for Bitmap out of integration API altogether.
http://slp-info.sec.samsung.net/gerrit/#/c/455649/
A second follow-up patch refactors Bitmap:
http://slp-info.sec.samsung.net/gerrit/#/c/460583/
Will build fine alone but needs the following adaptor patch to
send back images in ImageData objects instead of Bitmap ones:
http://slp-info.sec.samsung.net/gerrit/#/c/460595/
Toolkit TCT tests are fixed by this patch:
http://slp-info.sec.samsung.net/gerrit/#/c/477139/
Signed-off-by: Andrew Cox <andrew.cox@partner.samsung.com>
Change-Id: I6150b29121adca9c7be84b7b0620d6406d6717ca
Kimmo Hoikka [Tue, 6 May 2014 12:50:23 +0000 (13:50 +0100)]
ContextObserver removal, part II: Its gone
[Issue#] N/A
[Problem] memory consumption
[Cause] observer pattern causes classes to be virtual unnecessarily
[Solution] remove observer pattern
Change-Id: Id0223b54cf989caf12a55ccadcaf9f48dff9a5b9
Signed-off-by: Ferran Sole <ferran.sole@samsung.com>
jonghyun.ho [Wed, 7 May 2014 05:11:03 +0000 (14:11 +0900)]
Upload package dali_0.9.15.
Related packages : dali_0.9.15, dali-adaptor_0.9.15, dali-toolkit_0.9.15
Change-Id: I182f2c5a4d9ae7ad2298a48c3162e8681eebcc77
Signed-off-by: Ferran Sole <ferran.sole@samsung.com>
Kimmo Hoikka [Wed, 7 May 2014 13:18:50 +0000 (14:18 +0100)]
Fix regression by previous optimization for mDirtyFlags
[Issue#] N/A
[Problem] TextInput demo working in a funny way
[Cause] regression in flag handling
[Solution] fix it
Change-Id: I4a1b5ddf5cfabdc67d6c2148ad925e7c14be3868
Signed-off-by: Ferran Sole <ferran.sole@samsung.com>
Kingsley Stephens [Tue, 6 May 2014 12:55:26 +0000 (13:55 +0100)]
(9 patch) Make ImageActor SetImage handle 9 patch images
[Issue#] N/A
[Problem] SetImage would not load the 9 patch image
[Cause] Only ImageActor New would load the 9 patch image
[Solution] Make SetImage load the 9 patch
Change-Id: I3b8dea9aefd520dedb253671345307fff536f309
Signed-off-by: Ferran Sole <ferran.sole@samsung.com>
Kimmo Hoikka [Thu, 1 May 2014 19:29:41 +0000 (20:29 +0100)]
ContextObserver removal, part I: Program no longer is context observer
[Issue#] N/A
[Problem] too many context observers
[Cause] observer pattern
[Solution] remove observer pattern
Change-Id: Ica8dd62613d689d97b7a9846154a589f7626450d
Signed-off-by: Ferran Sole <ferran.sole@samsung.com>
Paul Wisbey [Sat, 3 May 2014 11:27:56 +0000 (12:27 +0100)]
Fix regression with BitmapImage (width/height variety)
[Issue#] N/A
[Problem] Pointer returned by BitmapImage::GetBuffer() is invalid. This only
affects the variety of BitmapImage where the data is allocated by ResourceClient.
[Cause] Regression from "[SRUK] Compressed Texture Support for Dali Core"
[Solution] Partial rollback of BitmapExternal, Integration::Bitmap etc.
Change-Id: I3480e935ce908c1ced6cd57f0df87f6072292e3b
Signed-off-by: Ferran Sole <ferran.sole@samsung.com>
Francisco Santos [Fri, 2 May 2014 14:52:18 +0000 (15:52 +0100)]
Clamp text color values to valid range.
Signed-off-by: Francisco Santos <f1.santos@samsung.com>
Kimmo Hoikka [Wed, 30 Apr 2014 15:25:05 +0000 (16:25 +0100)]
Align data members, pointers first, classes then, next built in types and flags last. saves 8 bytes per actor on desktop
Signed-off-by: Paul Wisbey <p.wisbey@samsung.com>