question: private void drawArc ( Canvas canvas ) { if ( mCurrentDashMode . equals ( DASH_MODE . DOWNLOAD ) ) { mnIndeterminateStartPosition += ( 1 - mnProgress ) * mnStartSpeed ; if ( ( mnIndeterminateStartPosition > CIRCULAR_FACTOR ) || ( mnIndeterminateStartPosition < 0 ) ) { mnIndeterminateStartPosition = 0 ; } Rect currRect = new Rect ( ) ; getLocalVisibleRect ( currRect ) ; float nRingBoundaryInner = mnRingRadius - ( mnRingWidth / 2 ) - ( mnArcWidth / 2 ) ; mArcRect . set ( mnViewCenter - nRingBoundaryInner , mnViewCenter - nRingBoundaryInner , mnViewCenter + nRingBoundaryInner , mnViewCenter + nRingBoundaryInner ) ; mPaint . setColor ( mArcColor ) ; mPaint . setStyle ( Paint . Style . STROKE ) ; mPaint . setStrokeWidth ( mnArcWidth ) ; mPaint . setStrokeCap ( Paint . Cap . ROUND ) ; canvas . drawArc ( mArcRect , mnIndeterminateStartPosition , mnArcLength , false , mPaint ) ; } }
target:  Draw the arc around the ring only for the DOWNLOAD mode