void ResolveFileConflict(object sender, ResolveFileConflictEventArgs e) { if (conflictResolution.HasValue) { e.Resolution = conflictResolution.Value; } else { Runtime.RunInMainThread(() => { e.Resolution = fileConflictResolver.ResolveFileConflict(e.Message); }).Wait(); } }
public FileConflictAction ResolveFileConflict(string message) { if (context.FileConflictResolution.HasValue) { return(context.FileConflictResolution.Value); } // This should be using the PowerShell console host instead of a separate GUI. FileConflictAction conflictAction = Runtime.RunInMainThread(() => { var conflictResolver = new FileConflictResolver(); return(conflictResolver.ResolveFileConflict(message)); }).WaitAndGetResult(); if (conflictAction == FileConflictAction.IgnoreAll || conflictAction == FileConflictAction.OverwriteAll) { context.FileConflictResolution = conflictAction; } return(conflictAction); }