</None>
</ItemGroup>
+
+ <!--Target Name="PostBuild" AfterTargets="PostBuildEvent">
+ <Exec Command="sdb root on

sdb shell "mount -o remount,rw /"

sdb shell "rm /usr/share/dotnet.tizen/framework/*.ni.dll"

sdb push $(TargetDir)Tizen.NUI.dll /usr/share/dotnet.tizen/framework/

sdb shell "chsmack -a '_' /usr/share/dotnet.tizen/framework/Tizen.NUI.dll"

sdb shell sync
" />
+ </Target-->
+
+
+
</Project>
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.System.Information", "..\Tizen.System.Information\Tizen.System.Information.csproj", "{AD4B56C0-01B2-4ED0-9DBD-6CF233D16FF4}"
EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.Applications.ThemeManager", "..\Tizen.Applications.ThemeManager\Tizen.Applications.ThemeManager.csproj", "{F57F6911-C581-49CA-80A5-9B5DDDAE3D40}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
{AD4B56C0-01B2-4ED0-9DBD-6CF233D16FF4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AD4B56C0-01B2-4ED0-9DBD-6CF233D16FF4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AD4B56C0-01B2-4ED0-9DBD-6CF233D16FF4}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F57F6911-C581-49CA-80A5-9B5DDDAE3D40}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F57F6911-C581-49CA-80A5-9B5DDDAE3D40}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F57F6911-C581-49CA-80A5-9B5DDDAE3D40}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F57F6911-C581-49CA-80A5-9B5DDDAE3D40}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
// List of constraints
private Constraint widthConstraint = null;
private Constraint heightConstraint = null;
+
+ private Size2D internalSize2D = null;
+
static View()
{
RegisterPropertyGroup(PositionProperty, positionPropertyGroup);
{
get
{
- Size2D temp = (Size2D)GetValue(Size2DProperty);
- int width = temp.Width;
- int height = temp.Height;
+ var temp = (Size2D)GetValue(Size2DProperty);
if (this.Layout == null)
{
- if (width < 0) { width = 0; }
- if (height < 0) { height = 0; }
+ if (temp.Width < 0) { temp.Width = 0; }
+ if (temp.Height < 0) { temp.Height = 0; }
}
- return new Size2D(OnSize2DChanged, width, height);
+ return temp;
}
set
{
/// Size2DProperty
/// </summary>
[EditorBrowsable(EditorBrowsableState.Never)]
- public static readonly BindableProperty Size2DProperty = BindableProperty.Create(nameof(Size2D), typeof(Size2D), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
- {
- var view = (View)bindable;
- if (newValue != null)
+ public static readonly BindableProperty Size2DProperty = BindableProperty.Create(nameof(Size2D), typeof(Size2D), typeof(View), null,
+ propertyChanged: ((bindable, oldValue, newValue) =>
{
- Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue(new Size((Size2D)newValue)));
- view.widthPolicy = ((Size2D)newValue).Width;
- view.heightPolicy = ((Size2D)newValue).Height;
+ View view = (View)bindable;
+ if (newValue != null)
+ {
+ view.SetSize(((Size2D)newValue).Width, ((Size2D)newValue).Height, 0);
- view.layout?.RequestLayout();
- }
- }),
- defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
- {
- var view = (View)bindable;
- Size temp = new Size(0.0f, 0.0f, 0.0f);
- Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SIZE).Get(temp);
- Size2D size = new Size2D((int)temp.Width, (int)temp.Height);
- return size;
- }));
+ view.widthPolicy = ((Size2D)newValue).Width;
+ view.heightPolicy = ((Size2D)newValue).Height;
+
+ view.layout?.RequestLayout();
+ }
+ }),
+ defaultValueCreator: ((bindable) =>
+ {
+ View view = (View)bindable;
+ var tmp = new Size(0, 0, 0);
+ Object.GetProperty(view.SwigCPtr, Property.SIZE).Get(tmp);
+
+ int tmpWidth = (int)tmp?.Width;
+ int tmpHeight = (int)tmp?.Height;
+ tmp?.Dispose();
+ tmp = null;
+
+ if (view.internalSize2D == null)
+ {
+ view.internalSize2D = new Size2D(view.OnSize2DChanged, tmpWidth, tmpHeight);
+ }
+ else
+ {
+ if (view.internalSize2D.Width != tmpWidth) { view.internalSize2D.Width = tmpWidth; }
+ if (view.internalSize2D.Height != tmpHeight) { view.internalSize2D.Height = tmpHeight; }
+ }
+ return view.internalSize2D;
+ })
+ );
/// <summary>
/// OpacityProperty
var view = (View)bindable;
if (newValue != null)
{
- if((ResizePolicyType)newValue == ResizePolicyType.KeepSizeFollowingParent)
+ if ((ResizePolicyType)newValue == ResizePolicyType.KeepSizeFollowingParent)
{
- if(view.widthConstraint == null)
+ if (view.widthConstraint == null)
{
view.widthConstraint = new EqualConstraintWithParentFloat((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeWidth, View.Property.SizeWidth);
view.widthConstraint.Apply();
var view = (View)bindable;
if (newValue != null)
{
- if((ResizePolicyType)newValue == ResizePolicyType.KeepSizeFollowingParent)
+ if ((ResizePolicyType)newValue == ResizePolicyType.KeepSizeFollowingParent)
{
- if(view.heightConstraint == null)
+ if (view.heightConstraint == null)
{
view.heightConstraint = new EqualConstraintWithParentFloat((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeHeight, View.Property.SizeHeight);
view.heightConstraint.Apply();
private void OnSize2DChanged(int? width, int? height)
{
- PropertyValue temp;
+ PropertyValue temp = null;
if (width != null)
{
- temp = new Tizen.NUI.PropertyValue((float)width);
- Tizen.NUI.Object.SetProperty(this.SwigCPtr, View.Property.SizeWidth, temp);
- temp.Dispose();
+ temp = new PropertyValue((float)width);
+ Object.SetProperty(SwigCPtr, Property.SizeWidth, temp);
}
if (height != null)
{
- temp = new Tizen.NUI.PropertyValue((float)height);
- Tizen.NUI.Object.SetProperty(this.SwigCPtr, View.Property.SizeHeight, temp);
- temp.Dispose();
+ temp = new PropertyValue((float)height);
+ Object.SetProperty(SwigCPtr, Property.SizeHeight, temp);
}
+ temp?.Dispose();
}
private void OnMinimumSizeChanged(int? width, int? height)
//_mergedStyle = null;
+
+ internalSize2D?.Dispose();
if (type == DisposeTypes.Explicit)
{
*
*/
+using System;
using System.ComponentModel;
namespace Tizen.NUI
if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
}
+
+ /// <summary>
+ /// Hidden API (Inhouse API).
+ /// Dispose.
+ /// </summary>
+ /// <remarks>
+ /// Following the guide of https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/implementing-dispose.
+ /// This will replace "protected virtual void Dispose(DisposeTypes type)" which is exactly same in functionality.
+ /// </remarks>
+ /// <param name="disposing">true in order to free managed objects</param>
+ // Protected implementation of Dispose pattern.
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ protected override void Dispose(bool disposing)
+ {
+ if (disposed)
+ {
+ return;
+ }
+
+ //perform dipose here without being added to DisposeQueue.
+ if (SwigCMemOwn && SwigCPtr.Handle != IntPtr.Zero)
+ {
+ if (disposing)
+ {
+ base.Dispose(DisposeTypes.Explicit);
+ }
+ else
+ {
+ base.Dispose(DisposeTypes.Implicit);
+ }
+ }
+
+ base.Dispose(disposing);
+ }
+
+
+
/// <summary>
/// An extension to the property value class that allows us to create a
/// Property value from a C# object, for example, integer, float, or string.<br />
internal delegate void Size2DChangedCallback(int? width, int? height);
/// <summary>
+ /// Hidden API (Inhouse API).
+ /// Dispose.
+ /// </summary>
+ /// <remarks>
+ /// Following the guide of https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/implementing-dispose.
+ /// This will replace "protected virtual void Dispose(DisposeTypes type)" which is exactly same in functionality.
+ /// </remarks>
+ /// <param name="disposing">true in order to free managed objects</param>
+ // Protected implementation of Dispose pattern.
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ protected override void Dispose(bool disposing)
+ {
+ if (disposed)
+ {
+ return;
+ }
+
+ callback = null;
+
+ //perform dipose here without being added to DisposeQueue.
+ if (SwigCMemOwn && SwigCPtr.Handle != IntPtr.Zero)
+ {
+ if (disposing)
+ {
+ base.Dispose(DisposeTypes.Explicit);
+ }
+ else
+ {
+ base.Dispose(DisposeTypes.Implicit);
+ }
+ }
+
+ base.Dispose(disposing);
+ }
+
+ /// <summary>
/// The property for the width component of a size.
/// </summary>
/// <remarks>