Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLluis Sanchez <llsan@microsoft.com>2019-02-15 20:57:44 +0300
committerLluis Sanchez <llsan@microsoft.com>2019-02-15 21:12:42 +0300
commitca94e4851759c70a3f44e6ed4d2d1f3296ed0bcf (patch)
tree5247748423d0211b13b2dbd1c219a95f8602cb34 /main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs
parent3f08768e1c48470d3c77365bf1225e2f48ad8fbc (diff)
Convert several IDE services into Service instances
The new IdeServices class has references to the core IDE services. Revamped the IDE initialization code. The UI loop is started earlier and that allows starting the services asynchronously. Code that previously was referencing static service classes or services available in IdeApp now reference IdeServices.
Diffstat (limited to 'main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs')
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs18
1 files changed, 9 insertions, 9 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs
index 1293ad41d8..b059f08a0e 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs
@@ -1,4 +1,4 @@
-//
+//
// MonoDevelopWorkspace.ProjectSystemHandler.cs
//
// Author:
@@ -61,7 +61,7 @@ namespace MonoDevelop.Ide.TypeSystem
this.projections = projections;
metadataHandler = new Lazy<MetadataReferenceHandler> (() => new MetadataReferenceHandler (workspace.MetadataReferenceManager, projectMap));
- hostDiagnosticUpdateSource = new Lazy<HostDiagnosticUpdateSource> (() => new HostDiagnosticUpdateSource (workspace, Composition.CompositionManager.GetExportedValue<IDiagnosticUpdateSourceRegistrationService> ()));
+ hostDiagnosticUpdateSource = new Lazy<HostDiagnosticUpdateSource> (() => new HostDiagnosticUpdateSource (workspace, workspace.compositionManager.GetExportedValue<IDiagnosticUpdateSourceRegistrationService> ()));
}
#region Solution mapping
@@ -84,7 +84,7 @@ namespace MonoDevelop.Ide.TypeSystem
static async void OnSolutionModified (object sender, MonoDevelop.Projects.WorkspaceItemEventArgs args)
{
var sol = (MonoDevelop.Projects.Solution)args.Item;
- var workspace = await TypeSystemService.GetWorkspaceAsync (sol, CancellationToken.None);
+ var workspace = await IdeApp.TypeSystemService.GetWorkspaceAsync (sol, CancellationToken.None);
var solId = workspace.ProjectHandler.GetSolutionId (sol);
if (solId == null)
return;
@@ -111,9 +111,9 @@ namespace MonoDevelop.Ide.TypeSystem
{
var projectId = projectMap.GetOrCreateId (p, oldProject);
- var config = IdeApp.Workspace != null ? p.GetConfiguration (IdeApp.Workspace.ActiveConfiguration) as MonoDevelop.Projects.DotNetProjectConfiguration : null;
+ var config = IdeApp.IsInitialized ? p.GetConfiguration (IdeApp.Workspace.ActiveConfiguration) as MonoDevelop.Projects.DotNetProjectConfiguration : null;
MonoDevelop.Projects.DotNetCompilerParameters cp = config?.CompilationParameters;
- FilePath fileName = IdeApp.Workspace != null ? p.GetOutputFileName (IdeApp.Workspace.ActiveConfiguration) : (FilePath)"";
+ FilePath fileName = IdeApp.IsInitialized ? p.GetOutputFileName (IdeApp.Workspace.ActiveConfiguration) : (FilePath)"";
if (fileName.IsNullOrEmpty)
fileName = new FilePath (p.Name + ".dll");
@@ -291,8 +291,8 @@ namespace MonoDevelop.Ide.TypeSystem
static bool CanGenerateAnalysisContextForNonCompileable (MonoDevelop.Projects.Project p, MonoDevelop.Projects.ProjectFile f)
{
- var mimeType = DesktopService.GetMimeTypeForUri (f.FilePath);
- var node = TypeSystemService.GetTypeSystemParserNode (mimeType, f.BuildAction);
+ var mimeType = IdeServices.DesktopService.GetMimeTypeForUri (f.FilePath);
+ var node = IdeApp.TypeSystemService.GetTypeSystemParserNode (mimeType, f.BuildAction);
if (node?.Parser == null)
return false;
return node.Parser.CanGenerateAnalysisDocument (mimeType, f.BuildAction, p.SupportedLanguages);
@@ -339,8 +339,8 @@ namespace MonoDevelop.Ide.TypeSystem
IEnumerable<DocumentInfo> GenerateProjections (MonoDevelop.Projects.ProjectFile f, DocumentMap documentMap, MonoDevelop.Projects.Project p, ProjectData oldProjectData, HashSet<DocumentId> duplicates)
{
- var mimeType = DesktopService.GetMimeTypeForUri (f.FilePath);
- var node = TypeSystemService.GetTypeSystemParserNode (mimeType, f.BuildAction);
+ var mimeType = IdeServices.DesktopService.GetMimeTypeForUri (f.FilePath);
+ var node = IdeApp.TypeSystemService.GetTypeSystemParserNode (mimeType, f.BuildAction);
if (node == null || !node.Parser.CanGenerateProjection (mimeType, f.BuildAction, p.SupportedLanguages))
yield break;
var options = new ParseOptions {