From: Seungkeun Lee Date: Tue, 4 Apr 2017 07:58:12 +0000 (+0900) Subject: Fix Label layout issue X-Git-Tag: accepted/tizen/4.0/unified/20170816.011313~105 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=db0caae41e1ce1f3a04e6d18fde3cda528ad8a15;p=platform%2Fupstream%2Fxamarin-forms.git Fix Label layout issue - TCAPI-2251 - This issuse was caused by wrong minimum size - Layout class was depend on request size and minium size to layouting If minium size was (0,0) layout will resize to smaller than request size So, Label should be set proper minimum size Change-Id: I895c32d26ca7b090b185f5ff3793638cec6229a2 --- diff --git a/Xamarin.Forms.Platform.Tizen/Native/Label.cs b/Xamarin.Forms.Platform.Tizen/Native/Label.cs index a75e6aa..b81a24e 100644 --- a/Xamarin.Forms.Platform.Tizen/Native/Label.cs +++ b/Xamarin.Forms.Platform.Tizen/Native/Label.cs @@ -312,32 +312,18 @@ namespace Xamarin.Forms.Platform.Tizen.Native Resize(availableWidth, size.Height); - var rawSize = Native.TextHelper.GetRawTextBlockSize(this); var formattedSize = Native.TextHelper.GetFormattedTextBlockSize(this); Resize(size.Width, size.Height); // Set bottom padding for lower case letters that have segments below the bottom line of text (g, j, p, q, y). var verticalPadding = (int)Math.Ceiling(0.05 * FontSize); - rawSize.Height += verticalPadding; formattedSize.Height += verticalPadding; // This is the EFL team's guide. // For wrap to work properly, the label must be 1 pixel larger than the size of the formatted text. - rawSize.Width += 1; formattedSize.Width += 1; - if (rawSize.Width > availableWidth) - { - return new ESize() - { - Width = formattedSize.Width, - Height = Math.Min(formattedSize.Height, Math.Max(rawSize.Height, availableHeight)), - }; - } - else - { - return formattedSize; - } + return formattedSize; } void ApplyTextAndStyle() diff --git a/Xamarin.Forms.Platform.Tizen/Renderers/LabelRenderer.cs b/Xamarin.Forms.Platform.Tizen/Renderers/LabelRenderer.cs index 49611e4..be5de86 100644 --- a/Xamarin.Forms.Platform.Tizen/Renderers/LabelRenderer.cs +++ b/Xamarin.Forms.Platform.Tizen/Renderers/LabelRenderer.cs @@ -44,7 +44,7 @@ namespace Xamarin.Forms.Platform.Tizen protected override Size MinimumSize() { - return new Size(Control.MinimumWidth, Control.MinimumHeight); + return Control.Measure(Control.MinimumWidth, Control.MinimumHeight).ToDP(); } Native.FormattedString ConvertFormattedText(FormattedString formattedString)