void (@NotNull Inlay<?> inlay, int changeFlags) { if (myEditor.getDocument().isInBulkUpdate() || inlay.getPlacement() != Inlay.Placement.INLINE && inlay.getPlacement() != Inlay.Placement.AFTER_LINE_END || (changeFlags & InlayModel.ChangeFlags.WIDTH_CHANGED) == 0) { return; } if (myEditor.getInlayModel().isInBatchMode()) { myInlayChangedInBatchMode = true; return; } if (!isSoftWrappingEnabled()) { myDirty = true; return; } if (!myDirty) { if (myEditor.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, myEditor.getDocument()); } myApplianceManager.recalculate(Collections.singletonList(new TextRange(offset, offset))); } }