private void ShowManageLibraryPackageDialog(object sender, EventArgs e) { NuGetUIThreadHelper.JoinableTaskFactory.RunAsync(async delegate { await NuGetUIThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); if (ShouldMEFBeInitialized()) { await InitializeMEFAsync(); } string parameterString = null; var args = e as OleMenuCmdEventArgs; if (null != args) { parameterString = args.InValue as string; } var searchText = GetSearchText(parameterString); // *** temp code var project = EnvDTEProjectInfoUtility.GetActiveProject(VsMonitorSelection); if (project != null && !EnvDTEProjectInfoUtility.IsUnloaded(project) && EnvDTEProjectUtility.IsSupported(project)) { var windowFrame = FindExistingWindowFrame(project); if (windowFrame == null) { windowFrame = await CreateNewWindowFrameAsync(project); } if (windowFrame != null) { Search(windowFrame, searchText); windowFrame.Show(); } } else { // show error message when no supported project is selected. var projectName = project != null ? project.Name : string.Empty; var errorMessage = string.IsNullOrEmpty(projectName) ? Resources.NoProjectSelected : string.Format(CultureInfo.CurrentCulture, Resources.DTE_ProjectUnsupported, projectName); MessageHelper.ShowWarningMessage(errorMessage, Resources.ErrorDialogBoxTitle); } }).FileAndForget( TelemetryUtility.CreateFileAndForgetEventName( nameof(NuGetPackage), nameof(ShowManageLibraryPackageDialog))); }
private void ShowManageLibraryPackageDialog(object sender, EventArgs e) { ThreadHelper.ThrowIfNotOnUIThread(); NuGetUIThreadHelper.JoinableTaskFactory.Run(async delegate { string parameterString = null; OleMenuCmdEventArgs args = e as OleMenuCmdEventArgs; if (null != args) { parameterString = args.InValue as string; } var searchText = GetSearchText(parameterString); // *** temp code Project project = EnvDTEProjectInfoUtility.GetActiveProject(VsMonitorSelection); if (project != null && !EnvDTEProjectInfoUtility.IsUnloaded(project) && EnvDTEProjectUtility.IsSupported(project)) { var windowFrame = FindExistingWindowFrame(project); if (windowFrame == null) { windowFrame = await CreateNewWindowFrameAsync(project); } if (windowFrame != null) { Search(windowFrame, searchText); windowFrame.Show(); } } else { // show error message when no supported project is selected. string projectName = project != null ? project.Name : String.Empty; string errorMessage = String.IsNullOrEmpty(projectName) ? Resources.NoProjectSelected : String.Format(CultureInfo.CurrentCulture, Resources.DTE_ProjectUnsupported, projectName); MessageHelper.ShowWarningMessage(errorMessage, Resources.ErrorDialogBoxTitle); } }); }