@Override
  public void caretPositionChanged(final @NotNull CaretEvent event) {
    final IndentGuideDescriptor newGuide = getCaretIndentGuide(event);
    if (!Comparing.equal(myCurrentCaretGuide, newGuide)) {
      repaintGuide(newGuide);
      repaintGuide(myCurrentCaretGuide);
      myCurrentCaretGuide = newGuide;

      if (myCurrentHint != null) {
        myCurrentHint.hide();
        myCurrentHint = null;
      }

      if (newGuide != null && shouldShowHint(newGuide)) {
        showHint(newGuide);
      }
    }
  }
@Override
  public void caretPositionChanged(final @NotNull CaretEvent event)