/// <summary>
        /// On pointer released
        /// </summary>
        /// <param name="updateArgs"></param>
        internal void OnReleased(XCoreWetStrokeUpdateEventArgs updateArgs)
        {
            WetStrokeStopping?.Invoke(this, updateArgs);

            if (updateArgs.Disposition == XCoreWetStrokeDisposition.Canceled)
            {
                return;
            }

            WetStrokeCompleted?.Invoke(this, updateArgs);
        }
 /// <summary>
 /// Invoke the WetStrokeStopping event
 /// </summary>
 /// <param name="updateArgs">the update arguments</param>
 protected void InvokeWetStrokeStopping(XCoreWetStrokeUpdateEventArgs updateArgs)
 {
     WetStrokeStopping?.Invoke(this, updateArgs);
 }