@Override public void performCopy(@NotNull DataContext dataContext) { List<VcsFullCommitDetails> details = VcsLogUtil.collectFirstPackOfLoadedSelectedDetails(myUI.getVcsLog()); if (!details.isEmpty()) { CopyPasteManager.getInstance() .setContents( new StringSelection( StringUtil.join( details, new Function<VcsFullCommitDetails, String>() { @Override public String fun(VcsFullCommitDetails details) { return details.getSubject(); } }, "\n"))); } }