code: public void changeComplete (float complete)
      {
          // Store the new state
          _complete = complete;
  
          // Determine the percentage difference between the "actual"
          // completion state and the completion amount to render during
          // the smooth interpolation
          _renderOffset = _renderComplete - _complete;
  
          // When the timer next ticks, find out when this interpolation
          // should start
          _renderOffsetTime = Long.MIN_VALUE;
      }
docs: Generate an unexpected change in the timer's completion and
  set up the necessary details to render interpolation from the old
  to new states