|
@@ -30,8 +30,8 @@ namespace Terra.Arbitrator.GUI
|
|
|
public bool IsInConflictState { get; private set; }
|
|
|
public int CommitsToPull { get; private set; }
|
|
|
public SortColumn CurrentSortColumn { get; private set; } = SortColumn.FilePath;
|
|
|
- public float PushProgress { get; private set; }
|
|
|
- public string PushProgressMessage { get; private set; }
|
|
|
+ public float OperationProgress { get; private set; }
|
|
|
+ public string OperationProgressMessage { get; private set; }
|
|
|
public IReadOnlyList<string> RemoteBranchList { get; private set; } = new List<string>();
|
|
|
public string CurrentBranchName { get; private set; } = "master";
|
|
|
|
|
@@ -172,8 +172,8 @@ namespace Terra.Arbitrator.GUI
|
|
|
|
|
|
void OnProgressModified(float progress, string message)
|
|
|
{
|
|
|
- PushProgress = progress;
|
|
|
- PushProgressMessage = message;
|
|
|
+ OperationProgress = progress;
|
|
|
+ OperationProgressMessage = message;
|
|
|
_requestRepaint?.Invoke();
|
|
|
}
|
|
|
}
|
|
@@ -344,15 +344,21 @@ namespace Terra.Arbitrator.GUI
|
|
|
{
|
|
|
_changes = changes;
|
|
|
IsInConflictState = _changes.Any(c => c.Status == LibGit2Sharp.ChangeKind.Conflicted);
|
|
|
+ return IsInConflictState ? new Promise<int?>((resolve, _) => resolve(0)) : GitService.GetUpstreamAheadBy(OnProgressModified);
|
|
|
|
|
|
- return IsInConflictState ?
|
|
|
- // If in conflict, we can't pull, so we don't need to check. Return a resolved promise.
|
|
|
- new Promise<int?>((resolve, _) => resolve(0)) : GitService.GetUpstreamAheadBy();
|
|
|
+ void OnProgressModified(float progress, string message)
|
|
|
+ {
|
|
|
+ OperationProgress = progress;
|
|
|
+ OperationProgressMessage = message;
|
|
|
+ _requestRepaint?.Invoke();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private IPromise<BranchData> FetchBranchDataStep(int? pullCount)
|
|
|
{
|
|
|
CommitsToPull = pullCount ?? 0;
|
|
|
+ OperationProgress = 0f;
|
|
|
+ OperationProgressMessage = "";
|
|
|
return GitService.GetBranchData();
|
|
|
}
|
|
|
|
|
@@ -369,8 +375,8 @@ namespace Terra.Arbitrator.GUI
|
|
|
{
|
|
|
IsLoading = true;
|
|
|
LoadingMessage = loadingMessage;
|
|
|
- PushProgress = 0f;
|
|
|
- PushProgressMessage = "";
|
|
|
+ OperationProgress = 0f;
|
|
|
+ OperationProgressMessage = "";
|
|
|
ClearMessages();
|
|
|
_changes = null;
|
|
|
_requestRepaint?.Invoke();
|