From 456eabebffa376663cb9b405d1ef48f22f5f3248 Mon Sep 17 00:00:00 2001 From: "joogab.yun" Date: Fri, 19 Aug 2022 15:17:32 +0900 Subject: [PATCH] [NUI] Add UpdateProperty api for BorderWindow Changing the BorderView's SizeHeight should also change the Window size. For this, we add an UpdateProperty() api. --- src/Tizen.NUI/src/public/Window/BorderWindow.cs | 11 +++++++++++ src/Tizen.NUI/src/public/Window/DefaultBorder.cs | 17 +++++++++++++---- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/src/Tizen.NUI/src/public/Window/BorderWindow.cs b/src/Tizen.NUI/src/public/Window/BorderWindow.cs index 161de37..0369b76 100755 --- a/src/Tizen.NUI/src/public/Window/BorderWindow.cs +++ b/src/Tizen.NUI/src/public/Window/BorderWindow.cs @@ -133,6 +133,17 @@ namespace Tizen.NUI { if (borderInterface != null) { + float height = 0; + if (isTop) height += topView.SizeHeight; + if (isBottom) height += bottomView.SizeHeight; + + if (height != borderHeight) + { + float diff = height - borderHeight; + borderHeight = height; + WindowSize = new Size2D(WindowSize.Width, WindowSize.Height + (int)(diff)); + } + if (minSize != borderInterface.MinSize) { using Size2D mimimumSize = new Size2D(borderInterface.MinSize.Width, borderInterface.MinSize.Height + (int)borderHeight); diff --git a/src/Tizen.NUI/src/public/Window/DefaultBorder.cs b/src/Tizen.NUI/src/public/Window/DefaultBorder.cs index 3d1d598..f7776a7 100755 --- a/src/Tizen.NUI/src/public/Window/DefaultBorder.cs +++ b/src/Tizen.NUI/src/public/Window/DefaultBorder.cs @@ -119,7 +119,7 @@ namespace Tizen.NUI /// The minimum size by which the window will small. /// [EditorBrowsable(EditorBrowsableState.Never)] - public Size2D MinSize + public Size2D MinSize { get { @@ -128,7 +128,7 @@ namespace Tizen.NUI set { minSize = value; - BorderWindow?.UpdateProperty(); + UpdateProperty(); } } @@ -145,7 +145,7 @@ namespace Tizen.NUI set { maxSize = value; - BorderWindow?.UpdateProperty(); + UpdateProperty(); } } @@ -178,10 +178,19 @@ namespace Tizen.NUI set { resizePolicy = value; - BorderWindow?.UpdateProperty(); + UpdateProperty(); } } + /// + /// Update properties + /// + [EditorBrowsable(EditorBrowsableState.Never)] + public void UpdateProperty() + { + BorderWindow?.UpdateProperty(); + } + /// /// Creates a default border -- 2.7.4