internal Task SetDirectory(string friendlyName) { string currentDirectory = GetFullPathName(RToolsSettings.Current.WorkingDirectory); string newDirectory = GetFullPathName(friendlyName); if (newDirectory != null && currentDirectory != newDirectory) { RToolsSettings.Current.WorkingDirectory = GetFriendlyDirectoryName(newDirectory); _session.ScheduleEvaluation(async e => { await e.SetWorkingDirectory(newDirectory); }); } return(Task.CompletedTask); }