summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.Tizen/Renderers/VisualElementRenderer.cs
diff options
context:
space:
mode:
authorSeungkeun Lee <sngn.lee@samsung.com>2017-04-19 16:30:53 +0900
committerKangho Hur <kangho.hur@samsung.com>2017-10-23 13:34:33 +0900
commitb88436b6fdb233a0e4d81a25aae5e9bd190cce71 (patch)
tree19402a59bec6ef71465121a83a66620999884fdb /Xamarin.Forms.Platform.Tizen/Renderers/VisualElementRenderer.cs
parentd8ba3bd65db1b3b98bf66af9eab7a06e62f3eac3 (diff)
downloadxamarin-forms-b88436b6fdb233a0e4d81a25aae5e9bd190cce71.tar.gz
xamarin-forms-b88436b6fdb233a0e4d81a25aae5e9bd190cce71.tar.bz2
xamarin-forms-b88436b6fdb233a0e4d81a25aae5e9bd190cce71.zip
Optimize Moved event handler
- Only enable Moved event handler when enabled transformation feature Change-Id: I2fe9f1c041290af1bde5783a47fcb0bc7ac13bd0
Diffstat (limited to 'Xamarin.Forms.Platform.Tizen/Renderers/VisualElementRenderer.cs')
-rw-r--r--Xamarin.Forms.Platform.Tizen/Renderers/VisualElementRenderer.cs24
1 files changed, 22 insertions, 2 deletions
diff --git a/Xamarin.Forms.Platform.Tizen/Renderers/VisualElementRenderer.cs b/Xamarin.Forms.Platform.Tizen/Renderers/VisualElementRenderer.cs
index 37e2a036..a103abf7 100644
--- a/Xamarin.Forms.Platform.Tizen/Renderers/VisualElementRenderer.cs
+++ b/Xamarin.Forms.Platform.Tizen/Renderers/VisualElementRenderer.cs
@@ -45,6 +45,7 @@ namespace Xamarin.Forms.Platform.Tizen
HashSet<string> _batchedProperties = new HashSet<string>();
int _layoutCallback = 0;
+ bool _movedCallbackEnabled = false;
/// <summary>
/// Default constructor.
@@ -426,7 +427,10 @@ namespace Xamarin.Forms.Platform.Tizen
{
if (NativeView != null)
{
- NativeView.Moved -= OnMoved;
+ if (_movedCallbackEnabled)
+ {
+ NativeView.Moved -= OnMoved;
+ }
NativeView.Deleted -= NativeViewDeleted;
}
@@ -442,7 +446,10 @@ namespace Xamarin.Forms.Platform.Tizen
if (NativeView != null)
{
NativeView.Deleted += NativeViewDeleted;
- NativeView.Moved += OnMoved;
+ if (_movedCallbackEnabled)
+ {
+ NativeView.Moved += OnMoved;
+ }
}
widget = NativeView as Widget;
@@ -1002,6 +1009,19 @@ namespace Xamarin.Forms.Platform.Tizen
if (changed)
{
NativeView.EvasMap = map;
+ if (!_movedCallbackEnabled)
+ {
+ _movedCallbackEnabled = true;
+ NativeView.Moved += OnMoved;
+ }
+ }
+ else
+ {
+ if (_movedCallbackEnabled)
+ {
+ _movedCallbackEnabled = false;
+ NativeView.Moved -= OnMoved;
+ }
}
}
EFocusDirection ConvertToNativeFocusDirection(string direction) {