void (@NotNull final DocumentEvent e) { myMapper.clear(); int offset = e.getOffset(); final int lineNumber = document.getLineNumber(offset); final int lastLineNumber = document.getLineNumber(offset + e.getNewLength()); if (!removeChangedHighlighters(lineNumber, lastLineNumber, document)) return; if (!myUpdateAlarm.isDisposed()) { myUpdateAlarm.addRequest(() -> { Int2IntMap newToOldLineMapping = myMapper.canGetFastMapping() ? myMapper.getNewToOldLineMapping() : null; if (newToOldLineMapping != null) { final int lastLine = Math.min(document.getLineCount() - 1, lastLineNumber); for (int line = lineNumber; line <= lastLine; line++) { if (!newToOldLineMapping.containsKey(line)) continue; int oldLineNumber = newToOldLineMapping.get(line); var lineData = executableLines.get(oldLineNumber); if (lineData == null) continue; addHighlighter(markupModel, executableLines, suite, oldLineNumber, line, classNames.get(oldLineNumber)); } } }, 100); } }