docs: public void updateProgress(float progress) {
          if (mLastProgress == progress) {
              return;
          }
          mLastProgress = progress;
          //TODO this makes ViewPager work, but will probably break more complex transition setup, will think of a better solution
          if (mUpdateStateAfterUpdateProgress) {
              boolean positive = progress >= 0;
              TransitionController transitionController;
              for (int i = 0, size = mTransitionControls.size(); i < size; i++) {
                  transitionController = mTransitionControls.get(i);
                  if (positive) {
                      if (transitionController.getEnd() > 0) {
                          transitionController.setEnable(true);
                      } else {
                          transitionController.setEnable(false);
                      }
                  } else {
                      if (transitionController.getEnd() < 0) {
                          transitionController.setEnable(true);
                      } else {
                          transitionController.setEnable(false);
                      }
                  }
              }
          }
  
          TransitionController transitionController;
          for (int i = 0, size = mTransitionControls.size(); i < size; i++) {
              transitionController = mTransitionControls.get(i);
              if (transitionController.isEnable()) {
                  transitionController.updateProgress(progress);
              }
          }
      }