using ElmSharp; namespace Xamarin.Forms.Platform.Tizen { /// /// Base class for view renderers. /// public abstract class ViewRenderer : VisualElementRenderer where TView : View where TNativeView : EvasObject { GestureDetector _gestureDetector; /// /// Default constructor. /// protected ViewRenderer() { } protected override void OnElementChanged(ElementChangedEventArgs e) { base.OnElementChanged(e); if (e.OldElement != null) { _gestureDetector.Clear(); _gestureDetector = null; } if (e.NewElement != null) { _gestureDetector = new GestureDetector(this); } } /// /// Native control associated with this renderer. /// public TNativeView Control { get { return (TNativeView)NativeView; } } protected override void ApplyTransformation() { base.ApplyTransformation(); _gestureDetector?.UpdateHitBox(); } } }