[UnmanagedFunctionPointer(CallingConvention.StdCall)]
private delegate void DetectedCallbackType(IntPtr actor, IntPtr longPressGesture);
private DetectedCallbackType _detectedCallback;
- private LongPressGestureDetectedSignal detectedSignal;
/// <summary>
/// This signal is emitted when the specified long press is detected on the attached view.
if (_detectedEventHandler == null)
{
_detectedCallback = OnLongPressGestureDetected;
- detectedSignal = DetectedSignal();
- detectedSignal.Connect(_detectedCallback);
+ DetectedSignal().Connect(_detectedCallback);
}
_detectedEventHandler += value;
{
_detectedEventHandler -= value;
- if (_detectedEventHandler == null && detectedSignal?.Empty() == false)
+ if (_detectedEventHandler == null && DetectedSignal().Empty() == false)
{
- detectedSignal.Disconnect(_detectedCallback);
- detectedSignal.Dispose();
- detectedSignal = null;
+ DetectedSignal().Disconnect(_detectedCallback);
}
}
}
[EditorBrowsable(EditorBrowsableState.Never)]
protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr)
{
- if (_detectedEventHandler == null && detectedSignal?.Empty() == false)
+ if (_detectedEventHandler == null && DetectedSignal().Empty() == false)
{
- detectedSignal.Disconnect(_detectedCallback);
- detectedSignal.Dispose();
- detectedSignal = null;
+ DetectedSignal().Disconnect(_detectedCallback);
}
Interop.LongPressGestureDetector.DeleteLongPressGestureDetector(swigCPtr);
}