AnnotationSourceSwitcher () { if (!myShowMergeSources) return null; return new AnnotationSourceSwitcher() { @Override @NotNull public AnnotationSource getAnnotationSource(int lineNumber) { return myInfos.getAnnotationSource(lineNumber); } @Override public boolean mergeSourceAvailable(int lineNumber) { return myInfos.mergeSourceAvailable(lineNumber); } @Override @NotNull public LineAnnotationAspect getRevisionAspect() { return ORIGINAL_REVISION_ASPECT; } @Override @NotNull public AnnotationSource getDefaultSource() { return AnnotationSource.getInstance(myShowMergeSources); } @Override public void switchTo(AnnotationSource source) { myInfos.setShowMergeSource(source.showMerged()); } }; }