diff --git a/src/Features/CSharp/Portable/ChangeSignature/CSharpChangeSignatureService.cs b/src/Features/CSharp/Portable/ChangeSignature/CSharpChangeSignatureService.cs index f67a2f7e2de22ea1c738f32a1a73284ef25a04bc..99d4e5e723854aa068cdd3b1efc779b95a100b6c 100644 --- a/src/Features/CSharp/Portable/ChangeSignature/CSharpChangeSignatureService.cs +++ b/src/Features/CSharp/Portable/ChangeSignature/CSharpChangeSignatureService.cs @@ -383,7 +383,7 @@ private SyntaxNode GetNodeContainingTargetNode(SyntaxNode matchingNode) if (updatedNode.IsKind(SyntaxKind.InvocationExpression)) { var invocation = (InvocationExpressionSyntax)updatedNode; - var semanticModel = document.GetSemanticModelAsync(cancellationToken).WaitAndGetResult(cancellationToken); + var semanticModel = document.GetSemanticModelAsync(cancellationToken).WaitAndGetResult_CanCallOnBackground(cancellationToken); var symbolInfo = semanticModel.GetSymbolInfo((InvocationExpressionSyntax)originalNode, cancellationToken); var isReducedExtensionMethod = false; @@ -466,10 +466,13 @@ private SeparatedSyntaxList AddNewArgumentsToList(Document docum { if (updatedParameters[i] is AddedParameter addedParameter) { - fullList.Add(SyntaxFactory.Argument( - seenNameEquals ? SyntaxFactory.NameColon(addedParameter.Name) : default, - refKindKeyword: default, - expression: SyntaxFactory.ParseExpression(addedParameter.CallsiteValue))); + if (addedParameter.CallsiteValue != null) + { + fullList.Add(SyntaxFactory.Argument( + seenNameEquals ? SyntaxFactory.NameColon(addedParameter.Name) : default, + refKindKeyword: default, + expression: SyntaxFactory.ParseExpression(addedParameter.CallsiteValue))); + } } else { diff --git a/src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs b/src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs index f96a444943c31c81285985c9ac64a315e28a5742..2bdbabbb726175e97e9277fb112517c4bb0b693c 100644 --- a/src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs +++ b/src/Features/Core/Portable/ChangeSignature/AbstractChangeSignatureService.cs @@ -61,11 +61,11 @@ public async Task> GetChangeSignatureC internal ChangeSignatureResult ChangeSignature(Document document, int position, Action errorHandler, CancellationToken cancellationToken) { - var context = GetContextAsync(document, position, restrictToDeclarations: false, cancellationToken: cancellationToken).WaitAndGetResult(cancellationToken); + var context = GetContextAsync(document, position, restrictToDeclarations: false, cancellationToken: cancellationToken).WaitAndGetResult_CanCallOnBackground(cancellationToken); if (context.CanChangeSignature) { - return ChangeSignatureWithContextAsync(context, cancellationToken).WaitAndGetResult(cancellationToken); + return ChangeSignatureWithContextAsync(context, cancellationToken).WaitAndGetResult_CanCallOnBackground(cancellationToken); } else { @@ -209,7 +209,7 @@ internal ChangeSignatureOptionsResult GetChangeSignatureOptions(ChangeSignatureA var symbols = FindChangeSignatureReferencesAsync( SymbolAndProjectId.Create(declaredSymbol, context.Project.Id), - context.Solution, cancellationToken).WaitAndGetResult(cancellationToken); + context.Solution, cancellationToken).WaitAndGetResult_CanCallOnBackground(cancellationToken); foreach (var symbol in symbols) { diff --git a/src/VisualStudio/Core/Def/Implementation/ChangeSignature/AddParameterDialog.xaml.cs b/src/VisualStudio/Core/Def/Implementation/ChangeSignature/AddParameterDialog.xaml.cs index d2e3e1d605d4ed93aaead6c97c3681d40c7e2349..de5370c1282bd2b13508f12bad60777fb54cc3d2 100644 --- a/src/VisualStudio/Core/Def/Implementation/ChangeSignature/AddParameterDialog.xaml.cs +++ b/src/VisualStudio/Core/Def/Implementation/ChangeSignature/AddParameterDialog.xaml.cs @@ -57,10 +57,11 @@ private void AddParameterDialog_Loaded(object sender, RoutedEventArgs e) private void OK_Click(object sender, RoutedEventArgs e) { + ViewModel.TypeName = ((IntellisenseTextBox)TypeContentControl.Content).Text; + ViewModel.ParameterName = ((IntellisenseTextBox)NameContentControl.Content).Text; + if (ViewModel.TrySubmit()) { - ViewModel.TypeName = ((IntellisenseTextBox)TypeContentControl.Content).Text; - ViewModel.ParameterName = ((IntellisenseTextBox)NameContentControl.Content).Text; DialogResult = true; } } diff --git a/src/VisualStudio/Core/Def/Implementation/ChangeSignature/ChangeSignatureDialog.xaml b/src/VisualStudio/Core/Def/Implementation/ChangeSignature/ChangeSignatureDialog.xaml index 4d2ef31f0891e0496ef685f95b75de53c41b050b..fdc1126635166c507100378eda8720c4c7e130a8 100644 --- a/src/VisualStudio/Core/Def/Implementation/ChangeSignature/ChangeSignatureDialog.xaml +++ b/src/VisualStudio/Core/Def/Implementation/ChangeSignature/ChangeSignatureDialog.xaml @@ -277,36 +277,33 @@ Width="16" Moniker="{x:Static imagecatalog:KnownMonikers.MoveDown}" Grayscale="{Binding IsEnabled, ElementName=DownButton, Converter={StaticResource NegateBooleanConverter}}"/> - + - - + Height="Auto" Width="Auto"/> - -