diff options
author | Mike Krüger <mikkrg@microsoft.com> | 2018-02-19 10:08:01 +0300 |
---|---|---|
committer | Mike Krüger <mikkrg@microsoft.com> | 2018-02-19 10:08:01 +0300 |
commit | 6c9d9159830e0888a8979adf0fd2960b48784462 (patch) | |
tree | dcb920181aa671666a87d1f963cf397f21889785 /main/src | |
parent | cbfed2da6bb79096d1182d2ff4ccf163a230e3a6 (diff) | |
parent | e1de20f0eec6d66e78cf0640f00b03c1afcf7f23 (diff) |
Merge branch 'master' into editorconfig
Diffstat (limited to 'main/src')
39 files changed, 143 insertions, 44 deletions
diff --git a/main/src/addins/AspNet/Makefile.am b/main/src/addins/AspNet/Makefile.am index 270cff592f..9039c5e753 100644 --- a/main/src/addins/AspNet/Makefile.am +++ b/main/src/addins/AspNet/Makefile.am @@ -2,4 +2,10 @@ include $(top_srcdir)/xbuild.include EXTRA_DIST += \ $(wildcard lib/*) \ $(wildcard Templates/MvcCommon/*.cshtml)\ + $(wildcard Templates/*.cshtml)\ + $(wildcard Templates/*.ts)\ + $(wildcard Templates/*.css)\ + $(wildcard Templates/*.scss)\ + $(wildcard Templates/*.less)\ + $(wildcard Templates/*.json)\ $(wildcard Templates/Projects/Files/*.aspx) diff --git a/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Completion/CSharpCompletionTextEditorExtension.cs b/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Completion/CSharpCompletionTextEditorExtension.cs index 7f64e0dcc3..fd51996c8f 100644 --- a/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Completion/CSharpCompletionTextEditorExtension.cs +++ b/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Completion/CSharpCompletionTextEditorExtension.cs @@ -347,6 +347,7 @@ namespace MonoDevelop.CSharp.Completion foreach (var member in semanticModel.Compilation.GlobalNamespace.GetNamespaceMembers ()) stack.Push (member); var extMethodDict = extensionMethodImport ? new Dictionary<INamespaceSymbol, List<ImportSymbolCompletionData>> () : null; + var typeDict = new Dictionary<INamespaceSymbol, HashSet<string>> (); while (stack.Count > 0) { if (cancellationToken.IsCancellationRequested) break; @@ -395,7 +396,14 @@ namespace MonoDevelop.CSharp.Completion } } } else { - result.Add (new ImportSymbolCompletionData (this, type, false)); + HashSet<string> existingTypeHashSet; + if (!typeDict.TryGetValue (type.ContainingNamespace, out existingTypeHashSet)) { + typeDict.Add (type.ContainingNamespace, existingTypeHashSet = new HashSet<string> ()); + } + if (!existingTypeHashSet.Contains (type.Name)) { + result.Add (new ImportSymbolCompletionData (this, type, false)); + existingTypeHashSet.Add (type.Name); + } } } } diff --git a/main/src/addins/GnomePlatform/GnomePlatform.cs b/main/src/addins/GnomePlatform/GnomePlatform.cs index c5c77b58e1..f699d0a3e9 100644 --- a/main/src/addins/GnomePlatform/GnomePlatform.cs +++ b/main/src/addins/GnomePlatform/GnomePlatform.cs @@ -211,6 +211,20 @@ namespace MonoDevelop.Platform title, GenerateAppId (applicationId)); } + + private static string MateTerminalRunner (string command, string args, string dir, string title, bool pause, Guid applicationId) + { + string extra_commands = pause + ? BashPause.Replace ("'", "\\\"") + : String.Empty; + + return String.Format (@"--name ""{4}"" -e ""bash -c 'cd {3} ; {0} {1} ; {2}'""", + command, + EscapeArgs (args), + extra_commands, + EscapeDir (dir), + title); + } private static string GenerateAppId (Guid applicationId) { @@ -298,7 +312,7 @@ namespace MonoDevelop.Platform } else if (!String.IsNullOrEmpty (Environment.GetEnvironmentVariable ("MATE_DESKTOP_SESSION_ID"))) { preferred_terminal = "mate-terminal"; - preferred_runner = GnomeTerminalRunner; + preferred_runner = MateTerminalRunner; preferedOpenFolderRunner = GnomeTerminalOpenFolderRunner; } else if (!String.IsNullOrEmpty (Environment.GetEnvironmentVariable ("KDE_SESSION_VERSION"))) { diff --git a/main/src/addins/MacPlatform/MacPlatform.cs b/main/src/addins/MacPlatform/MacPlatform.cs index 6d521ef2c3..f1a790da4c 100644 --- a/main/src/addins/MacPlatform/MacPlatform.cs +++ b/main/src/addins/MacPlatform/MacPlatform.cs @@ -144,8 +144,7 @@ namespace MonoDevelop.MacIntegration var dir = Path.GetDirectoryName (typeof(MacPlatformService).Assembly.Location); - if (ObjCRuntime.Dlfcn.dlopen (Path.Combine (dir, "libxammac.dylib"), 0) == IntPtr.Zero) - LoggingService.LogFatalError ("Unable to load libxammac"); + ObjCRuntime.Dlfcn.dlopen (Path.Combine (dir, "libxammac.dylib"), 0); mimemap = new Lazy<Dictionary<string, string>> (LoadMimeMapAsync); diff --git a/main/src/addins/Makefile.am b/main/src/addins/Makefile.am index 6dd237dad5..9cb3223977 100644 --- a/main/src/addins/Makefile.am +++ b/main/src/addins/Makefile.am @@ -30,5 +30,13 @@ SUBDIRS = \ WindowsPlatform \
MonoDevelop.HexEditor \
MonoDevelop.DocFood \
+ MonoDevelop.AspNetCore \
+ MonoDevelop.AzureFunctions \
+ MonoDevelop.DotNetCore \
+ MonoDevelop.ConnectedServices \
+ MonoDevelop.Packaging \
+ MonoDevelop.Debugger.Win32 \
+ PerformanceDiagnostics \
+ MonoDevelop.Debugger.VSCodeDebugProtocol \
MonoDevelop.PackageManagement
diff --git a/main/src/addins/MonoDevelop.AspNetCore/Makefile.am b/main/src/addins/MonoDevelop.AspNetCore/Makefile.am new file mode 100644 index 0000000000..0c03503f0f --- /dev/null +++ b/main/src/addins/MonoDevelop.AspNetCore/Makefile.am @@ -0,0 +1,4 @@ +include $(top_srcdir)/xbuild.include + +EXTRA_DIST += \ + $(wildcard Templates/*.cshtml) diff --git a/main/src/addins/MonoDevelop.AzureFunctions/Makefile.am b/main/src/addins/MonoDevelop.AzureFunctions/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/addins/MonoDevelop.AzureFunctions/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/addins/MonoDevelop.ConnectedServices/Makefile.am b/main/src/addins/MonoDevelop.ConnectedServices/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/addins/MonoDevelop.ConnectedServices/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/addins/MonoDevelop.Debugger.VSCodeDebugProtocol/Makefile.am b/main/src/addins/MonoDevelop.Debugger.VSCodeDebugProtocol/Makefile.am new file mode 100644 index 0000000000..8f41a600f1 --- /dev/null +++ b/main/src/addins/MonoDevelop.Debugger.VSCodeDebugProtocol/Makefile.am @@ -0,0 +1,3 @@ +SUBDIRS = \ + MonoDevelop.Debugger.VsCodeDebugProtocol + diff --git a/main/src/addins/MonoDevelop.Debugger.VSCodeDebugProtocol/MonoDevelop.Debugger.VsCodeDebugProtocol/Makefile.am b/main/src/addins/MonoDevelop.Debugger.VSCodeDebugProtocol/MonoDevelop.Debugger.VsCodeDebugProtocol/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/addins/MonoDevelop.Debugger.VSCodeDebugProtocol/MonoDevelop.Debugger.VsCodeDebugProtocol/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/addins/MonoDevelop.Debugger.Win32/Makefile.am b/main/src/addins/MonoDevelop.Debugger.Win32/Makefile.am new file mode 100644 index 0000000000..c4345c4a6f --- /dev/null +++ b/main/src/addins/MonoDevelop.Debugger.Win32/Makefile.am @@ -0,0 +1,3 @@ +SUBDIRS = \ + MonoDevelop.Debugger.Win32 + diff --git a/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/Makefile.am b/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.Toolbox/ToolboxWidget.cs b/main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.Toolbox/ToolboxWidget.cs index 43727e5ae4..816176ac7f 100644 --- a/main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.Toolbox/ToolboxWidget.cs +++ b/main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.Toolbox/ToolboxWidget.cs @@ -282,6 +282,11 @@ namespace MonoDevelop.DesignerSupport.Toolbox return true; var icon = item.Icon; + if (!icon.HasFixedSize) { + var maxIconSize = Math.Min (itemDimension.Width, itemDimension.Height); + var fittingIconSize = maxIconSize > 32 ? Xwt.IconSize.Large : maxIconSize > 16 ? Xwt.IconSize.Medium : Xwt.IconSize.Small; + icon = item.Icon.WithSize (fittingIconSize); + } if (item == SelectedItem) { icon = icon.WithStyles ("sel"); cr.SetSourceColor (Style.Base (StateType.Selected).ToCairoColor ()); @@ -1121,9 +1126,7 @@ namespace MonoDevelop.DesignerSupport.Toolbox public Xwt.Drawing.Image Icon { get { - if (node != null) - return node.Icon; - return icon ?? DefaultIcon; + return node?.Icon ?? icon ?? DefaultIcon; } } diff --git a/main/src/addins/MonoDevelop.DotNetCore/Makefile.am b/main/src/addins/MonoDevelop.DotNetCore/Makefile.am new file mode 100644 index 0000000000..96b2dda016 --- /dev/null +++ b/main/src/addins/MonoDevelop.DotNetCore/Makefile.am @@ -0,0 +1,5 @@ +include $(top_srcdir)/xbuild.include + +SUBDIRS = \ + MonoDevelop.DotNetCore.Tests + diff --git a/main/src/addins/MonoDevelop.DotNetCore/MonoDevelop.DotNetCore.Tests/Makefile.am b/main/src/addins/MonoDevelop.DotNetCore/MonoDevelop.DotNetCore.Tests/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/addins/MonoDevelop.DotNetCore/MonoDevelop.DotNetCore.Tests/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/addins/MonoDevelop.Packaging/Makefile.am b/main/src/addins/MonoDevelop.Packaging/Makefile.am new file mode 100644 index 0000000000..55e630e362 --- /dev/null +++ b/main/src/addins/MonoDevelop.Packaging/Makefile.am @@ -0,0 +1,7 @@ +include $(top_srcdir)/xbuild.include + +SUBDIRS = \ + MonoDevelop.Packaging.Tests + +EXTRA_DIST += \ + PostBuild.proj diff --git a/main/src/addins/MonoDevelop.Packaging/MonoDevelop.Packaging.Tests/Makefile.am b/main/src/addins/MonoDevelop.Packaging/MonoDevelop.Packaging.Tests/Makefile.am new file mode 100644 index 0000000000..c93d6852fa --- /dev/null +++ b/main/src/addins/MonoDevelop.Packaging/MonoDevelop.Packaging.Tests/Makefile.am @@ -0,0 +1,2 @@ +include $(top_srcdir)/xbuild.include + diff --git a/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitProjectTestSuite.cs b/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitProjectTestSuite.cs index 5754973567..44e028fb1a 100644 --- a/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitProjectTestSuite.cs +++ b/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitProjectTestSuite.cs @@ -79,6 +79,9 @@ namespace MonoDevelop.UnitTesting.NUnit public static NUnitProjectTestSuite CreateTest (DotNetProject project) { + if (project.TargetFramework.Id.Identifier == ".NETCoreApp") + return null; + if (!project.ParentSolution.GetConfiguration (IdeApp.Workspace.ActiveConfiguration).BuildEnabledForItem (project)) return null; diff --git a/main/src/addins/PerformanceDiagnostics/Makefile.am b/main/src/addins/PerformanceDiagnostics/Makefile.am new file mode 100644 index 0000000000..ead76902f1 --- /dev/null +++ b/main/src/addins/PerformanceDiagnostics/Makefile.am @@ -0,0 +1,4 @@ +SUBDIRS = \ + PerformanceDiagnostics \ + UIThreadMonitorDaemon + diff --git a/main/src/addins/PerformanceDiagnostics/PerformanceDiagnostics/Makefile.am b/main/src/addins/PerformanceDiagnostics/PerformanceDiagnostics/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/addins/PerformanceDiagnostics/PerformanceDiagnostics/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/addins/PerformanceDiagnostics/UIThreadMonitorDaemon/Makefile.am b/main/src/addins/PerformanceDiagnostics/UIThreadMonitorDaemon/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/addins/PerformanceDiagnostics/UIThreadMonitorDaemon/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/addins/VersionControl/Makefile.am b/main/src/addins/VersionControl/Makefile.am index 19a1809c7a..9b8e787dbb 100644 --- a/main/src/addins/VersionControl/Makefile.am +++ b/main/src/addins/VersionControl/Makefile.am @@ -5,4 +5,6 @@ SUBDIRS = \ MonoDevelop.VersionControl.Subversion.Unix \ MonoDevelop.VersionControl.Git \ MonoDevelop.VersionControl.Subversion.Tests \ + Subversion.Win32 \ + Subversion.Win32.Tests \ MonoDevelop.VersionControl.Git.Tests diff --git a/main/src/addins/VersionControl/Subversion.Win32.Tests/Makefile.am b/main/src/addins/VersionControl/Subversion.Win32.Tests/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/addins/VersionControl/Subversion.Win32.Tests/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/addins/VersionControl/Subversion.Win32/Makefile.am b/main/src/addins/VersionControl/Subversion.Win32/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/addins/VersionControl/Subversion.Win32/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/core/Makefile.am b/main/src/core/Makefile.am index a71f67828c..c1366fb682 100644 --- a/main/src/core/Makefile.am +++ b/main/src/core/Makefile.am @@ -1,6 +1,8 @@ SUBDIRS = \ MonoDevelop.Projects.Formats.MSBuild \ MonoDevelop.Core \ + Mono.TextEditor.Shared \ + Mono.TextEditor.Platform \ Mono.Texteditor \ MonoDevelop.Ide MonoDevelop.Startup \ MonoDevelop.TextEditor.Tests diff --git a/main/src/core/Mono.TextEditor.Platform/Makefile.am b/main/src/core/Mono.TextEditor.Platform/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/core/Mono.TextEditor.Platform/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/core/Mono.TextEditor.Shared/Makefile.am b/main/src/core/Mono.TextEditor.Shared/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/core/Mono.TextEditor.Shared/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/core/Mono.Texteditor/Makefile.am b/main/src/core/Mono.Texteditor/Makefile.am index f9131dc780..c9cc87438f 100644 --- a/main/src/core/Mono.Texteditor/Makefile.am +++ b/main/src/core/Mono.Texteditor/Makefile.am @@ -1,14 +1 @@ include $(top_srcdir)/xbuild.include - -EXTRA_DIST += \ - Styles/DarkStyle.json \ - Styles/GruvboxStyle.json \ - Styles/LightStyle.json \ - Styles/MonokaiStyle.json \ - Styles/NightshadeStyle.json \ - Styles/OblivionStyle.json \ - Styles/SolarizedDarkStyle.json \ - Styles/SolarizedLightStyle.json \ - Styles/TangoStyle.json \ - Styles/VisualStudioStyle.json - diff --git a/main/src/core/MonoDevelop.Core/Makefile.am b/main/src/core/MonoDevelop.Core/Makefile.am index 0f98ef2b7e..2e4bd93ffb 100644 --- a/main/src/core/MonoDevelop.Core/Makefile.am +++ b/main/src/core/MonoDevelop.Core/Makefile.am @@ -1,4 +1,7 @@ include $(top_srcdir)/xbuild.include EXTRA_DIST += \ - BuildVariables.cs.in + BuildVariables.cs + +BuildVariables.cs: + $(XBUILD) $(XBUILD_ARGS) /t:BeforeBuild diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj b/main/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj index 30bc990dc2..9fdd2d303a 100644 --- a/main/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj +++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj @@ -800,7 +800,7 @@ <InternalsVisibleTo Include="MonoDevelop.Ide.Tests" /> </ItemGroup> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> - <Target Name="BeforeBuild" Inputs="BuildVariables.cs.in; $(MSBuildProjectDirectory)\..\..\..\..\version.config" Outputs="BuildVariables.cs"> + <Target Name="BeforeBuild" Inputs="BuildVariables.cs.in; $(MSBuildProjectDirectory)\..\..\..\..\version.config" Outputs="BuildVariables.cs" Condition="Exists('$(MSBuildProjectDirectory)\..\..\..\..\version.config')" > <MakeDir Directories="$(FullBuildInfo)" /> <Csc Sources="$(ConfigureScript)" OutputAssembly="$(ConfigureScriptExe)" ToolExe="$(CscToolExe)" ToolPath="$(CscToolPath)" Condition="!Exists('$(ConfigureScriptExe)')" /> <Exec Command="$(MonoLauncher)$(ConfigureScriptExe) gen-buildinfo $(FullBuildInfo)" WorkingDirectory="$(MSBuildProjectDirectory)" /> diff --git a/main/src/core/MonoDevelop.Ide/Makefile.am b/main/src/core/MonoDevelop.Ide/Makefile.am index 76417ba6d3..fe8940e113 100644 --- a/main/src/core/MonoDevelop.Ide/Makefile.am +++ b/main/src/core/MonoDevelop.Ide/Makefile.am @@ -1,5 +1,8 @@ include $(top_srcdir)/xbuild.include +SUBDIRS = \ + MonoDevelop.Ide.Editor.Highlighting + EXTRA_DIST += \ gtkrc \ gtkrc.mac \ diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionController.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionController.cs index 5e904350c7..1263f0f5a7 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionController.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionController.cs @@ -259,7 +259,6 @@ namespace MonoDevelop.Ide.CodeCompletion { usingPreviewEntry = false; previewCompletionEntryText = ""; - StartOffset = 0; HideWhenWordDeleted = false; SelectedItemCompletionText = null; ResetViewState(); @@ -407,8 +406,6 @@ namespace MonoDevelop.Ide.CodeCompletion { if (!object.ReferenceEquals (sender, mutableList)) return; - - ResetSizes (); // Only hide the footer if it's finished changing if (!mutableList.IsChanging) diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Editor.Highlighting/Makefile.am b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Editor.Highlighting/Makefile.am new file mode 100644 index 0000000000..fc16b3af83 --- /dev/null +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Editor.Highlighting/Makefile.am @@ -0,0 +1,6 @@ +include $(top_srcdir)/xbuild.include + +EXTRA_DIST += \ + $(wildcard syntaxes/*) \ + $(wildcard themes/*) \ + $(wildcard VSCodeImport/*) diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Components/LogView.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Components/LogView.cs index 4b1d4137ad..f3c7aefd5a 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Components/LogView.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Components/LogView.cs @@ -553,10 +553,10 @@ namespace MonoDevelop.Ide.Gui.Components protected void UnsafeBeginTask (LogViewProgressMonitor monitor, string name, int totalWork) { - var indent = monitor.Indent; - if (!string.IsNullOrEmpty (name)) { - var tag = indent.Indent (); - buffer.TagTable.Add (tag); + if (!string.IsNullOrEmpty (name) && monitor != null) { + var indent = monitor.Indent; + var t = indent.Indent (); + buffer.TagTable.Add (t); indents.Push (name); } else indents.Push (null); @@ -567,14 +567,17 @@ namespace MonoDevelop.Ide.Gui.Components UnsafeAddText (null, Environment.NewLine, null); } - monitor.Marker = buffer.CreateMark (name, buffer.EndIter, false); + var marker = buffer.CreateMark (name, buffer.EndIter, false); + if (monitor != null) { + monitor.Marker = marker; + } UnsafeAddText (null, Environment.NewLine, null); // Move the mark to the line before EndIter, so other text inserted at EndIter // doesn't move this mark. - buffer.MoveMark (monitor.Marker, buffer.GetIterAtOffset (buffer.CharCount - 1)); + buffer.MoveMark (marker, buffer.GetIterAtOffset (buffer.CharCount - 1)); } - + public void BeginTask (string name, int totalWork) { BeginTask (null, name, totalWork); @@ -585,7 +588,7 @@ namespace MonoDevelop.Ide.Gui.Components var bt = new QueuedBeginTask (monitor, name, totalWork); addQueuedUpdate (bt); } - + public void EndTask () { EndTask (null); @@ -600,8 +603,10 @@ namespace MonoDevelop.Ide.Gui.Components protected void UnsafeEndTask (LogViewProgressMonitor monitor) { if (indents.Count > 0 && indents.Pop () != null) { - buffer.TagTable.Remove (monitor.Indent.IndentTag); - monitor.Indent.Unindent (); + if (monitor != null) { + buffer.TagTable.Remove (monitor.Indent.IndentTag); + monitor.Indent.Unindent (); + } } } @@ -736,7 +741,7 @@ namespace MonoDevelop.Ide.Gui.Components public override void Execute (LogView pad) { - pad.UnsafeAddText (Monitor.Marker, Text.ToString (), Tag); + pad.UnsafeAddText (Monitor?.Marker, Text.ToString (), Tag); } public QueuedTextWrite (LogViewProgressMonitor monitor, string text, TextTag tag) @@ -840,7 +845,7 @@ namespace MonoDevelop.Ide.Gui.Components if (clearConsole) outputPad.Clear (); - internalLogger.TextWritten += outputPad.WriteConsoleLogText; + internalLogger.TextWritten += WriteConsoleLogText; console = new LogViewProgressConsole (this); } @@ -879,6 +884,11 @@ namespace MonoDevelop.Ide.Gui.Components base.OnEndTask (name, totalWork, stepWork); } + void WriteConsoleLogText (string text) + { + outputPad.WriteConsoleLogText (this, text); + } + Exception GetDisposedException () { return new InvalidOperationException ("Output progress monitor already disposed."); diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ProgressMonitoring/BaseProgressMonitor.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ProgressMonitoring/BaseProgressMonitor.cs index ff34746672..375e33b18d 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ProgressMonitoring/BaseProgressMonitor.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ProgressMonitoring/BaseProgressMonitor.cs @@ -40,13 +40,15 @@ namespace MonoDevelop.Ide.ProgressMonitoring { public static class ProgressHelper { - public static void ShowResultDialog (this ProgressMonitor monitor) + public static void ShowResultDialog (this ProgressMonitor monitor) => ShowResultDialog (monitor, null); + + public static void ShowResultDialog (this ProgressMonitor monitor, MonoDevelop.Components.Window parent) { if (monitor.Errors.Length == 1 && !monitor.HasWarnings) { - MessageService.ShowError (monitor.Errors [0].Message, monitor.Errors [0].Exception); + MessageService.ShowError (parent, monitor.Errors [0].Message, null, monitor.Errors [0].Exception); } else if (!monitor.HasErrors && monitor.Warnings.Length == 1) { - MessageService.ShowWarning (monitor.Warnings[0]); + MessageService.ShowWarning (parent, monitor.Warnings[0]); } else if (monitor.HasErrors || monitor.HasWarnings) { using (var resultDialog = new MultiMessageDialog () { @@ -56,7 +58,7 @@ namespace MonoDevelop.Ide.ProgressMonitoring resultDialog.AddError (m.DisplayMessage); foreach (var m in monitor.Warnings) resultDialog.AddWarning (m); - MessageService.ShowCustomDialog (resultDialog); + MessageService.ShowCustomDialog (resultDialog, parent); } } } diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ProgressMonitoring/MessageDialogProgressMonitor.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ProgressMonitoring/MessageDialogProgressMonitor.cs index 9c0d1bf7a5..3e606b20c7 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ProgressMonitoring/MessageDialogProgressMonitor.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ProgressMonitoring/MessageDialogProgressMonitor.cs @@ -137,8 +137,8 @@ namespace MonoDevelop.Ide.ProgressMonitoring if (showDetails) return; - - this.ShowResultDialog (); + + this.ShowResultDialog (hideWhenDone ? MessageService.RootWindow : dialog); } } } diff --git a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/Makefile.am b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/Makefile.am index c9cc87438f..ab6bc88576 100644 --- a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/Makefile.am +++ b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/Makefile.am @@ -1 +1,4 @@ include $(top_srcdir)/xbuild.include + +SUBDIRS = \ + MonoDevelop.Projects.MSBuild.Shared diff --git a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.MSBuild.Shared/Makefile.am b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.MSBuild.Shared/Makefile.am new file mode 100644 index 0000000000..c9cc87438f --- /dev/null +++ b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.MSBuild.Shared/Makefile.am @@ -0,0 +1 @@ +include $(top_srcdir)/xbuild.include diff --git a/main/src/core/MonoDevelop.Startup/Makefile.am b/main/src/core/MonoDevelop.Startup/Makefile.am index deb0ebdaf3..71cf1aec64 100644 --- a/main/src/core/MonoDevelop.Startup/Makefile.am +++ b/main/src/core/MonoDevelop.Startup/Makefile.am @@ -1 +1,4 @@ -include $(top_srcdir)/xbuild.include
\ No newline at end of file +include $(top_srcdir)/xbuild.include + +EXTRA_DIST += \ + app.manifest |