diff options
author | Pawel Andruszkiewicz <p.andruszkie@samsung.com> | 2017-06-12 10:31:00 +0200 |
---|---|---|
committer | Kangho Hur <kangho.hur@samsung.com> | 2017-07-10 11:11:28 +0900 |
commit | 284e3e2404f18ee486160fcde9d370e02047b28a (patch) | |
tree | c3cf769111e5054b164f3cc74b4b3258b1698ec2 | |
parent | 0797bfc37545d5f43741fe63027d72b410d52852 (diff) | |
download | xamarin-forms-284e3e2404f18ee486160fcde9d370e02047b28a.tar.gz xamarin-forms-284e3e2404f18ee486160fcde9d370e02047b28a.tar.bz2 xamarin-forms-284e3e2404f18ee486160fcde9d370e02047b28a.zip |
Initialize Button with single batch update
Change-Id: Id34604e0d228b9d94395f432471ff272eb7e251f
Signed-off-by: Pawel Andruszkiewicz <p.andruszkie@samsung.com>
-rw-r--r-- | Xamarin.Forms.Platform.Tizen/Native/Button.cs | 12 | ||||
-rw-r--r-- | Xamarin.Forms.Platform.Tizen/Renderers/ButtonRenderer.cs | 8 |
2 files changed, 18 insertions, 2 deletions
diff --git a/Xamarin.Forms.Platform.Tizen/Native/Button.cs b/Xamarin.Forms.Platform.Tizen/Native/Button.cs index a3f36a4b..5985c58b 100644 --- a/Xamarin.Forms.Platform.Tizen/Native/Button.cs +++ b/Xamarin.Forms.Platform.Tizen/Native/Button.cs @@ -10,7 +10,7 @@ namespace Xamarin.Forms.Platform.Tizen.Native /// Extends the EButton control, providing basic formatting features, /// i.e. font color, size, additional image. /// </summary> - public class Button : EButton, IMeasurable + public class Button : EButton, IMeasurable, IBatchable { /// <summary> /// Holds the formatted text of the button. @@ -192,12 +192,20 @@ namespace Xamarin.Forms.Platform.Tizen.Native } } + void IBatchable.OnBatchCommitted() + { + ApplyTextAndStyle(); + } + /// <summary> /// Applies the button's text and its style. /// </summary> void ApplyTextAndStyle() { - SetInternalTextAndStyle(_span.GetDecoratedText(), _span.GetStyle()); + if (!this.IsBatched()) + { + SetInternalTextAndStyle(_span.GetDecoratedText(), _span.GetStyle()); + } } /// <summary> diff --git a/Xamarin.Forms.Platform.Tizen/Renderers/ButtonRenderer.cs b/Xamarin.Forms.Platform.Tizen/Renderers/ButtonRenderer.cs index 97b07bb7..483fcebc 100644 --- a/Xamarin.Forms.Platform.Tizen/Renderers/ButtonRenderer.cs +++ b/Xamarin.Forms.Platform.Tizen/Renderers/ButtonRenderer.cs @@ -1,4 +1,5 @@ using System; +using Xamarin.Forms.Platform.Tizen.Native; using Specific = Xamarin.Forms.PlatformConfiguration.TizenSpecific.VisualElement; namespace Xamarin.Forms.Platform.Tizen @@ -37,6 +38,8 @@ namespace Xamarin.Forms.Platform.Tizen if (e.NewElement != null) { Control.Clicked += ButtonClickedHandler; + + Control.BatchBegin(); } base.OnElementChanged(e); } @@ -46,6 +49,11 @@ namespace Xamarin.Forms.Platform.Tizen return Control.Measure(Control.MinimumWidth, Control.MinimumHeight).ToDP(); } + protected override void OnElementReady() + { + Control?.BatchCommit(); + } + void ButtonClickedHandler(object sender, EventArgs e) { IButtonController btn = Element as IButtonController; |