Jaehyun Cho [Fri, 29 Mar 2024 03:49:57 +0000 (12:49 +0900)]
[NUI] Fix LottieAnimationView not to reference disposed delegate
Delegate rootCallback of LottieAnimationView is called by multi threads
for lottie dynamic properties.
This causes the following issues.
- Delegate rootCallback of disposed LottieAnimationView can be
referenced.
- Local variables in RootCallback is disposed by multi threads.
To resolve the above issues, the followings are done.
- Delegate rootCallback of LottieAnimationView is changed to be static.
- Local variables in RootCallback is not disposed.
Unsung Lee [Wed, 27 Mar 2024 06:51:24 +0000 (15:51 +0900)]
[Tizen.System.Storage] Register eventhandler if it is already existed
Register event handler in the class Storage if eventhandler is already existed.
If at least one event handler is already registered,
the API returns the storage state from a variable within the class.
Otherwise, it retrieves the status externally.
In the previous implementation, an event handler was only registered within class Storage
when it was registered for each storage ID,
and no event handler was registered within class Storage when it was registered by storage type.
As a result of that, when the USB (or SD card) was removed,
it attempted to obtain the state from outside and provided incorrect information
to the application because there is no storage already removed.
Signed-off-by: Unsung Lee <unsung.lee@samsung.com>
Jiyun Yang [Thu, 21 Mar 2024 05:21:32 +0000 (14:21 +0900)]
[NUI] WeakEvent : Modify invoke param type
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Jiyun Yang [Mon, 18 Mar 2024 11:13:14 +0000 (20:13 +0900)]
[NUI] Move WeakEvent to public and remove unused WeakEventHandler class
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Eunki, Hong [Tue, 19 Mar 2024 03:48:49 +0000 (12:48 +0900)]
[NUI][API10] Fix SVACE issue (ViewStyle.cs CopyFrom null check)
This PR is copy of #5982
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Fri, 19 Jan 2024 04:04:36 +0000 (13:04 +0900)]
[NUI][API10] Fix some memory leak codes what already fixed at API12
Let we backport some minor memory leak resolve PR what we already merged.
This PR squash 3 different patches.
---
Add some remarks at BaseHandle class about Dispose
(Follow PR #5893)
Resolve memory leak for DisposeTest sample
There was leak issue since we don't call FreeHGlobal after AllocHGlobal.
And also, let we Dispose Renderer / Geometry / Shader / TextureSet what NUI create.
Those classes memory might give confuse when we test the memory.
(Follow PR #5895)
Call Mashal.FreeHGlobal() what we allocated
Let we free allocated heap memory by Mashal.
It might cause memory leak issue if user try to use VertexBuffer.
And also, let we also fix FrameBrokerBase implementation
that might be the guideline who want to use custom Geometry class.
(Follow PR #5902)
Jiyun Yang [Thu, 14 Mar 2024 04:22:05 +0000 (13:22 +0900)]
[NUI] WeakEvent : Improve clean-up condition
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Eunki Hong [Fri, 19 Jan 2024 01:28:11 +0000 (10:28 +0900)]
[NUI][API10] Fix some incorrect implements when we get Texture relative items
Since now we have a unified pattern to avoid memory leak problem
between NUI and Native side handle count problem,
Let we change some mis-implementated codes relative with Texture.
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
huiyu [Wed, 13 Mar 2024 05:14:47 +0000 (14:14 +0900)]
[NUI.Scene3D] Add Rotation constructor using pitch,yaw,roll (#5996)
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
Eunki Hong [Tue, 14 Nov 2023 15:39:16 +0000 (00:39 +0900)]
[NUI] Remove old frame range if we set marker + Minor fix up when marker invalid
LottieAnimationView cache both frame range as int, and marker.
But two API set same property - PlayRange.
So if some code like below thing was not working well
```
// Let "marker" frame range is 10~20
lottieView.SetMinMaxFrame(30, 40); // play range become 30~40
lottieView.SetMinMaxFrameByMarker(marker); // play range become 10~20
lottieView.SetMinMaxFrame(30, 40); // play range need to be 30~40 again, but it didn't due to the cache.
```
To avoid like above case, let we clean cache explicit parameter.
Also, Let we add some more error check if app use invalid marker
(Lottie file not loaded, or marker is invalid.)
In this case, let we just follow minMaxSetTypes.NotSetByUser logic then.
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Tue, 14 Nov 2023 09:25:53 +0000 (18:25 +0900)]
[NUI] Change SetMinAndMaxFrameByMarker behavior + Fix some async cases
Let we allow to call SetMinAndMaxFrameByMarker API even if load is not finished.
Instead, let we just call some log if the file is not loaded yet.
Plus, Some API (GetContentInfo, GetMarkerInfo) might cache wrong values
when we use async load
Before try to get correct value, let we check whether the resource is
loaded or not.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Tue, 7 Nov 2023 11:55:41 +0000 (20:55 +0900)]
[NUI] Support to get Marker list information from lottie
Let we allow to get the list of markers what current lottie image has now.
And also, Implement min/max frame index by marker, which is legacy
feature of VD FLUX code.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Jiyun Yang [Wed, 21 Feb 2024 11:22:42 +0000 (20:22 +0900)]
[NUI] Fix WeakEvent bugs
* Checks that target object is explicitly disposed but not collected yet before invoke
* Consider list item removal/addition while traversing for invoke
* WeakHandler Equal method works well in static case
* Cleanup dead handlers not everytime
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
sunghyun kim [Thu, 15 Feb 2024 08:01:10 +0000 (17:01 +0900)]
[NUI] Add GenerateUrl in Capture
Add GenerateUrl in capture.
this api for using capture.
related patches:
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-adaptor/+/306064/
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-toolkit/+/306066/
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-csharp-binder/+/306067/
dongsug.song [Thu, 15 Feb 2024 12:59:12 +0000 (21:59 +0900)]
[NUI] Fixing the defect of the outer edge of the rounded image not being smooth in the Loading animation
huayong.xu [Fri, 2 Feb 2024 11:44:55 +0000 (19:44 +0800)]
[NUI][API10] Add a WebView API for notifying orientation change.
ilho159kim [Wed, 31 Jan 2024 09:45:41 +0000 (18:45 +0900)]
[Packagemanager] Fix SetPackageManagerEventStatus (#5929)
Since native API internally unregister event and register event
so fix it to actually set event only when necessary
Signed-off-by: Ilho Kim <ilho159.kim@samsung.com>
Jiyun Yang [Tue, 30 Jan 2024 05:02:50 +0000 (14:02 +0900)]
[NUI] Add methods to modify base theme for fhub and fix bugs
* Add ThemeManager.AppendBaseTheme : It enables outer package to modify base theme
* Add SharedResourcePathExtension for xaml supporting
* Fix the bug that broken images in a theme always overwrite existing settings
* Fix the bug that cloning a view style losts SolidNull information.
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Jiyun Yang [Fri, 26 Jan 2024 10:28:32 +0000 (19:28 +0900)]
[NUI] Provide a way to enable legacy DALI StyleManager
* Related patch : https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-toolkit/+/305104/
* Related patch : https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-csharp-binder/+/305105/
Since tizen 7.0, DALI StyleManager is disabled by default.
But to support fhub properly, it's needed to provide a way to enable it.
* View/ImageView/Control are created with custom flag `DisableStyleChangeSignals` only when StyleManager is disabled (default)
* Text objects does not process font scale in NUI side when DALI StyleManager is enabled.
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Jaehyun Cho [Wed, 24 Jan 2024 09:44:22 +0000 (18:44 +0900)]
[NUI] Fix LinearLayout to update its child's MeasuredSizeHeight 0 correctly
LinearLayout updates its child's MeasuredSizeWidth 0 correctly but it
does not update its child's MeasuredSizeHeight 0 due to the range typo.
The range typo has been fixed so child's MeasuredSizeHeight 0 is also
handled correctly.
Seoyeon2Kim [Wed, 24 Jan 2024 04:15:56 +0000 (13:15 +0900)]
[NUI][API10] DetachAccessibleObject at Dispose time well (#5901)
There were several problems when we call DaliAccessibilityDetachAccessibleObject
at Dispose(bool) function
- It will detach accessibility even if view doesn't own the handle memory
- Dispose(bool) can be called at worker thread (during GC) so we need to check thread here
Make to `DaliAccessibilityDetachAccessibleObject` function at Dispose(DisposeTypes)
so that we can ensure it called at main thread clearly.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Co-authored-by: Eunki, Hong <eunkiki.hong@samsung.com>
sunghyun kim [Tue, 23 Jan 2024 10:24:57 +0000 (19:24 +0900)]
[NUI] Support CornerRadius in WebView
this patch supports cornerRadius in WebView
refer to : https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-toolkit/+/304770/
huayong.xu [Fri, 19 Jan 2024 07:09:31 +0000 (15:09 +0800)]
[NUI][API10] Create Context/CookieManager when WebView is created.
Jiyun Yang [Thu, 18 Jan 2024 06:58:36 +0000 (15:58 +0900)]
[NUI] Do not check theme applied flag when set ThemeChangeSensitive
New theme can affect to the views that were not affected by previous theme.
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Eunki, Hong [Tue, 14 Nov 2023 08:17:11 +0000 (17:17 +0900)]
[NUI.Scene3D] Fix exception when ModelNode don't have ModelNode as child
If ModelNode don't have ModelNod as child, it might have
some null handle exception when we DownCast to ModelNode.
(For example, user try to get child ModelNode, but failed.)
Currently, a lots of app don't consider ModelNode now. But in future
we might need to add something under each ModelNode.
To make Scene3D more safety, let we check null or invalidate,
and then get/set the value internally.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
seungho baek [Tue, 7 Nov 2023 11:39:44 +0000 (20:39 +0900)]
[NUI] Supports to build ModelNode Tree
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
Bowon Ryu [Fri, 29 Dec 2023 06:06:24 +0000 (15:06 +0900)]
[NUI] Fix text padding issue
This patch solves the problem that text with padding does not work in nui layout.
For text components, the control's padding is used to calculatie size in native,
so it should not be set to zero value.
This avoids setting padding to zero when it comes to text layout.
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Jaehyun Cho [Wed, 27 Dec 2023 04:15:30 +0000 (13:15 +0900)]
[NUI] Fix Navigator to support Page with Transitions
Previously, PushWithTransition and PopWithTransition did not support
Page. It supported either ContentPage or DialogPage.
Now, PushWithTransition and PopWithTransition supports Page as well.
akash1-kumar [Thu, 21 Dec 2023 13:10:22 +0000 (18:40 +0530)]
[Tizen.Network.WiFi] Add APIs for multi-scanning (#5841)
Signed-off-by: Akash Kumar <akash1.kumar@samsung.com>
Yunhee Seo [Tue, 19 Dec 2023 06:50:47 +0000 (15:50 +0900)]
[System.Feedback] Add internal API to support sound playing with priority
Allows sound feedback pattern playing with priority.
This is newly added to System.Feedback.
- public enum FeedbackFlag
-> It determines the sound play method.
- public void PlayTypeWithFlagsInternal(FeedbackType type, String pattern, FeedbackFlag flag)
-> It plays sound feedback pattern according to the FeedbackFlag value.
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
sunghyun kim [Wed, 20 Dec 2023 02:10:52 +0000 (11:10 +0900)]
[NUI] Apply CornerRadius to WidgetView
The CornerRadius function previously supported in View has been modified to also apply to WidgetView.
For this behavior, WidgetView has an internal visual and its structure is changed.
In this case, WidgetView no longer generates shaders and rendering directly.
I've added a sample for testing the corner radius.
You can use it as follows:
widgetView.CornerRadius = 22;
Haesu Gwon [Wed, 20 Dec 2023 07:51:51 +0000 (16:51 +0900)]
[MediaVision] Change feature key of inference face recognition (#5804)
* [MediaVision] Change feature key of inference face recognition
Bowon Ryu [Mon, 18 Dec 2023 10:27:33 +0000 (19:27 +0900)]
[NUI] Add AnchorColor Property
AnchorColor(or AnchorClickedColor) property is
used as the default color of the markup anchor tag.
If there is a color attribute in the markup anchor tag,
the markup attribute takes precedence.
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-toolkit/+/302984/
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-csharp-binder/+/302985/
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
seungho baek [Wed, 6 Dec 2023 06:33:49 +0000 (15:33 +0900)]
[NUI] Add DepthIndex in Material
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
huiyu [Wed, 6 Dec 2023 04:39:22 +0000 (13:39 +0900)]
[NUI] Added collider mesh support (#5782) (#5799)
* [NUI] Added collider mesh support
Model.SetColliderMesh() function allows creating and setting a collider mesh on the node of model.
Node of model is selected by name (string).
Collider mesh data consists:
List<Vector3> - list of vertices
List<int> - list of indices (3 indices are a triangle face)
* Modify issue
---------
Signed-off-by: huiyu.eun <huiyu.eun@samsung.com>
Co-authored-by: Adam Bialogonski <adam.b@samsung.com>
Wootak Jung [Mon, 4 Dec 2023 22:56:03 +0000 (07:56 +0900)]
[Bluetooth] Fix BluetoothProfileType enum mismatch issue (#5789)
BluetoothProfileType enum does not match native bt_profile_e enum.
Signed-off-by: Wootak Jung <wootak.jung@samsung.com>
seungho baek [Thu, 30 Nov 2023 02:18:55 +0000 (11:18 +0900)]
[NUI] Add SetResolution method to SceneView
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
sunghyun kim [Thu, 30 Nov 2023 03:48:29 +0000 (12:48 +0900)]
[NUI] Add EnableFrameCache in LottieAnimationView
Eunki, Hong [Fri, 24 Nov 2023 07:11:40 +0000 (16:11 +0900)]
[NUI.Scene3D][API10] Attach matched interop linker for RemoveModelPrimitive
Match valid native API for RemoveModelPrimitive
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
seungho baek [Tue, 21 Nov 2023 07:27:01 +0000 (16:27 +0900)]
[NUI] Support RootTranslationOnly option for motion capture data
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
seungho baek [Wed, 15 Nov 2023 14:36:34 +0000 (23:36 +0900)]
[NUI] Add ModelPivotPoint property
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
akash1-kumar [Wed, 15 Nov 2023 08:43:37 +0000 (14:13 +0530)]
[Tizen.Network.WiFi] Add set auto scan mode and hidden connect apis (#5730)
* Add set auto scan mode and hidden connect apis
Signed-off-by: Akash Kumar <akash1.kumar@samsung.com>
* Add auto-scan mode enum
Signed-off-by: Akash Kumar <akash1.kumar@samsung.com>
* Make enum internal type
Signed-off-by: Akash Kumar <akash1.kumar@samsung.com>
---------
Signed-off-by: Akash Kumar <akash1.kumar@samsung.com>
Yunhee Seo [Wed, 8 Nov 2023 07:07:00 +0000 (16:07 +0900)]
[System.Feedback] Add internal API to support get ids
Allows getting feedback theme id array supported.
This is newly added to System.Feedback.
- public uint[] GetThemeIdsInternal(FeedbackType type)
-> It returns the available id array defined in the conf file according to feedback type.
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
Yunhee Seo [Wed, 8 Nov 2023 04:58:33 +0000 (13:58 +0900)]
[System.Feedback] Change feedback theme api name index to id
As policies dealing with feedback themes have changed from index to id-base selection,
API naming also changed from index to id.
Feedback themes are no longer treated sequentially, also not dependent on index.
It is managed through a unique id.
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
dongsug.song [Tue, 7 Nov 2023 04:15:01 +0000 (13:15 +0900)]
[NUI] revert 'Make DaliAccessibilityDetachAccessibleObject called at main thread' and check native object
Yunhee Seo [Thu, 2 Nov 2023 12:53:34 +0000 (21:53 +0900)]
[System] Add power internal APIs
Allows using native power internal APIs.
These are newly added to System/Device/Power
- public static void ConfirmWaitCallback(UInt64 wait_callback_id)
-> It informs the deviced that it is okay to take actual action to change state.
- public static void CancelWaitCallback(UInt64 wait_callback_id)
-> It informs the deviced of that it needs to undo the current transition.
- public static int ChangeState(PowerState state, int timeout_sec)
-> It Sends a request for changing power state asynchronously with timeout sec.
- public static int CheckRebootAllowed()
-> It checks if reboot is possible on the current device state.
- public static PowerTransitionReason GetWakeupReason()
-> It returns power wake up reason.
- public static PowerLockState GetLockState(PowerLock type)
-> It returns the status of power lock(locked/unlocked).
To notify callback event, 4 types EventHandler is added.
- public static event EventHandler<PowerStateChangeRequestEventArgs> StartStateChangeRequestCallback
- public static event EventHandler<PowerStateChangeRequestEventArgs> NormalStateChangeRequestCallback
- public static event EventHandler<PowerStateChangeRequestEventArgs> SleepStateChangeRequestCallback
- public static event EventHandler<PowerStateChangeRequestEventArgs> PoweroffStateChangeRequestCallback
- public static event EventHandler<PowerStateChangeRequestEventArgs> RebootStateChangeRequestCallback
- public static event EventHandler<PowerStateChangeRequestEventArgs> ExitStateChangeRequestCallback
-> With this eventhandler, it is possible to get event from ChangeState handling.
For example,
1. Add callback event to NormalStateChangeRequestCallback.
2. Request power state change with ChangeState(PowerState.Normal, timeout_sec)
3. After power state change request done, it returns result as invoke callback event.
- public static event EventHandler<PowerStateWaitEventArgs> StartStateWaitCallback
- public static event EventHandler<PowerStateWaitEventArgs> NormalStateWaitCallback
- public static event EventHandler<PowerStateWaitEventArgs> SleepStateWaitCallback
- public static event EventHandler<PowerStateWaitEventArgs> PoweroffStateWaitCallback
- public static event EventHandler<PowerStateWaitEventArgs> RebootStateWaitCallback
- public static event EventHandler<PowerStateWaitEventArgs> ExitStateWaitCallback
-> As adding event callback to above eventhandler, it is possible to get event
when the power state changes to Specific Power state.
For example,
1. Add callback event to SleepStateWaitCallback.
2. When the power state changes to Sleep state, callback event will be invoked.
- public static event EventHandler<PowerTransientStateWaitEventArgs> TransientResumingEarlyStateWaitCallback
- public static event EventHandler<PowerTransientStateWaitEventArgs> TransientResumingStateWaitCallback
- public static event EventHandler<PowerTransientStateWaitEventArgs> TransientResumingLateStateWaitCallback
- public static event EventHandler<PowerTransientStateWaitEventArgs> TransientSuspendingEarlyStateWaitCallback
- public static event EventHandler<PowerTransientStateWaitEventArgs> TransientSuspendingStateWaitCallback
- public static event EventHandler<PowerTransientStateWaitEventArgs> TransientSuspendingLateStateWaitCallback
-> As adding event callback to above eventhandler, it is possible to get event
during the power transition.
For example,
1. Add callback event to TransientResumingLateStateWaitCallback.
2. When the power transient state changes to ResumingLate state, callback event will be invoked.
- public static event EventHandler<PowerLockStateChangedEventArgs> CpuLockStateChangedCallback
- public static event EventHandler<PowerLockStateChangedEventArgs> DisplayNormalLockStateChangedCallback
- public static event EventHandler<PowerLockStateChangedEventArgs> DisplayDimLockStateChangedCallback
-> As adding event callback to above eventhandler, it is possible to get event
when the power lock state is changed.
For example,
1. Add callback event to DisplayNormalLockStateChangedCallback.
2. When the DisplayNormal power lock state is changed, callback event will be invoked.
To use new APIs, below enumeration is also added.
- public enum PowerTransitionReason
-> It represents power transition reason
- public enum PowerState : uint
-> It represents power state.
- public enum PowerTransientState : uint
-> It represents power transient state.
- public enum PowerLockState
-> It represents power lock state locked or unlocked.
Detailed example, information is added to API/EventHandler/Enumeration definition.
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
JongHeonChoi [Thu, 2 Nov 2023 08:58:49 +0000 (17:58 +0900)]
[Build] Create a dotnet library dir from the post script (#5709)
Eunki, Hong [Mon, 30 Oct 2023 04:49:51 +0000 (13:49 +0900)]
[NUI] Make DaliAccessibilityDetachAccessibleObject called at main thread
void Dispose(bool) can be called from worker thread, when disposing value is false.
To ensure we detach AccessibileObject in main thread, let we remove it
at Dispose(DisposeTypes), instead of Dispose(bool).
To avoid this kind of error in future, let we remove View.Dispose(bool)
and let we only use Dispose(DisposeTypes).
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
JongHeonChoi [Wed, 1 Nov 2023 08:29:43 +0000 (17:29 +0900)]
[Build] Fixed an error that could not find the dotnet_resolving.info file (#5700)
JongHeonChoi [Tue, 31 Oct 2023 05:43:36 +0000 (14:43 +0900)]
[Build] Modify build error for vconf of runtime_version (#5685)
JongHeonChoi [Tue, 31 Oct 2023 04:12:25 +0000 (13:12 +0900)]
[Build] Create vconf related to .NET as a file in RO location (#5680)
* Change the location and value for generating vconf of runtime_version
* [Build] Create vconf related to .NET as a file in RO location
Artur Świgoń [Thu, 19 Oct 2023 15:53:40 +0000 (17:53 +0200)]
[NUI][AT-SPI] Detach NUIViewAccessible in View.Dispose()
The application may crash if the View is disposed but the Accessibility
infrastructure calls one of the View methods. Detaching the
NUIViewAccessible proxy object in View.Dispose() should prevent that.
Eunki, Hong [Mon, 23 Oct 2023 02:50:27 +0000 (11:50 +0900)]
[NUI.Scene3D][API10] Bug fix when we get ModelNode from Model
Since View constructor automatically change 'PositionUsesPivotPoint' value as false,
some logic might changed when we Register ModelNode newly.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Haesu Gwon [Tue, 24 Oct 2023 07:16:00 +0000 (16:16 +0900)]
[MediaController] Fix CustomCommand crash issue (#5652)
Yunhee Seo [Thu, 19 Oct 2023 04:37:28 +0000 (13:37 +0900)]
[System.Feedback] Add feedback theme index range description
The index of sound theme range is 1 ~ N according to conf file.
This index range should be considered when using feedback theme index getter/setter.
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
sunghyun kim [Wed, 18 Oct 2023 07:14:53 +0000 (16:14 +0900)]
[NUI] Add widget list for keeping widget instance
same to this patch
https://github.com/Samsung/TizenFX/pull/5583
huayong.xu [Mon, 16 Oct 2023 02:46:38 +0000 (10:46 +0800)]
[Tizen][API10] Add WebView APIs for fullscreen, text found, etc.
Yunhee Seo [Thu, 12 Oct 2023 07:44:39 +0000 (16:44 +0900)]
[System.Feedback] Add new feedback_pattern
Below feedback pattern is supported by mapping feedback pattern id number.
- FEEDBACK_PATTERN_WELCOME
- FEEDBACK_PATTERN_AUTO_DOOR_OPEN
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
huayong.xu [Mon, 12 Jun 2023 05:51:45 +0000 (13:51 +0800)]
[NUI][API10] Unregister callbacks when passed argument is null.
This patch is merged from DevelNUI:
https://github.com/Samsung/TizenFX/pull/5329
Eunki Hong [Mon, 25 Sep 2023 16:31:44 +0000 (01:31 +0900)]
[NUI.Scene3D] CodeSync MotionData API and documents
1. Fix TCT error #5576
2. Follow some comments fix up as #5452
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Yunhee Seo [Fri, 15 Sep 2023 01:47:50 +0000 (10:47 +0900)]
[System.Feedback] Add internal API to support feedback stop by feedback type
Allows feedback stop according to feedback type.
This is newly added to System.Feedback.
- public void StopTypeInternal(FeedbackType type)
-> It stops current feedback playing according to feedback type.
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
Yunhee Seo [Thu, 14 Sep 2023 08:07:49 +0000 (17:07 +0900)]
[System.Feedback] Add new feedback_pattern to support general feedback patterns
To support general feedback patterns, newly patterns are added.
With these string pattern, it is possible to use mapped feedback patterns from libfeedback.
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
seungho baek [Wed, 30 Aug 2023 12:46:22 +0000 (21:46 +0900)]
[NUI.Scene3D] Add Shadow for a Directional Light
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Yunhee Seo [Thu, 7 Sep 2023 02:49:21 +0000 (11:49 +0900)]
[System.Feedback] Add new feedback_pattern for "da" profile
To support using new feedback_pattern for da profile,
new pattern string and id value is added to Pattern dictionary.
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
Suyeon Hwang [Thu, 7 Sep 2023 03:51:43 +0000 (12:51 +0900)]
[Tts] Add new internal API for TTS synthesized PCM (#5526)
* Add new internal method for playing mode
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
* Inherit System.EventArgs class
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
---------
Signed-off-by: Suyeon Hwang <stom.hwang@samsung.com>
Jaehyun Cho [Mon, 28 Aug 2023 11:02:39 +0000 (20:02 +0900)]
[NUI] Add SystemFontSizeChangedManager class
SystemFontSizeChangedManager is a static class which adds user handlers
to the SystemSettings.FontSizeChanged event.
It is similar to SystemFontSizeChanged class but it is a static class
and it also provides Finished event handler invoked last after all
handlers added to the SystemSettings.FontSizeChanged event are invoked.
Yunhee Seo [Mon, 21 Aug 2023 11:10:16 +0000 (20:10 +0900)]
[System.Feedback] Add privilege description to internal API for multi-theme
To call below feedback internal API, App should have accurate privilege.
Description and privilege type is added to below API.
- public void SetThemeIndexInternal(FeedbackType type, uint indexOfTheme)
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
Eunki, Hong [Wed, 5 Jul 2023 07:26:59 +0000 (16:26 +0900)]
[NUI.Scene3D] Make MotionData use Native API, instead of C#
Since we allow to use MotionData feature in dali-side, let we use it.
Now we can load motion data and blendshape animation from file asyncronously.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Fri, 16 Jun 2023 00:38:30 +0000 (09:38 +0900)]
[NUI.Scene3D] Deprecate direct accessor to motion value list
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
seungho baek [Mon, 12 Jun 2023 04:43:51 +0000 (13:43 +0900)]
[NUI] Add Directional Light
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Eunki, Hong [Wed, 21 Jun 2023 03:36:02 +0000 (12:36 +0900)]
[NUI] Add some API for KeyFrames
1. `GetKeyFrameCount()` to know how many keyframes are added.
2. `GetKeyFrame()` to know the information of specific index.
3. `SetKeyFrameValue()` to change the value for specific index.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Yunhee Seo [Wed, 9 Aug 2023 07:02:05 +0000 (16:02 +0900)]
[System.Feedback] Add internal APIs to support multi-theme sound conf usage
Allows selecting one of several theme files according to feedback type.
Now, this supports only feedback type Sound.
These are newly added to System.Feedback.
- public uint GetCountOfThemeInternal(FeedbackType type)
-> It returns count of theme which is defined conf file according to feedback type.
This indicates how many conf files are available.
- public uint GetThemeIndexInternal(FeedbackType type)
-> It returns index of theme which is selected as default according to feedback type.
- public void SetThemeIndexInternal(FeedbackType type, uint indexOfTheme)
-> It sets indexOfTheme to default conf index according to feedback type.
By calling this, feedback will use the conf file with "indexOfTheme" index.
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
Jiyun Yang [Tue, 8 Aug 2023 10:27:07 +0000 (19:27 +0900)]
[NUI] Remove strong references of text components regarding events
* Improve WeakEvent
* Lazy list initialization
* Provide count changed callback methods
* Seperate file into WeakEvent and WeakEventProxy
* Fix TextLabel, TextField, TextEditor
* Do not register event handler to the system event directly.
* Instead they use WeakEventProxy to get GCed without Dispose call.
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
hjhun [Tue, 8 Aug 2023 04:48:09 +0000 (13:48 +0900)]
[NUI.Gadget] Add a new method to load assembly (#5456)
The Load() method is added to load the assembly of the NUIGadget.
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Jaehyun Cho [Thu, 14 Jul 2022 10:13:28 +0000 (19:13 +0900)]
[NUI] Add InsetsChanged event to Window
Window insets are the inner size between window content and window edge.
Window insets are required when status bar, virtual keyboard, or
clipboard appears on window to avoid window content obscured by them.
To notify the window insets changes, InsetsChanged event is added to
Window.
Jiyun Yang [Tue, 1 Aug 2023 05:05:55 +0000 (14:05 +0900)]
[NUI] Add non-generic WeakEventProxy
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Jiyun Yang [Fri, 28 Jul 2023 05:55:30 +0000 (14:55 +0900)]
[NUI] Add WeakEventProxy class and improve invoke of WeakEvent
* WeakEventProxy : The weak event connecting to a normal event.
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Jiyun Yang [Thu, 20 Jul 2023 07:25:53 +0000 (16:25 +0900)]
[NUI] Remove RenderTask itself from the RenderTaskList when disposed
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Jaehyun Cho [Tue, 18 Jul 2023 07:16:58 +0000 (16:16 +0900)]
[NUI] Add VisibilityChanged event to Layer
To notice the visibility changes of Layer, VisibilityChanged event is
added to Layer.
sunghyun kim [Mon, 19 Jun 2023 01:39:40 +0000 (10:39 +0900)]
[NUI] Delete the used window in widget
Delete the used window so that the window can be deleted normally when deleting the widget.
this is for memory leak issue.
Seoyeon Kim [Thu, 13 Jul 2023 12:56:34 +0000 (21:56 +0900)]
[NUI] Update Font size scale again based on the updated guide
- The font size scales are changed according to the latest GUI guide.
- Five stages of Font size scale
: 87% -> 100% -> 113% -> 126% -> 140 %
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
Artur Świgoń [Tue, 11 Jul 2023 13:51:00 +0000 (15:51 +0200)]
[NUI][AT-SPI] Set focus in OnAccessibilityActivated()
This aligns the behaviour of Components (derived from CustomView), and other controls, with that
of BaseComponents (and other controls with ViewAccessibilityMode.Default, backed by the C++
accessibility implementation), which set the keyboard focus on activation. Please note that in the
latter case, the implementation of View.OnAccessibilityActivated is unused, and the unrelated method
(albeit bearing the same name) Toolkit::Control::OnAccessibilityActivated is called:
bool Control::OnAccessibilityActivated()
{
if(Toolkit::KeyboardFocusManager::Get().SetCurrentFocusActor(Self()))
{
return OnKeyboardEnter();
}
return false;
}
So, in other words, this patch makes C# controls behave in a similar manner, i.e. set the keyboard
focus on accessibility activation.
joogab.yun [Mon, 10 Jul 2023 10:50:03 +0000 (19:50 +0900)]
[NUI] Register OrientationChanged for BorderWindow.
Because if the window is rotated, we need to resize the window by recalculating the border area.
joogab.yun [Mon, 10 Jul 2023 05:45:56 +0000 (14:45 +0900)]
[NUI] Binding IsFloatingModeEnabled()
refer :
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-csharp-binder/+/295565/
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-adaptor/+/295566/
Jaehyun Cho [Mon, 10 Jul 2023 07:53:15 +0000 (16:53 +0900)]
[NUI] Fix not to propagate gesture from scrim
Scrim should block all touch and gesture events.
Therefore, gesture is also not propagated from scrim.
Jiyun Yang [Fri, 30 Jun 2023 05:42:44 +0000 (14:42 +0900)]
[NUI] Disable ThemeManager preload
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
Seoyeon Kim [Tue, 4 Jul 2023 09:15:35 +0000 (18:15 +0900)]
[NUI] Update FontSizeScale values
- Except for TV and wearable profiles, FontSizeScale values are updated.
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
seungho baek [Thu, 29 Jun 2023 05:11:25 +0000 (14:11 +0900)]
[NUI] Add ModelRoot Property in Model class
- Add ModelRoot Property to retrieve root ModelNode of the Model object.
- Change parameter name of AddModelNode and RemoveModelNode to modelNode
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Eunki, Hong [Mon, 26 Jun 2023 05:21:57 +0000 (14:21 +0900)]
[NUI][API10] Do not register events if disposed ImagView changed
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Bowon Ryu [Thu, 25 May 2023 05:09:30 +0000 (14:09 +0900)]
[NUI] Add font thread sync creation option
If sync creation is true, font thread creation guarantees syncronization with the main thread.
The main thread runs the font thread and waits,
and it wakes up upon receiving a notification from the font thread.
If it doesn't receive a notification within the specified time, it wakes up due to a timeout.
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
huayong.xu [Wed, 21 Jun 2023 08:58:16 +0000 (16:58 +0800)]
[NUI][API10] Fix a SVACE issue.
jeremy-jang [Wed, 21 Jun 2023 02:29:05 +0000 (11:29 +0900)]
[ThemeManager] Clear current theme cache when theme changed (#5320) (#5345)
* [ThemeManager] Clear current theme cache when theme changed
* Fix ThemeLoader.Dispose
---------
Signed-off-by: Sangyoon Jang <jeremy.jang@samsung.com>
huayong.xu [Mon, 12 Jun 2023 11:05:56 +0000 (19:05 +0800)]
[NUI][API10] Fix a svace issue in CustomViewRegistry.cs.
joogab.yun [Fri, 9 Jun 2023 02:12:27 +0000 (11:12 +0900)]
[NUI] Fix incorrect calculation of configGestureCount.
Eunki, Hong [Wed, 5 Apr 2023 01:55:44 +0000 (10:55 +0900)]
[NUI] Add view helper API to rotate : LookAt
Add helper API to rotate View
Note that this API change View's Orientation property
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Artur Świgoń [Wed, 31 May 2023 07:20:47 +0000 (09:20 +0200)]
[NUI][AT-SPI] Add IAtspiTable and IAtspiTableCell interfaces (#5304)
Co-authored-by: Artur Świgoń <a.swigon@samsung.com>
Eunki, Hong [Tue, 30 May 2023 09:17:11 +0000 (18:17 +0900)]
Double buffered ProcessorOnceEvent so we allow attach event during invoke
When we load cached image, `ResourceLoaded` signal invoked immediate.
So, `ResourceLoaded` can be called during `UpdateImage(object, EventArgs)`.
But since we make null after invoke + C# didn't invoke event during invoking.
That mean, attached `UpdateImage()` information disapeared.
So we need to allow `UpdateImage()` event invoke during `ProcessorOnceEvent` invoking.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
hjhun [Thu, 25 May 2023 08:09:39 +0000 (17:09 +0900)]
[NUI.Gadget] Modify NUIGadgetResourceManager class (#5238)
* Modify NUIGadgetResourceManager class
When getting the resource manager using the current culture info is failed,
the NUIGadgetResourceManager tries to get the resource manager using
the "default" string. It means using "/res/allowed/<resource>.dll" file.
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
* Modify NUIGadgetResourceManager
If getting string is failed, the resource manager should try to get
string from the default satelite assembly.
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
---------
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Artur Świgoń [Wed, 24 May 2023 04:38:42 +0000 (06:38 +0200)]
[NUI][AT-SPI] Add AccessibilityDynamicAttributes (#5299)
Co-authored-by: Artur Świgoń <a.swigon@samsung.com>
Jiyun Yang [Tue, 23 May 2023 09:04:27 +0000 (18:04 +0900)]
[NUI] Fix theme applied issue
Component style can change even if the platform theme is disabled
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>