diff options
author | Seungkeun Lee <sngn.lee@samsung.com> | 2017-04-19 16:30:53 +0900 |
---|---|---|
committer | Kangho Hur <kangho.hur@samsung.com> | 2017-04-24 13:39:50 +0900 |
commit | 8aba52dd31e29417e14df55b48a9aa5bbb2c16d9 (patch) | |
tree | 1fbec9ab9fa292c20bad0d71b02e65d6f2fac87e /Xamarin.Forms.Platform.Tizen | |
parent | f771ed39b90a9bbf4cbe2b9c1038ea84a509ff89 (diff) | |
download | xamarin-forms-8aba52dd31e29417e14df55b48a9aa5bbb2c16d9.tar.gz xamarin-forms-8aba52dd31e29417e14df55b48a9aa5bbb2c16d9.tar.bz2 xamarin-forms-8aba52dd31e29417e14df55b48a9aa5bbb2c16d9.zip |
Optimize Moved event handler
- Only enable Moved event handler when enabled transformation feature
Change-Id: I2fe9f1c041290af1bde5783a47fcb0bc7ac13bd0
Diffstat (limited to 'Xamarin.Forms.Platform.Tizen')
-rw-r--r-- | Xamarin.Forms.Platform.Tizen/Renderers/VisualElementRenderer.cs | 24 |
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) { |