protected PenPointer internalReturnPenPointer(PenPointer pointer) { var newPointer = penPool.Get(); newPointer.CopyFrom(pointer); newPointer.Flags |= Pointer.FLAG_RETURNED; addPointer(newPointer); if ((newPointer.Buttons & Pointer.PointerButtonState.AnyButtonPressed) != 0) { // Adding down state this frame newPointer.Buttons = PointerUtils.DownPressedButtons(newPointer.Buttons); pressPointer(newPointer); } return(newPointer); }