@Override
  public void onUpdated(@NotNull Inlay<?> inlay, int changeFlags) {
    if (editor.getDocument().isInBulkUpdate() ||
        inlay.getPlacement() != Inlay.Placement.INLINE && inlay.getPlacement() != Inlay.Placement.AFTER_LINE_END ||
        (changeFlags & InlayModel.ChangeFlags.WIDTH_CHANGED) == 0) {
      return;
    }
    if (editor.getInlayModel().isInBatchMode()) {
      myInlayChangedInBatchMode = true;
      return;
    }
    if (!isSoftWrappingEnabled()) {
      myDirty = true;
      return;
    }
    if (!myDirty) {
      if (editor.getDocument().isInEventsHandling()) {
        if (inlay.getPlacement() == Inlay.Placement.AFTER_LINE_END) {
          myAfterLineEndInlayUpdated = true;
        }
        return;
      }
      int offset = inlay.getOffset();
      if (inlay.getPlacement() == Inlay.Placement.AFTER_LINE_END) {
        offset = DocumentUtil.getLineEndOffset(offset, editor.getDocument());
      }
      applianceManager.recalculate(Collections.singletonList(new TextRange(offset, offset)));
    }
  }
@Override
  public void onUpdated(@NotNull Inlay<?> inlay, int changeFlags)