mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
* Introduce VcsHistoryProvider#getHistoryDiffHandler and DiffFromHistoryHandler to let VCSs implement custom behavior on "Show Diff" invocation from the file history panel. Return null as default. * Implement the StandardDiffFromHistoryHandler, which completely retains the old functionality. * For Git return the GitDiffFromHistoryHandler which works as usual when comparing two revisions, but has different code when 1 commit is selected, and it is a merge commit. * If a merge commit is selected, show a popup where user can choose the parent commit to compare with. * Additionally, if the file was not actually modified in the merge commit (i.e. the merge happened without any conflicts requiring manual resolution), display a short notification about that to make it clear that the file was not touched in this revision (this solves the confusion problem described in IDEA-89160). * Add information about parents to the GitFileRevision: it is collected in GitHistoryUtils#history anyway.