boolean (DataContext context, @Nullable DiffHyperlink currentHyperlink) { final AbstractTestProxy testProxy = AbstractTestProxy.DATA_KEY.getData(context); final Project project = CommonDataKeys.PROJECT.getData(context); if (project == null) return false; ListSelection<DiffHyperlink> hyperlinks = null; if (currentHyperlink != null) { hyperlinks = ListSelection.createSingleton(currentHyperlink); } else if (testProxy != null) { hyperlinks = showDiff(testProxy, TestTreeView.MODEL_DATA_KEY.getData(context)); } if (hyperlinks == null) return false; DiffRequestChain chain = TestDiffRequestProcessor.createRequestChain(project, hyperlinks); DiffManager.getInstance().showDiff(project, chain, DiffDialogHints.DEFAULT); return true; }