diff options
author | Dominique Louis <dolouis@microsoft.com> | 2019-10-10 21:48:15 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-10-10 21:48:15 +0300 |
commit | 38105d0dcc46082d5d249de92ab188d829ea4dc1 (patch) | |
tree | 995a672ba2efb0182ee883dd122514c483a8e8fd /Xamarin.PropertyEditing.Tests | |
parent | 20568bdc43bccc2c9896e891508d761b705d7d6a (diff) | |
parent | 3d5b178f9fd086888a3d17a390e1f06a8bad8076 (diff) |
Merge pull request #639 from xamarin/ermau-fix-reset-variationdominique-MakeArrangeModeTabbable
[Tests] Don't erase variant on reset
Diffstat (limited to 'Xamarin.PropertyEditing.Tests')
-rw-r--r-- | Xamarin.PropertyEditing.Tests/MockObjectEditor.cs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/Xamarin.PropertyEditing.Tests/MockObjectEditor.cs b/Xamarin.PropertyEditing.Tests/MockObjectEditor.cs index ffd7261..5666533 100644 --- a/Xamarin.PropertyEditing.Tests/MockObjectEditor.cs +++ b/Xamarin.PropertyEditing.Tests/MockObjectEditor.cs @@ -205,7 +205,16 @@ namespace Xamarin.PropertyEditing.Tests if (value.Source != ValueSource.Local && ValueEvaluator != null) { value.Value = (T)ValueEvaluator (property, value.ValueDescriptor, value.SourceDescriptor); } else if (value.Source == ValueSource.Unset || (property.ValueSources.HasFlag (ValueSources.Default) && Equals (value.Value, default(T))) && value.ValueDescriptor == null && value.SourceDescriptor == null) { - if (propertyValues.Remove (variations ?? NeutralVariations)) { + bool changed = false; + if (variations == NeutralVariations) { + propertyValues.Remove (NeutralVariations); + changed = true; + } else if (variations != null) { + propertyValues[variations] = value; + changed = true; + } + + if (changed) { PropertyChanged?.Invoke (this, new EditorPropertyChangedEventArgs (property, variations)); return Task.CompletedTask; } |