private DiffNavigationContext createDiffNavigationContext(final int actualLine) { final ContentsLines contentsLines = new ContentsLines(myFileAnnotation.getAnnotatedContent()); final Pair<Integer, String> pair = correctActualLineIfTextEmpty(contentsLines, actualLine); return new DiffNavigationContext(new Iterable<String>() { @Override public Iterator<String> iterator() { return new CacheOneStepIterator<String>(new ContextLineIterator(contentsLines, myFileAnnotation, pair.getFirst())); } }, pair.getSecond()); }