private void drawPreviousHalf(Canvas canvas) {
        canvas.save();
        canvas.clipRect(isFlippingVertically() ? mTopRect : mLeftRect);

        final float degreesFlipped = getDegreesFlipped();
        final Page p = degreesFlipped > 90 ? mPreviousPage : mCurrentPage;

        // if the view does not exist, skip drawing it
        if (p.valid) {
            setDrawWithLayer(p.v, true);
            drawChild(canvas, p.v, 0);
        }

        drawPreviousShadow(canvas);
        canvas.restore();
    }
draw top/left half

@param canvas
app/src/main/java/home/smart/fly/animations/customview/flipview/FlipView.java