private void updateState(Editor editor, String text, HintWidthAdjustment widthAdjustment, boolean animated) {
      setWidthAdjustment(widthAdjustment);
      FontMetrics metrics = getFontMetrics(editor, useEditorFont()).getMetrics();
      startWidth = calcHintTextWidth(getText(), metrics);
      setText(text);
      int endWidth = calcHintTextWidth(getText(), metrics);
      steps = Math.max(1, Math.abs(endWidth - startWidth) / metrics.charWidth('a') / ANIMATION_CHARS_PER_STEP);
      step = animated ? 1 : steps + 1;
    }
private void updateState(Editor editor, String text, HintWidthAdjustment widthAdjustment, boolean animated)