platform/core/csapi/tizenfx.git
6 months ago[NUI.Gadget] Modify NUIGadgetManager Implementation (#6093)
hjhun [Tue, 23 Apr 2024 06:05:10 +0000 (15:05 +0900)]
[NUI.Gadget] Modify NUIGadgetManager Implementation (#6093)

* [NUI.Gadget] Modify NUIGadget implementation

Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
* [NUI.Gadget] Use filename instead of full path

Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
* [NUI.Gadget] Add a missing exception handling

Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
---------

Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
6 months ago[NUI.Gadget] Fix NUIGadgetResourceManager (#6068)
hjhun [Wed, 17 Apr 2024 06:19:01 +0000 (15:19 +0900)]
[NUI.Gadget] Fix NUIGadgetResourceManager (#6068)

If getting the resource manager is failed, the NUIGadgeResourceManager
tries to get the resource manager from the TwoLetterISOLanguageName of
the CultureInfo.

Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
6 months ago[NUI][AT-SPI] Promote ReadingInfoTypes to Container
Artur Świgoń [Thu, 28 Mar 2024 12:47:58 +0000 (13:47 +0100)]
[NUI][AT-SPI] Promote ReadingInfoTypes to Container

This way both View and Layer can use this API.

6 months ago[NUI][AT-SPI] Remove legacy AccessibilityAttribute code
Artur Świgoń [Thu, 28 Mar 2024 12:13:28 +0000 (13:13 +0100)]
[NUI][AT-SPI] Remove legacy AccessibilityAttribute code

6 months ago[NUI] Fix View to use control-accessible State::SENSITIVE
Jaehyun Cho [Mon, 15 Apr 2024 08:11:38 +0000 (17:11 +0900)]
[NUI] Fix View to use control-accessible State::SENSITIVE

In dali-toolkit, control-accessible's State::SENSITIVE has been modified
from Actor::Property::SENSITIVE to IsHittable() && GetTouchRequired().

Unlike control-accessible, NUI View's custom Accessibility state of
Sensitive still refers Actor::Property::SENSITIVE.

So NUI View with ViewAccessibilityMode.Default's Accessibility state of
Sensitive refers IsHittable() && GetTouchRequired().

In contrast, NUI View with ViewAccessibilityMode.Custom's Accessibility
state of Sensitive refers Actor::Property::SENSITIVE.

To make them have same Sensitive value, NUI View's custom Accessibility
state of Sensitive is modified to use the value from control-accessible.

7 months ago[NUI] Fix LottieAnimationView not to reference disposed delegate
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.

7 months ago[Tizen.System.Storage] Register eventhandler if it is already existed
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>
7 months ago[NUI] WeakEvent : Modify invoke param type
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>
7 months ago[NUI] Move WeakEvent to public and remove unused WeakEventHandler class
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>
7 months ago[NUI][API10] Fix SVACE issue (ViewStyle.cs CopyFrom null check)
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>
7 months ago[NUI][API10] Fix some memory leak codes what already fixed at API12
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)

8 months ago[NUI] WeakEvent : Improve clean-up condition
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>
8 months ago[NUI][API10] Fix some incorrect implements when we get Texture relative items
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>
8 months ago[NUI.Scene3D] Add Rotation constructor using pitch,yaw,roll (#5996)
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>
8 months ago[NUI] Remove old frame range if we set marker + Minor fix up when marker invalid
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>
8 months ago[NUI] Change SetMinAndMaxFrameByMarker behavior + Fix some async cases
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>
8 months ago[NUI] Support to get Marker list information from lottie
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>
8 months ago[NUI] Fix WeakEvent bugs
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>
8 months ago[NUI] Add GenerateUrl in Capture
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/

8 months ago[NUI] Fixing the defect of the outer edge of the rounded image not being smooth in...
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

9 months ago[NUI][API10] Add a WebView API for notifying orientation change.
huayong.xu [Fri, 2 Feb 2024 11:44:55 +0000 (19:44 +0800)]
[NUI][API10] Add a WebView API for notifying orientation change.

9 months ago[Packagemanager] Fix SetPackageManagerEventStatus (#5929)
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>
9 months ago[NUI] Add methods to modify base theme for fhub and fix bugs
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>
9 months ago[NUI] Provide a way to enable legacy DALI StyleManager
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>
9 months ago[NUI] Fix LinearLayout to update its child's MeasuredSizeHeight 0 correctly
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.

9 months ago[NUI][API10] DetachAccessibleObject at Dispose time well (#5901)
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>
9 months ago[NUI] Support CornerRadius in WebView
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/

9 months ago[NUI][API10] Create Context/CookieManager when WebView is created.
huayong.xu [Fri, 19 Jan 2024 07:09:31 +0000 (15:09 +0800)]
[NUI][API10] Create Context/CookieManager when WebView is created.

9 months ago[NUI] Do not check theme applied flag when set ThemeChangeSensitive
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>
9 months ago[NUI.Scene3D] Fix exception when ModelNode don't have ModelNode as child
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>
9 months ago[NUI] Supports to build ModelNode Tree
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>
10 months ago[NUI] Fix text padding issue
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>
10 months ago[NUI] Fix Navigator to support Page with Transitions
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.

10 months ago[Tizen.Network.WiFi] Add APIs for multi-scanning (#5841)
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>
10 months ago[System.Feedback] Add internal API to support sound playing with priority
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>
10 months ago[NUI] Apply CornerRadius to WidgetView
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;

10 months ago[MediaVision] Change feature key of inference face recognition (#5804)
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

10 months ago[NUI] Add AnchorColor Property
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>
11 months ago[NUI] Add DepthIndex in Material
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>
11 months ago[NUI] Added collider mesh support (#5782) (#5799)
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>
11 months ago[Bluetooth] Fix BluetoothProfileType enum mismatch issue (#5789)
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>
11 months ago[NUI] Add SetResolution method to SceneView
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>
11 months ago[NUI] Add EnableFrameCache in LottieAnimationView
sunghyun kim [Thu, 30 Nov 2023 03:48:29 +0000 (12:48 +0900)]
[NUI] Add EnableFrameCache in LottieAnimationView

11 months ago[NUI.Scene3D][API10] Attach matched interop linker for RemoveModelPrimitive
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>
11 months ago[NUI] Support RootTranslationOnly option for motion capture data
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>
11 months ago[NUI] Add ModelPivotPoint property
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>
11 months ago[Tizen.Network.WiFi] Add set auto scan mode and hidden connect apis (#5730)
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>
12 months ago[System.Feedback] Add internal API to support get ids
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>
12 months ago[System.Feedback] Change feedback theme api name index to id
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>
12 months ago[NUI] revert 'Make DaliAccessibilityDetachAccessibleObject called at main thread...
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

12 months ago[System] Add power internal APIs
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>
12 months ago[Build] Create a dotnet library dir from the post script (#5709)
JongHeonChoi [Thu, 2 Nov 2023 08:58:49 +0000 (17:58 +0900)]
[Build] Create a dotnet library dir from the post script (#5709)

12 months ago[NUI] Make DaliAccessibilityDetachAccessibleObject called at main thread
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>
12 months ago[Build] Fixed an error that could not find the dotnet_resolving.info file (#5700)
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)

12 months ago[Build] Modify build error for vconf of runtime_version (#5685)
JongHeonChoi [Tue, 31 Oct 2023 05:43:36 +0000 (14:43 +0900)]
[Build] Modify build error for vconf of runtime_version (#5685)

12 months ago[Build] Create vconf related to .NET as a file in RO location (#5680)
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

12 months ago[NUI][AT-SPI] Detach NUIViewAccessible in View.Dispose()
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.

12 months ago[NUI.Scene3D][API10] Bug fix when we get ModelNode from Model
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>
12 months ago[MediaController] Fix CustomCommand crash issue (#5652)
Haesu Gwon [Tue, 24 Oct 2023 07:16:00 +0000 (16:16 +0900)]
[MediaController] Fix CustomCommand crash issue (#5652)

12 months ago[System.Feedback] Add feedback theme index range description
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>
12 months ago[NUI] Add widget list for keeping widget instance
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

12 months ago[Tizen][API10] Add WebView APIs for fullscreen, text found, etc.
huayong.xu [Mon, 16 Oct 2023 02:46:38 +0000 (10:46 +0800)]
[Tizen][API10] Add WebView APIs for fullscreen, text found, etc.

13 months ago[System.Feedback] Add new feedback_pattern
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>
13 months ago[NUI][API10] Unregister callbacks when passed argument is null.
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

13 months ago[NUI.Scene3D] CodeSync MotionData API and documents
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>
13 months ago[System.Feedback] Add internal API to support feedback stop by feedback type
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>
14 months ago[System.Feedback] Add new feedback_pattern to support general feedback patterns
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>
14 months ago[NUI.Scene3D] Add Shadow for a Directional Light
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>
14 months ago[System.Feedback] Add new feedback_pattern for "da" profile
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>
14 months ago[Tts] Add new internal API for TTS synthesized PCM (#5526)
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>
14 months ago[NUI] Add SystemFontSizeChangedManager class
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.

14 months ago[System.Feedback] Add privilege description to internal API for multi-theme
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>
14 months ago[NUI.Scene3D] Make MotionData use Native API, instead of C#
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>
14 months ago[NUI.Scene3D] Deprecate direct accessor to motion value list
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>
14 months ago[NUI] Add Directional Light
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>
14 months ago[NUI] Add some API for KeyFrames
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>
14 months ago[System.Feedback] Add internal APIs to support multi-theme sound conf usage
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>
15 months ago[NUI] Remove strong references of text components regarding events
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>
15 months ago[NUI.Gadget] Add a new method to load assembly (#5456)
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>
15 months ago[NUI] Add InsetsChanged event to Window
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.

15 months ago[NUI] Add non-generic WeakEventProxy
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>
15 months ago[NUI] Add WeakEventProxy class and improve invoke of WeakEvent
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>
15 months ago[NUI] Remove RenderTask itself from the RenderTaskList when disposed
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>
15 months ago[NUI] Add VisibilityChanged event to Layer
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.

15 months ago[NUI] Delete the used window in widget
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.

16 months ago[NUI] Update Font size scale again based on the updated guide
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>
16 months ago[NUI][AT-SPI] Set focus in OnAccessibilityActivated()
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.

16 months ago[NUI] Register OrientationChanged for BorderWindow.
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.

16 months ago[NUI] Binding IsFloatingModeEnabled()
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/

16 months ago[NUI] Fix not to propagate gesture from scrim
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.

16 months ago[NUI] Disable ThemeManager preload
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>
16 months ago[NUI] Update FontSizeScale values
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>
16 months ago[NUI] Add ModelRoot Property in Model class
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>
16 months ago[NUI][API10] Do not register events if disposed ImagView changed
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>
16 months ago[NUI] Add font thread sync creation option
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>
16 months ago[NUI][API10] Fix a SVACE issue.
huayong.xu [Wed, 21 Jun 2023 08:58:16 +0000 (16:58 +0800)]
[NUI][API10] Fix a SVACE issue.

16 months ago[ThemeManager] Clear current theme cache when theme changed (#5320) (#5345)
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>
17 months ago[NUI][API10] Fix a svace issue in CustomViewRegistry.cs.
huayong.xu [Mon, 12 Jun 2023 11:05:56 +0000 (19:05 +0800)]
[NUI][API10] Fix a svace issue in CustomViewRegistry.cs.

17 months ago[NUI] Fix incorrect calculation of configGestureCount.
joogab.yun [Fri, 9 Jun 2023 02:12:27 +0000 (11:12 +0900)]
[NUI] Fix incorrect calculation of configGestureCount.

17 months ago[NUI] Add view helper API to rotate : LookAt
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>