// Partly the same as RevisionDiffControl.cs ShowSelectedFileDiffAsync() private async Task ViewSelectedDiffAsync() { if (DiffFiles.SelectedItem == null || DiffFiles.Revision == null) { DiffText.Clear(); return; } if (DiffFiles.SelectedItemParent?.Guid == GitRevision.CombinedDiffGuid) { var diffOfConflict = Module.GetCombinedDiffContent(DiffFiles.Revision, DiffFiles.SelectedItem.Name, DiffText.GetExtraDiffArguments(), DiffText.Encoding); if (string.IsNullOrWhiteSpace(diffOfConflict)) { diffOfConflict = Strings.UninterestingDiffOmitted; } DiffText.ViewPatch(text: diffOfConflict, openWithDifftool: null /* not implemented */); return; } await DiffText.ViewChangesAsync(DiffFiles.SelectedItemParent?.ObjectId, DiffFiles.Revision?.ObjectId, DiffFiles.SelectedItem, string.Empty, openWithDifftool : null /* use default */); }
private void DiffFiles_DataSourceChanged(object sender, EventArgs e) { if (DiffFiles.GitItemStatuses == null || !DiffFiles.GitItemStatuses.Any()) { DiffText.Clear(); } }
private async Task ShowSelectedFileDiffAsync() { if (DiffFiles.SelectedItem == null || DiffFiles.Revision == null) { DiffText.Clear(); return; } if (DiffFiles.SelectedItemParent?.Guid == GitRevision.CombinedDiffGuid) { var diffOfConflict = Module.GetCombinedDiffContent(DiffFiles.Revision, DiffFiles.SelectedItem.Name, DiffText.GetExtraDiffArguments(), DiffText.Encoding); if (string.IsNullOrWhiteSpace(diffOfConflict)) { diffOfConflict = Strings.UninterestingDiffOmitted; } DiffText.ViewPatch(DiffFiles.SelectedItem.Name, text: diffOfConflict, openWithDifftool: () => firstToSelectedToolStripMenuItem.PerformClick(), isText: DiffFiles.SelectedItem.IsSubmodule); return; } await DiffText.ViewChangesAsync(DiffFiles.SelectedItemParent?.ObjectId, DiffFiles.Revision?.ObjectId, DiffFiles.SelectedItem, string.Empty, openWithDifftool : () => firstToSelectedToolStripMenuItem.PerformClick()); }
// Partly the same as RevisionDiffControl.cs ShowSelectedFileDiffAsync() private async Task ViewSelectedDiffAsync() { if (DiffFiles.SelectedItem == null || DiffFiles.Revision == null) { DiffText.Clear(); return; } if (DiffFiles.SelectedItemParent?.ObjectId == ObjectId.CombinedDiffId) { var diffOfConflict = Module.GetCombinedDiffContent(DiffFiles.Revision, DiffFiles.SelectedItem.Name, DiffText.GetExtraDiffArguments(), DiffText.Encoding); if (string.IsNullOrWhiteSpace(diffOfConflict)) { diffOfConflict = Strings.UninterestingDiffOmitted; } await DiffText.ViewPatchAsync(DiffFiles.SelectedItem.Name, text : diffOfConflict, openWithDifftool : null, isText : DiffFiles.SelectedItem.IsSubmodule); return; } await DiffText.ViewChangesAsync(DiffFiles.SelectedItemParent?.ObjectId, DiffFiles.Revision, DiffFiles.SelectedItem, string.Empty); }
private void ShowSelectedFileDiff() { if (DiffFiles.SelectedItem == null) { DiffText.Clear(); return; } var baseCommit = (ckCompareToMergeBase.Checked ? _mergeBase : _baseRevision) ?? DiffFiles.SelectedItemParent; DiffText.ViewChangesAsync(baseCommit?.ObjectId, _headRevision, DiffFiles.SelectedItem, string.Empty); }
private void ShowSelectedFileDiff() { if (DiffFiles.SelectedItem == null) { DiffText.Clear(); return; } var baseCommit = ckCompareToMergeBase.Checked ? _mergeBase : _baseRevision; var items = new List <GitRevision> { _headRevision, baseCommit }; if (baseCommit == null) { // This should not happen items = new List <GitRevision> { _headRevision, DiffFiles.SelectedItemParent }; } DiffText.ViewChangesAsync(items, DiffFiles.SelectedItem, string.Empty); }