DiffGutterOperation (@NotNull Side sourceSide) { return createOperation(() -> { if (myViewer.isStateIsOutOfDate()) return null; if (!myViewer.isEditable(sourceSide.other(), true)) return null; String text = getApplyActionText(myViewer, sourceSide); Icon icon = getApplyIcon(sourceSide); return createIconRenderer(sourceSide, text, icon); }); }