public void move(
      RectF rect,
      float x,
      float y,
      RectF bounds,
      int viewWidth,
      int viewHeight,
      float snapMargin,
      boolean fixedAspectRatio,
      float aspectRatio) {

    // Adjust the coordinates for the finger position's offset (i.e. the
    // distance from the initial touch to the precise handle location).
    // We want to maintain the initial touch's distance to the pressed
    // handle so that the crop window size does not "jump".
    float adjX = x + mTouchOffset.x;
    float adjY = y + mTouchOffset.y;

    if (mType == Type.CENTER) {
      moveCenter(rect, adjX, adjY, bounds, viewWidth, viewHeight, snapMargin);
    } else {
      if (fixedAspectRatio) {
        moveSizeWithFixedAspectRatio(
            rect, adjX, adjY, bounds, viewWidth, viewHeight, snapMargin, aspectRatio);
      } else {
        moveSizeWithFreeAspectRatio(rect, adjX, adjY, bounds, viewWidth, viewHeight, snapMargin);
      }
    }
  }
Updates the crop window by change in the toch location.<br>
Move type handled by this instance, as initialized in creation, affects how the change in toch
location changes the crop window position and size.<br>
After the crop window position/size is changed by toch move it may result in values that
vialate contraints: outside the bounds of the shown bitmap, smaller/larger than min/max size or
missmatch in aspect ratio. So a series of fixes is executed on "secondary" edges to adjust it
by the "primary" edge movement.<br>
Primary is the edge directly affected by move type, secondary is the other edge.<br>
The crop window is changed by directly setting the Edge coordinates.

@param x the new x-coordinate of this handle
@param y the new y-coordinate of this handle
@param bounds the bounding rectangle of the image
@param viewWidth The bounding image view width used to know the crop overlay is at view edges.
@param viewHeight The bounding image view height used to know the crop overlay is at view
    edges.
@param parentView the parent View containing the image
@param snapMargin the maximum distance (in pixels) at which the crop window should snap to the
    image
@param fixedAspectRatio is the aspect ration fixed and 'targetAspectRatio' should be used
@param aspectRatio the aspect ratio to maintain
core/src/main/java/com/theartofdev/edmodo/cropper/CropWindowMoveHandler.java