Fix window position and size issue in low resolution. 75/313875/2 accepted/tizen/unified/20240704.075704 accepted/tizen/unified/dev/20240708.001722 accepted/tizen/unified/x/20240705.012426
authorMd. Farhan Mahtab/NC eXperience Group /SRBD/Engineer/Samsung Electronics <farhan.m1@samsung.com>
Wed, 3 Jul 2024 03:58:47 +0000 (09:58 +0600)
committerMd. Farhan Mahtab/NC eXperience Group /SRBD/Engineer/Samsung Electronics <farhan.m1@samsung.com>
Wed, 3 Jul 2024 07:03:49 +0000 (13:03 +0600)
[Problem] When opening in low resolution the window border is positioned on the left side not centered and window size is not properly adjusted according to resolution.

[Cause & Measure]
 Cause : Inside SettingViewBorder Constructor, MinSize is set to default value.
 Measure : MinSize is properly calculated according to screen size.

Change-Id: I00c2dd7c3cb0099aeec230b43cce2362592b9d8b
Signed-off-by: Md. Farhan Mahtab/NC eXperience Group /SRBD/Engineer/Samsung Electronics <farhan.m1@samsung.com>
SettingView/SettingView.cs
SettingView/SettingViewBorder.cs
packaging/org.tizen.cssettings-1.1.20.tpk

index ff1896d23628a6382c27529b76baef5526b7f461..f338a519ccbbf67cbada7a910cf2572212218f96 100644 (file)
@@ -442,7 +442,7 @@ namespace SettingView
             Size2D size = new Size2D(width, height);
             Position2D position = new Position2D((screenWidth - width) / 2, (screenHeight - height) / 2 - (int)(bottomMargin * screenHeight));
 
-            appCustomBorder = new SettingViewBorder();
+            appCustomBorder = new SettingViewBorder(new Size2D(screenWidth, screenHeight));
 
             Logger.Performance($"MAIN border");
 
index 970e9f4776fb04637049ab6b352e3f3e4064d570..1e78cb06010983bb27a78fde457ee3f52892bad4 100644 (file)
@@ -54,6 +54,17 @@ namespace SettingView
             ThemeManager.ThemeChanged += ThemeManager_ThemeChanged;
         }
 
+        public SettingViewBorder(Size2D screenSize) : base()
+        {
+            ResizePolicy = Window.BorderResizePolicyType.Free;
+            float minWidthRatio = 712.0f / 1920;
+            float minHeightRatio = 488.0f / 1080;
+            int minWidth = (int)(screenSize.Width * minWidthRatio);
+            int minHeight = (int)(screenSize.Height * minHeightRatio);
+            MinSize = new Size2D(minWidth, minHeight);
+            ThemeManager.ThemeChanged += ThemeManager_ThemeChanged;
+        }
+
         private void ThemeManager_ThemeChanged(object sender, ThemeChangedEventArgs e)
         {
             if (borderView == null)
index 26e90cb12bc843f655cffb3f3b75e44fbc8e7855..16056e26ee6c4f6e49e626693a60fe2d184cae01 100644 (file)
Binary files a/packaging/org.tizen.cssettings-1.1.20.tpk and b/packaging/org.tizen.cssettings-1.1.20.tpk differ