From b98bb57db7827f4fd2718039caba7a47e069b35c Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Tue, 25 May 2021 12:30:58 -0700 Subject: [PATCH 01/42] Felipe coworking session for new UIAutomation property investigation --- .../Baselines/System.Xaml-ref.baseline.txt | 4 +- .../UIAutomationClient-ref.baseline.txt | 5 ++- .../UIAutomationTypes-ref.baseline.txt | 4 +- .../Baselines/WindowsBase-ref.baseline.txt | 3 +- .../Automation/AutomationProperties.cs | 35 +++++++++++++++ .../Automation/Peers/AutomationPeer.cs | 44 +++++++++++++++++++ .../MS/Internal/Automation/Schema.cs | 12 +++++ .../Windows/Automation/AutomationElement.cs | 4 ++ .../AutomationIdentifierConstants.cs | 3 +- .../AutomationElementIdentifiers.cs | 3 ++ 10 files changed, 109 insertions(+), 8 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Xaml-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Xaml-ref.baseline.txt index cc55eb9e3c3..b73fe299425 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Xaml-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Xaml-ref.baseline.txt @@ -1,7 +1,6 @@ Compat issues with assembly System.Xaml: CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.AcceptedMarkupExtensionExpressionTypeAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true, Inherited=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.AmbientAttribute' changed from '[AttributeUsageAttribute(196, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class | AttributeTargets.Method | AttributeTargets.Property, Inherited=true)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Markup.ArrayExtension.Items' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.ConstructorArgumentAttribute' changed from '[AttributeUsageAttribute(128, AllowMultiple=false, Inherited=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Property, AllowMultiple=false, Inherited=false)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.ContentPropertyAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false, Inherited=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.ContentWrapperAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true, Inherited=true)]' in the implementation. @@ -15,7 +14,6 @@ CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Wi CannotRemoveAttribute : Attribute 'System.ComponentModel.TypeConverterAttribute' exists on 'System.Windows.Markup.StaticExtension' in the contract but not the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.TrimSurroundingWhitespaceAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false, Inherited=true)]' in the implementation. CannotRemoveAttribute : Attribute 'System.ComponentModel.TypeConverterAttribute' exists on 'System.Windows.Markup.TypeExtension' in the contract but not the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Markup.TypeExtension.TypeName' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.UidPropertyAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.UsableDuringInitializationAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false, Inherited=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.WhitespaceSignificantCollectionAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false, Inherited=true)]' in the implementation. @@ -26,4 +24,4 @@ CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Wi CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.XmlnsCompatibleWithAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.XmlnsDefinitionAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.XmlnsPrefixAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. -Total Issues: 27 +Total Issues: 25 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt index fcc74cf8643..9fb8c0e805a 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt @@ -1 +1,4 @@ -Total Issues: 0 +Compat issues with assembly UIAutomationClient: +TypesMustExist : Type 'Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. +MembersMustExist : Member 'public System.Windows.Automation.AutomationProperty System.Windows.Automation.AutomationProperty System.Windows.Automation.AutomationElement.HeadingLevelProperty' does not exist in the implementation but it does exist in the contract. +Total Issues: 2 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt index fcc74cf8643..22a16d45308 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt @@ -1 +1,3 @@ -Total Issues: 0 +Compat issues with assembly UIAutomationTypes: +MembersMustExist : Member 'public System.Windows.Automation.AutomationProperty System.Windows.Automation.AutomationProperty System.Windows.Automation.AutomationElementIdentifiers.HeadingLevelProperty' does not exist in the implementation but it does exist in the contract. +Total Issues: 1 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsBase-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsBase-ref.baseline.txt index a59a8027d10..4d2bb5e41df 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsBase-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsBase-ref.baseline.txt @@ -4,7 +4,6 @@ CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Wi CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.AttachedPropertyBrowsableWhenAttributePresentAttribute' changed from '[AttributeUsageAttribute(64, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple=false)]' in the implementation. CannotRemoveAttribute : Attribute 'System.Windows.Markup.ValueSerializerAttribute' exists on 'System.Windows.DependencyProperty' in the contract but not the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.NameScope.GetNameScope(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.DataSourceProvider.Data' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.DesignerSerializationOptionsAttribute' changed from '[AttributeUsageAttribute(448, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Field | AttributeTargets.Method | AttributeTargets.Property, AllowMultiple=false)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Media.DisableDpiAwarenessAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=false)]' in the implementation. -Total Issues: 8 +Total Issues: 7 diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs index cc47684ef1f..ed02f3a0f6d 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs @@ -594,6 +594,41 @@ public static int GetSizeOfSet(DependencyObject element) } #endregion + #region HeadingLevel + public static readonly DependencyProperty HeadingLevelProperty = + DependencyProperty.RegisterAttached( + "HeadingLevel", + typeof(Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel), + typeof(AutomationProperties), + new UIPropertyMetadata(Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel.None)); + + /// + /// Helper for setting HeadingLevel property on a DependencyObject. + /// + public static void SetHeadingLevel(DependencyObject element, Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel value) + { + if (element == null) + { + throw new ArgumentNullException(nameof(element)); + } + + element.SetValue(HeadingLevelProperty, value); + } + + /// + /// Helper for reading HeadingLevel property from a DependencyObject. + /// + public static Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevel(DependencyObject element) + { + if (element == null) + { + throw new ArgumentNullException(nameof(element)); + } + + return ((Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel)element.GetValue(HeadingLevelProperty)); + } + #endregion + #region private implementation // Validation callback for string properties private static bool IsNotNull(object value) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index c0517836bde..b7963b2a2a8 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -25,6 +25,17 @@ using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; +namespace Microsoft.UI.Xaml.Automation.Peers +{ + // TODO: Remove after testing + public enum AutomationHeadingLevel + { + None = 0, + Level1 = 1, + Level2 = 2 + }; +} + namespace System.Windows.Automation.Peers { /// @@ -703,6 +714,12 @@ virtual protected int GetPositionInSetCore() return AutomationProperties.AutomationPositionInSetDefault; } + /// + /// + virtual protected Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevelCore() + { + return Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel; + } // // INTERNAL STUFF - NOT OVERRIDABLE @@ -1263,6 +1280,31 @@ public int GetSizeOfSet() return result; } + /// + /// + /// + /// + /// + /// + public Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevel() + { + Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel result = Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel; + + if (_publicCallInProgress) + throw new InvalidOperationException(SR.Get(SRID.Automation_RecursivePublicCall)); + + try + { + _publicCallInProgress = true; + result = GetHeadingLevelCore(); + } + finally + { + _publicCallInProgress = false; + } + return result; + } + /// /// Attempt to get the value for the PositionInSet property. /// @@ -2312,6 +2354,7 @@ private static void Initialize() { s_propertyInfo[AutomationElementIdentifiers.PositionInSetProperty.Id] = new GetProperty(GetPositionInSet); } + s_propertyInfo[AutomationElementIdentifiers.HeadingLevelProperty.Id] = new GetProperty(GetHeadingLevel); } private delegate object WrapObject(AutomationPeer peer, object iface); @@ -2362,6 +2405,7 @@ internal PatternInfo(int id, WrapObject wrapObject, PatternInterface patternInte private static object GetLiveSetting(AutomationPeer peer) { return peer.GetLiveSetting(); } private static object GetControllerFor(AutomationPeer peer) { return peer.GetControllerForProviderArray(); } private static object GetSizeOfSet(AutomationPeer peer) { return peer.GetSizeOfSet(); } + private static object GetHeadingLevel(AutomationPeer peer) { return peer.GetHeadingLevel(); } private static object GetPositionInSet(AutomationPeer peer) { return peer.GetPositionInSet(); } private static Hashtable s_patternInfo; diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs index 4ef6f790a05..7e600830b8c 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs @@ -18,6 +18,17 @@ using System.Diagnostics; using MS.Internal.Automation; +namespace Microsoft.UI.Xaml.Automation.Peers +{ + // TODO: Remove after testing + public enum AutomationHeadingLevel + { + None = 0, + Level1 = 1, + Level2 = 2 + }; +} + namespace MS.Internal.Automation { // Disable warning for obsolete types. These are scheduled to be removed in M8.2 so @@ -274,6 +285,7 @@ internal static object ConvertToElementArray(object value) new AutomationPropertyInfo( null, AutomationElement.ItemStatusProperty, typeof(string), "" ), new AutomationPropertyInfo( null, AutomationElement.SizeOfSetProperty, typeof(int), -1 ), new AutomationPropertyInfo( null, AutomationElement.PositionInSetProperty, typeof(int), -1 ), + new AutomationPropertyInfo( null, AutomationElement.HeadingLevelProperty, typeof(Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel), null), // Pattern Available properties // PropertyID Type Default value diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs index 0852348ee76..ce47460345f 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs @@ -198,6 +198,10 @@ internal static AutomationElement Wrap(SafeNodeHandle hnode) /// public static readonly AutomationProperty PositionInSetProperty = AutomationElementIdentifiers.PositionInSetProperty; + /// + /// + public static readonly AutomationProperty HeadingLevelProperty = AutomationElementIdentifiers.HeadingLevelProperty; + #region IsNnnnPatternAvailable properties /// Property that indicates whether the DockPattern is available for this AutomationElement public static readonly AutomationProperty IsDockPatternAvailableProperty = AutomationElementIdentifiers.IsDockPatternAvailableProperty; diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs index fed8d758a06..1a498d3616e 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs @@ -270,7 +270,8 @@ internal enum Properties OutlineThickness, CenterPoint, Rotatation, - Size + Size, + HeadingLevel }; internal enum Events diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs index 2a421f9aaf7..7ff7db66c5b 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs @@ -116,6 +116,9 @@ public static class AutomationElementIdentifiers /// Property ID: FrameworkId - Identifies the underlying UI framework's name for the element being accessed public static readonly AutomationProperty FrameworkIdProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.FrameworkId, "AutomationElementIdentifiers.FrameworkIdProperty"); + /// Property ID: HeadingLevel - + public static readonly AutomationProperty HeadingLevelProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.HeadingLevel, "AutomationElementIdentifiers.HeadingLevelProperty"); + /// Property ID: IsRequiredForForm - Identifies weather an edit field is required to be filled out on a form public static readonly AutomationProperty IsRequiredForFormProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.IsRequiredForForm, "AutomationElementIdentifiers.IsRequiredForFormProperty"); From 9a5eb0e3b2433ee22f5f7fff6c9dff46c712e3ce Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 26 May 2021 12:01:05 -0300 Subject: [PATCH 02/42] adding None as the default result --- .../System/Windows/Automation/Peers/AutomationPeer.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index b7963b2a2a8..1192f4e7383 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -718,7 +718,7 @@ virtual protected int GetPositionInSetCore() /// virtual protected Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevelCore() { - return Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel; + return Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel.None; } // @@ -1288,7 +1288,7 @@ public int GetSizeOfSet() /// public Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevel() { - Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel result = Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel; + Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel result = Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel.None; if (_publicCallInProgress) throw new InvalidOperationException(SR.Get(SRID.Automation_RecursivePublicCall)); From 0174765091ce927df04140b79acd8672c12f3e20 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 26 May 2021 14:26:45 -0300 Subject: [PATCH 03/42] adding apicompat changes --- .../PresentationCore-ref.baseline.txt | 28 +-- .../PresentationFramework-ref.baseline.txt | 174 +----------------- ...m.Windows.Controls.Ribbon-ref.baseline.txt | 7 +- .../WindowsFormsIntegration-ref.baseline.txt | 5 +- 4 files changed, 10 insertions(+), 204 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt index 697271461f0..27359d4315a 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt @@ -1,27 +1,17 @@ Compat issues with assembly PresentationCore: -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.ContentElement.CommandBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.ContentElement.InputBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +TypesMustExist : Type 'Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.LocalizabilityAttribute' changed from '[AttributeUsageAttribute(412, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class | AttributeTargets.Enum | AttributeTargets.Field | AttributeTargets.Property | AttributeTargets.Struct, AllowMultiple=false, Inherited=true)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement.CommandBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement.InputBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement.PersistId' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement.RenderSize' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement3D.CommandBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement3D.InputBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +MembersMustExist : Member 'public System.Windows.DependencyProperty System.Windows.DependencyProperty System.Windows.Automation.AutomationProperties.HeadingLevelProperty' does not exist in the implementation but it does exist in the contract. +MembersMustExist : Member 'public Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel System.Windows.Automation.AutomationProperties.GetHeadingLevel(System.Windows.DependencyObject)' does not exist in the implementation but it does exist in the contract. +MembersMustExist : Member 'public void System.Windows.Automation.AutomationProperties.SetHeadingLevel(System.Windows.DependencyObject, Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel)' does not exist in the implementation but it does exist in the contract. +MembersMustExist : Member 'public Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel System.Windows.Automation.Peers.AutomationPeer.GetHeadingLevel()' does not exist in the implementation but it does exist in the contract. +MembersMustExist : Member 'protected Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel System.Windows.Automation.Peers.AutomationPeer.GetHeadingLevelCore()' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.FocusManager.GetFocusedElement(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.InputScope.Names' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.InputScope.PhraseList' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.Channel System.Windows.Media.Brush.GetChannelCore(System.Int32)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Int32 System.Windows.Media.Brush.GetChannelCountCore()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.GetHandleCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal void System.Windows.Media.Brush.ReleaseOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.FamilyTypeface.DeviceFontCharacterMetrics' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.FontFamily.FamilyMaps' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.FontFamily.FamilyNames' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.FontFamily.FamilyTypefaces' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Media.FontFamilyMap.Target' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Media.FontFamilyMap.Unicode' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. MembersMustExist : Member 'internal System.Object System.Windows.Media.Converters.BaseIListConverter.ConvertFromCore(System.ComponentModel.ITypeDescriptorContext, System.Globalization.CultureInfo, System.String)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Object System.Windows.Media.Converters.BaseIListConverter.ConvertToCore(System.ComponentModel.ITypeDescriptorContext, System.Globalization.CultureInfo, System.Object, System.Type)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Effects.Effect.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. @@ -32,10 +22,6 @@ MembersMustExist : Member 'internal System.Windows.Rect System.Windows.Media.Eff MembersMustExist : Member 'internal void System.Windows.Media.Effects.Effect.ReleaseOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapDecoder.SealObject()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapEncoder.SealObject()' does not exist in the implementation but it does exist in the contract. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Imaging.BitmapImage.StreamSource' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Media3D.ContainerUIElement3D.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Media3D.ModelVisual3D.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Media3D.Viewport3DVisual.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. MembersMustExist : Member 'internal System.Windows.Media.TextFormatting.TextParagraphCache System.Windows.Media.TextFormatting.TextFormatter.CreateParagraphCache(System.Windows.Media.TextFormatting.TextSource, System.Int32, System.Double, System.Windows.Media.TextFormatting.TextParagraphProperties, System.Windows.Media.TextFormatting.TextLineBreak, System.Windows.Media.TextFormatting.TextRunCache)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Resources.AssemblyAssociatedContentFileAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. -Total Issues: 39 +Total Issues: 25 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationFramework-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationFramework-ref.baseline.txt index e60eae0b0cf..11f445aa4e1 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationFramework-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationFramework-ref.baseline.txt @@ -4,70 +4,25 @@ MembersMustExist : Member 'internal System.String[] Microsoft.Win32.FileDialog.P MembersMustExist : Member 'internal System.Boolean Microsoft.Win32.FileDialog.RunFileDialog(MS.Win32.NativeMethods.OPENFILENAME_I)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.ComponentModel.DesignerProperties.GetIsInDesignMode(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.AttachedPropertyBrowsableForChildrenAttribute' changed from '[AttributeUsageAttribute(64, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple=false)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.DataTemplate.Triggers' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DataTrigger.Binding' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.DataTrigger.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DataTrigger.Value' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.EventTrigger.Actions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkContentElement.BindingGroup' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkContentElement.BindingGroup' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkContentElement.DataContext' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkContentElement.DataContext' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkContentElement.Name' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkElement.BindingGroup' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.BindingGroup' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkElement.DataContext' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.DataContext' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.FlowDirection' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.Height' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.MaxHeight' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.MaxWidth' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.MinHeight' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.MinWidth' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.FrameworkElement.Name' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.Name' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.Tag' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.ToolTip' changed from '[LocalizabilityAttribute(10)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ToolTip)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkElement.Triggers' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.Width' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElementFactory' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkTemplate' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkTemplate.Resources' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. MembersMustExist : Member 'internal void System.Windows.FrameworkTemplate.SetTargetTypeInternal(System.Type)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.HorizontalAlignment' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.MultiDataTrigger.Conditions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.MultiDataTrigger.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.MultiTrigger.Conditions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.MultiTrigger.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.ResizeMode' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.ResourceDictionary' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.ResourceDictionary.DeferrableContent' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.ResourceDictionary.Source' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Setter.Property' changed from '[LocalizabilityAttribute(0, Modifiability=0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Setter.Value' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.SetterBase' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.StaticResourceExtension' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Style' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Style.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Style.TargetType' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Style.Triggers' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.StyleTypedPropertyAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.TemplatePartAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.TemplateVisualStateAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.ThemeInfoAttribute' changed from '[AttributeUsageAttribute(1)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Thickness' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Trigger.Property' changed from '[LocalizabilityAttribute(0, Modifiability=0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Trigger.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Trigger.Value' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.TriggerBase' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.TriggerBase.EnterActions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.TriggerBase.ExitActions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.TriggerCollection' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.VerticalAlignment' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.VisualStateManager.GetVisualStateGroups(System.Windows.FrameworkElement)' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Window' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Window.DialogResult' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Window.Title' changed from '[LocalizabilityAttribute(2)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Title)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.WindowStartupLocation' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotRemoveAttribute : Attribute 'System.Xml.Serialization.XmlRootAttribute' exists on 'System.Windows.Annotations.Annotation' in the contract but not the implementation. CannotRemoveAttribute : Attribute 'System.Xml.Serialization.XmlRootAttribute' exists on 'System.Windows.Annotations.AnnotationResource' in the contract but not the implementation. @@ -75,188 +30,61 @@ CannotRemoveAttribute : Attribute 'System.Xml.Serialization.XmlRootAttribute' ex CannotRemoveAttribute : Attribute 'System.Xml.Serialization.XmlRootAttribute' exists on 'System.Windows.Annotations.ContentLocatorGroup' in the contract but not the implementation. MembersMustExist : Member 'internal System.Collections.Generic.List System.Windows.Automation.Peers.ContentTextAutomationPeer.GetAutomationPeersFromRange(System.Windows.Documents.ITextPointer, System.Windows.Documents.ITextPointer)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Collections.Generic.List System.Windows.Automation.Peers.TextAutomationPeer.GetAutomationPeersFromRange(System.Windows.Documents.ITextPointer, System.Windows.Documents.ITextPointer)' does not exist in the implementation but it does exist in the contract. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.AccessText.FontFamily' changed from '[LocalizabilityAttribute(14, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font, Modifiability=Modifiability.Unmodifiable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.AccessText.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.BooleanToVisibilityConverter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.CheckBox' changed from '[LocalizabilityAttribute(5)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.CheckBox)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ComboBox' changed from '[LocalizabilityAttribute(6)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ComboBox)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ComboBoxItem' changed from '[LocalizabilityAttribute(6)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ComboBox)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ContentControl' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ContentControl.ContentTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ContentPresenter' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ContextMenu.IsOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ContextMenu.PlacementTarget' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Control.FontFamily' changed from '[LocalizabilityAttribute(14)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Control.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ControlTemplate' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ControlTemplate.Triggers' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.DataGridTextColumn.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Decorator' changed from '[LocalizabilityAttribute(16, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.DefinitionBase' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Expander' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Frame' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Grid.ColumnDefinitions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Grid.RowDefinitions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridView.ColumnHeaderTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridView.Columns' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.GridViewColumn' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridViewColumn.CellTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridViewColumn.HeaderTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridViewHeaderRowPresenter.ColumnHeaderStringFormat' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridViewHeaderRowPresenter.ColumnHeaderTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.GroupBox' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.GroupStyle' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.HeaderedContentControl' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.HeaderedContentControl.Header' changed from '[LocalizabilityAttribute(3)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Label)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.HeaderedItemsControl' changed from '[LocalizabilityAttribute(8)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Menu)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Image' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.DefaultStylusPointDescription' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.EraserShape' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.IsGestureRecognizerAvailable' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.PreferredPasteFormats' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.UseCustomCursor' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ItemCollection' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ItemsControl' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.GroupStyle' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.GroupStyleSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.IsGrouping' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.ItemContainerStyleSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.Items' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.ItemsSource' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.ItemTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ItemsPresenter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Label' changed from '[LocalizabilityAttribute(3)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Label)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ListBox' changed from '[LocalizabilityAttribute(7)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ListBox)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ListBox.SelectedItems' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.MediaElement' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.MediaElement.Clock' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.MenuItem' changed from '[LocalizabilityAttribute(8)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Menu)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.MenuItem.Command' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.MenuItem.CommandParameter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.MenuItem.IsSubmenuOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.MenuItem.IsSuspendingPopupAnimation' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Orientation' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Page.FontFamily' changed from '[LocalizabilityAttribute(14, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font, Modifiability=Modifiability.Unmodifiable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Page.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Page.WindowTitle' changed from '[LocalizabilityAttribute(2)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Title)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Panel' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Panel.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.PasswordBox.Password' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.PasswordBox.SecurePassword' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.RadioButton' changed from '[LocalizabilityAttribute(9)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.RadioButton)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.RadioButton.GroupName' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.RichTextBox' changed from '[LocalizabilityAttribute(15)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Inherit)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.RichTextBox.CaretPosition' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ScrollContentPresenter.HorizontalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ScrollContentPresenter.ScrollOwner' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ScrollContentPresenter.VerticalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ScrollViewer' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Separator' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Slider' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.StackPanel.HorizontalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.StackPanel.ScrollOwner' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.StackPanel.VerticalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TabControl.SelectedContent' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TabControl.SelectedContentTemplate' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TabControl.SelectedContentTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBlock' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBlock.FontFamily' changed from '[LocalizabilityAttribute(14)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBlock.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBlock.Inlines' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBlock.Text' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBox' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.CaretIndex' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.LineCount' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBox.MaxLength' changed from '[LocalizabilityAttribute(0, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.SelectedText' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.SelectionLength' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.SelectionStart' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBox.Text' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ToolBar.IsOverflowOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ToolBarTray.ToolBars' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ToolTip' changed from '[LocalizabilityAttribute(10)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ToolTip)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ToolTip.IsOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ToolTip.PlacementTarget' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TreeView.SelectedItem' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TreeView.SelectedValue' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Viewport3D' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Viewport3D.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.VirtualizingStackPanel.HorizontalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.VirtualizingStackPanel.ScrollOwner' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.VirtualizingStackPanel.VerticalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ButtonBase' changed from '[LocalizabilityAttribute(4)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Button)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ButtonBase.Command' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ButtonBase.CommandParameter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. MembersMustExist : Member 'internal void System.Windows.Controls.Primitives.GridViewRowPresenterBase.OnColumnPropertyChanged(System.Windows.Controls.GridViewColumn, System.String)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.MenuBase' changed from '[LocalizabilityAttribute(8)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Menu)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.MultiSelector.SelectedItems' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.PlacementMode' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Popup' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.Popup.PlacementTarget' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ScrollBar' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.ScrollBar.ViewportSize' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector.IsSynchronizedWithCurrentItem' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedIndex' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedIndex' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedItem' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedValue' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedValue' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedValuePath' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.StatusBarItem' changed from '[LocalizabilityAttribute(15)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Inherit)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.TextBoxBase' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Thumb' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.TickBar' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ToggleButton.IsChecked' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Track' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.Binding.UpdateSourceExceptionFilter' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.BindingBase' changed from '[LocalizabilityAttribute(0, Modifiability=0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.CompositeCollection' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.MultiBinding.Bindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.MultiBinding.UpdateSourceExceptionFilter' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.ObjectDataProvider' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.PriorityBinding.Bindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Data.ValueConversionAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.XmlDataProvider' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.XmlDataProvider.Document' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.XmlDataProvider.XmlSerializer' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Data.XmlDataProvider.XPath' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.XmlNamespaceMappingCollection' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.AnchoredBlock.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.FixedDocument.Pages' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.FixedDocumentSequence.References' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.FixedPage.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument' changed from '[LocalizabilityAttribute(15, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Inherit, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.FlowDocument.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.ColumnGap' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.ColumnRuleWidth' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.ColumnWidth' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.FontFamily' changed from '[LocalizabilityAttribute(14, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font, Modifiability=Modifiability.Unmodifiable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.Hyperlink.Command' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.Hyperlink.CommandParameter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.Hyperlink.NavigateUri' changed from '[LocalizabilityAttribute(11)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Hyperlink)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.Hyperlink.TargetName' changed from '[LocalizabilityAttribute(0, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.List.ListItems' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.ListItem.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.PageContent.Child' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Paragraph.Inlines' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Section.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Section.HasTrailingParagraphBreakOnPaste' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Span.Inlines' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Table.Columns' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Table.RowGroups' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.TableCell.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.TableRow.Cells' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.TableRowGroup.Rows' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.TextElement.FontFamily' changed from '[LocalizabilityAttribute(14, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font, Modifiability=Modifiability.Unmodifiable)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.TextElement.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Documents.TextElementEditingBehaviorAttribute' changed from '[AttributeUsageAttribute(4)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DependencyProperty System.Windows.Input.KeyboardNavigation.ControlTabNavigationProperty' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DependencyProperty System.Windows.Input.KeyboardNavigation.DirectionalNavigationProperty' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DependencyProperty System.Windows.Input.KeyboardNavigation.TabNavigationProperty' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DependencyProperty System.Windows.Markup.XmlAttributeProperties.XmlSpaceProperty' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Markup.XmlAttributeProperties.GetXmlNamespaceMaps(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Markup.XmlAttributeProperties.GetXmlnsDefinition(System.Windows.DependencyObject)' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Markup.XmlAttributeProperties.GetXmlnsDefinition(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. @@ -264,4 +92,4 @@ CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVi CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Markup.XmlAttributeProperties.GetXmlSpace(System.Windows.DependencyObject)' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Animation.Storyboard.GetTarget(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Shapes.Shape' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -Total Issues: 265 +Total Issues: 93 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Windows.Controls.Ribbon-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Windows.Controls.Ribbon-ref.baseline.txt index 2367b0ffc9b..ccb6f8ad653 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Windows.Controls.Ribbon-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Windows.Controls.Ribbon-ref.baseline.txt @@ -1,9 +1,4 @@ Compat issues with assembly System.Windows.Controls.Ribbon: -CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Ribbon.RibbonGallery.SelectedValuePath' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. MembersMustExist : Member 'protected internal void System.Windows.Controls.Ribbon.RibbonGalleryItem.OnSelected(System.Windows.RoutedEventArgs)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'protected internal void System.Windows.Controls.Ribbon.RibbonGalleryItem.OnUnselected(System.Windows.RoutedEventArgs)' does not exist in the implementation but it does exist in the contract. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Ribbon.RibbonQuickAccessToolBar.IsOverflowOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Ribbon.Primitives.RibbonGalleryCategoriesPanel.HorizontalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Ribbon.Primitives.RibbonGalleryCategoriesPanel.ScrollOwner' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Ribbon.Primitives.RibbonGalleryCategoriesPanel.VerticalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -Total Issues: 7 +Total Issues: 2 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsFormsIntegration-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsFormsIntegration-ref.baseline.txt index a4e714e6922..fcc74cf8643 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsFormsIntegration-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsFormsIntegration-ref.baseline.txt @@ -1,4 +1 @@ -Compat issues with assembly WindowsFormsIntegration: -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Forms.Integration.ElementHost.Child' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Forms.Integration.ElementHost.HostContainer' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. -Total Issues: 2 +Total Issues: 0 From 1a5afaf427d93a73134d3734510f6b05556fa91d Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Wed, 9 Jun 2021 08:30:34 -0700 Subject: [PATCH 04/42] Coworking session with Felipe: adding OS checks for new automation properties --- .../Windows/Automation/Peers/AutomationPeer.cs | 7 ++++++- .../System/Windows/InterOp/OSVersionHelper.cs | 14 ++++++++++++++ .../Windows/InterOp/OperatingSystemVersion.cs | 3 +++ .../Automation/AutomationIdentifierConstants.cs | 10 +++++++++- 4 files changed, 32 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 1192f4e7383..1051ad60c20 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -2354,7 +2354,12 @@ private static void Initialize() { s_propertyInfo[AutomationElementIdentifiers.PositionInSetProperty.Id] = new GetProperty(GetPositionInSet); } - s_propertyInfo[AutomationElementIdentifiers.HeadingLevelProperty.Id] = new GetProperty(GetHeadingLevel); + + // HeadingLevel is an RS4+ UIAutomation property. This will be NULL on other operating system versions. + if (!AccessibilitySwitches.UseNetFx472CompatibleAccessibilityFeatures && AutomationElementIdentifiers.HeadingLevelProperty != null) + { + s_propertyInfo[AutomationElementIdentifiers.HeadingLevelProperty.Id] = new GetProperty(GetHeadingLevel); + } } private delegate object WrapObject(AutomationPeer peer, object iface); diff --git a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs index 4917407dfa8..489daff9908 100644 --- a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs +++ b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs @@ -50,6 +50,8 @@ internal static class OSVersionHelper internal static bool IsOsWindows10RS5OrGreater { get; set; } + internal static bool IsOsWindows10RS4OrGreater { get; set; } + internal static bool IsOsWindows10RS3OrGreater { get; set; } internal static bool IsOsWindows10RS2OrGreater { get; set; } @@ -94,6 +96,8 @@ static OSVersionHelper() { IsOsWindows10RS5OrGreater = IsWindows10RS5OrGreater(); + IsOsWindows10RS4OrGreater = IsWindows10RS4OrGreater(); + IsOsWindows10RS3OrGreater = IsWindows10RS3OrGreater(); IsOsWindows10RS2OrGreater = IsWindows10RS2OrGreater(); @@ -139,6 +143,10 @@ static OSVersionHelper() [return: MarshalAs(UnmanagedType.I1)] static extern bool IsWindows10RS5OrGreater(); + [DllImport(DllImport.PresentationNative, CallingConvention = CallingConvention.Cdecl)] + [return: MarshalAs(UnmanagedType.I1)] + static extern bool IsWindows10RS4OrGreater(); + [DllImport(DllImport.PresentationNative, CallingConvention = CallingConvention.Cdecl)] [return: MarshalAs(UnmanagedType.I1)] static extern bool IsWindows10RS3OrGreater(); @@ -221,6 +229,8 @@ internal static bool IsOsVersionOrGreater(OperatingSystemVersion osVer) { case OperatingSystemVersion.Windows10RS5: return IsOsWindows10RS5OrGreater; + case OperatingSystemVersion.Windows10RS4: + return IsOsWindows10RS4OrGreater; case OperatingSystemVersion.Windows10RS3: return IsOsWindows10RS3OrGreater; case OperatingSystemVersion.Windows10RS2: @@ -260,6 +270,10 @@ internal static OperatingSystemVersion GetOsVersion() { return OperatingSystemVersion.Windows10RS5; } + if (IsOsWindows10RS4OrGreater) + { + return OperatingSystemVersion.Windows10RS4; + } else if (IsOsWindows10RS3OrGreater) { return OperatingSystemVersion.Windows10RS3; diff --git a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OperatingSystemVersion.cs b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OperatingSystemVersion.cs index 59337f9fecf..b4543056b57 100644 --- a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OperatingSystemVersion.cs +++ b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OperatingSystemVersion.cs @@ -46,6 +46,9 @@ internal enum OperatingSystemVersion Windows10RS1, Windows10RS2, Windows10RS3, + Windows10RS4, Windows10RS5, } } + + diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs index 1a498d3616e..16e0338bed3 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs @@ -31,7 +31,15 @@ internal static class AutomationIdentifierConstants static AutomationIdentifierConstants() { - if (OSVersionHelper.IsOsWindows10RS2OrGreater) + if (OSVersionHelper.IsOsWindows10RS4OrGreater) + { + LastSupportedProperty = Properties.HeadingLevel; + LastSupportedEvent = Events.Changes; + LastSupportedPattern = Patterns.CustomNavigation; + LastSupportedTextAttribute = TextAttributes.SayAsInterpretAs; + LastSupportedControlType = ControlTypes.AppBar; + } + else if (OSVersionHelper.IsOsWindows10RS2OrGreater) { LastSupportedProperty = Properties.Size; LastSupportedEvent = Events.Changes; From 03125c02cbe5f6df48609ce44bc98df92458dfd6 Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Wed, 16 Jun 2021 16:43:45 -0700 Subject: [PATCH 05/42] Fix reference assemblies --- .../PresentationCore/ref/PresentationCore.cs | 14 ++++++++++++++ .../ref/UIAutomationClient.cs | 19 +++++++++++++++++++ .../ref/UIAutomationTypes.cs | 10 ++++++++++ 3 files changed, 43 insertions(+) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index 787b6ad7e18..38ef1f1c601 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -1,3 +1,12 @@ +namespace Microsoft.UI.Xaml.Automation.Peers +{ + public enum AutomationHeadingLevel + { + None = 0, + Level1 = 1, + Level2 = 2, + } +} namespace System.IO.Packaging { public static partial class PackageStore @@ -2131,6 +2140,7 @@ public static partial class AutomationProperties public static readonly System.Windows.DependencyProperty AcceleratorKeyProperty; public static readonly System.Windows.DependencyProperty AccessKeyProperty; public static readonly System.Windows.DependencyProperty AutomationIdProperty; + public static readonly System.Windows.DependencyProperty HeadingLevelProperty; public static readonly System.Windows.DependencyProperty HelpTextProperty; public static readonly System.Windows.DependencyProperty IsColumnHeaderProperty; public static readonly System.Windows.DependencyProperty IsOffscreenBehaviorProperty; @@ -2146,6 +2156,7 @@ public static partial class AutomationProperties public static string GetAcceleratorKey(System.Windows.DependencyObject element) { throw null; } public static string GetAccessKey(System.Windows.DependencyObject element) { throw null; } public static string GetAutomationId(System.Windows.DependencyObject element) { throw null; } + public static Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevel(System.Windows.DependencyObject element) { throw null; } public static string GetHelpText(System.Windows.DependencyObject element) { throw null; } public static bool GetIsColumnHeader(System.Windows.DependencyObject element) { throw null; } public static System.Windows.Automation.IsOffscreenBehavior GetIsOffscreenBehavior(System.Windows.DependencyObject element) { throw null; } @@ -2161,6 +2172,7 @@ public static partial class AutomationProperties public static void SetAcceleratorKey(System.Windows.DependencyObject element, string value) { } public static void SetAccessKey(System.Windows.DependencyObject element, string value) { } public static void SetAutomationId(System.Windows.DependencyObject element, string value) { } + public static void SetHeadingLevel(System.Windows.DependencyObject element, Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel value) { } public static void SetHelpText(System.Windows.DependencyObject element, string value) { } public static void SetIsColumnHeader(System.Windows.DependencyObject element, bool value) { } public static void SetIsOffscreenBehavior(System.Windows.DependencyObject element, System.Windows.Automation.IsOffscreenBehavior value) { } @@ -2277,6 +2289,8 @@ protected AutomationPeer() { } protected abstract System.Windows.Point GetClickablePointCore(); public System.Collections.Generic.List GetControlledPeers() { throw null; } protected virtual System.Collections.Generic.List GetControlledPeersCore() { throw null; } + public Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevel() { throw null; } + protected virtual Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevelCore() { throw null; } public string GetHelpText() { throw null; } protected abstract string GetHelpTextCore(); protected virtual System.Windows.Automation.Peers.HostedWindowWrapper GetHostRawElementProviderCore() { throw null; } diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs index 75ac07964da..4e24f88fd3f 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs @@ -1,3 +1,21 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// GenAPI Version: 6.0.4.31401 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +namespace Microsoft.UI.Xaml.Automation.Peers +{ + public enum AutomationHeadingLevel + { + None = 0, + Level1 = 1, + Level2 = 2, + } +} namespace System.Windows.Automation { public partial class AndCondition : System.Windows.Automation.Condition @@ -40,6 +58,7 @@ internal AutomationElement() { } public static readonly System.Windows.Automation.AutomationProperty CultureProperty; public static readonly System.Windows.Automation.AutomationProperty FrameworkIdProperty; public static readonly System.Windows.Automation.AutomationProperty HasKeyboardFocusProperty; + public static readonly System.Windows.Automation.AutomationProperty HeadingLevelProperty; public static readonly System.Windows.Automation.AutomationProperty HelpTextProperty; public static readonly System.Windows.Automation.AutomationProperty IsContentElementProperty; public static readonly System.Windows.Automation.AutomationProperty IsControlElementProperty; diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs index 622e1fbc6d6..d98428d5830 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs @@ -1,3 +1,12 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// GenAPI Version: 6.0.4.31401 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ namespace System.Windows.Automation { public sealed partial class AsyncContentLoadedEventArgs : System.Windows.Automation.AutomationEventArgs @@ -28,6 +37,7 @@ public static partial class AutomationElementIdentifiers public static readonly System.Windows.Automation.AutomationProperty CultureProperty; public static readonly System.Windows.Automation.AutomationProperty FrameworkIdProperty; public static readonly System.Windows.Automation.AutomationProperty HasKeyboardFocusProperty; + public static readonly System.Windows.Automation.AutomationProperty HeadingLevelProperty; public static readonly System.Windows.Automation.AutomationProperty HelpTextProperty; public static readonly System.Windows.Automation.AutomationProperty IsContentElementProperty; public static readonly System.Windows.Automation.AutomationProperty IsControlElementProperty; From edd1008337fafd7f07f4de9f68c24c836e753506 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Tue, 22 Jun 2021 20:06:06 -0300 Subject: [PATCH 06/42] Changing HeadingLevel enum to be in the correct way --- .../PresentationCore-ref.baseline.txt | 8 +-- .../UIAutomationClient-ref.baseline.txt | 5 +- .../UIAutomationTypes-ref.baseline.txt | 4 +- .../PresentationCore/PresentationCore.csproj | 1 + .../Automation/AutomationHeadingLevel.cs | 70 +++++++++++++++++++ .../Automation/AutomationProperties.cs | 10 +-- .../Automation/Peers/AutomationPeer.cs | 23 ++---- .../PresentationCore/ref/PresentationCore.cs | 32 +++++---- .../MS/Internal/Automation/Schema.cs | 13 +--- .../Automation/AutomationHeadingLevel.cs | 69 ++++++++++++++++++ .../UIAutomationClient.csproj | 1 + .../ref/UIAutomationClient.cs | 10 +-- 12 files changed, 177 insertions(+), 69 deletions(-) create mode 100644 src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs create mode 100644 src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt index 27359d4315a..74468828cc1 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt @@ -1,11 +1,5 @@ Compat issues with assembly PresentationCore: -TypesMustExist : Type 'Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.LocalizabilityAttribute' changed from '[AttributeUsageAttribute(412, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class | AttributeTargets.Enum | AttributeTargets.Field | AttributeTargets.Property | AttributeTargets.Struct, AllowMultiple=false, Inherited=true)]' in the implementation. -MembersMustExist : Member 'public System.Windows.DependencyProperty System.Windows.DependencyProperty System.Windows.Automation.AutomationProperties.HeadingLevelProperty' does not exist in the implementation but it does exist in the contract. -MembersMustExist : Member 'public Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel System.Windows.Automation.AutomationProperties.GetHeadingLevel(System.Windows.DependencyObject)' does not exist in the implementation but it does exist in the contract. -MembersMustExist : Member 'public void System.Windows.Automation.AutomationProperties.SetHeadingLevel(System.Windows.DependencyObject, Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel)' does not exist in the implementation but it does exist in the contract. -MembersMustExist : Member 'public Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel System.Windows.Automation.Peers.AutomationPeer.GetHeadingLevel()' does not exist in the implementation but it does exist in the contract. -MembersMustExist : Member 'protected Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel System.Windows.Automation.Peers.AutomationPeer.GetHeadingLevelCore()' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.FocusManager.GetFocusedElement(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.Channel System.Windows.Media.Brush.GetChannelCore(System.Int32)' does not exist in the implementation but it does exist in the contract. @@ -24,4 +18,4 @@ MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapDeco MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapEncoder.SealObject()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.TextFormatting.TextParagraphCache System.Windows.Media.TextFormatting.TextFormatter.CreateParagraphCache(System.Windows.Media.TextFormatting.TextSource, System.Int32, System.Double, System.Windows.Media.TextFormatting.TextParagraphProperties, System.Windows.Media.TextFormatting.TextLineBreak, System.Windows.Media.TextFormatting.TextRunCache)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Resources.AssemblyAssociatedContentFileAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. -Total Issues: 25 +Total Issues: 19 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt index 9fb8c0e805a..dee0c3be876 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt @@ -1,4 +1,3 @@ Compat issues with assembly UIAutomationClient: -TypesMustExist : Type 'Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. -MembersMustExist : Member 'public System.Windows.Automation.AutomationProperty System.Windows.Automation.AutomationProperty System.Windows.Automation.AutomationElement.HeadingLevelProperty' does not exist in the implementation but it does exist in the contract. -Total Issues: 2 +TypesMustExist : Type 'System.Windows.Automation.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. +Total Issues: 1 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt index 22a16d45308..fcc74cf8643 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt @@ -1,3 +1 @@ -Compat issues with assembly UIAutomationTypes: -MembersMustExist : Member 'public System.Windows.Automation.AutomationProperty System.Windows.Automation.AutomationProperty System.Windows.Automation.AutomationElementIdentifiers.HeadingLevelProperty' does not exist in the implementation but it does exist in the contract. -Total Issues: 1 +Total Issues: 0 diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj b/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj index f26ab3689d2..327818b45dc 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj @@ -392,6 +392,7 @@ + diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs new file mode 100644 index 00000000000..053108f42a1 --- /dev/null +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs @@ -0,0 +1,70 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +// +// +// +// Description: Enumeration for possible values of AutomationProperties.HeadingLevel +// + +namespace System.Windows.Automation +{ + /// + /// Describes the heading level of a control + /// + public enum AutomationHeadingLevel + { + /// + /// The element does not have a heading level + /// + None = 0, + + /// + /// The element has a heading level of 1 + /// + Level1 = 1, + + /// + /// The element has a heading level of 2 + /// + Level2 = 2, + + /// + /// The element has a heading level of 3 + /// + Level3 = 3, + + /// + /// The element has a heading level of 4 + /// + Level4 = 4, + + /// + /// The element has a heading level of 5 + /// + Level5 = 5, + + /// + /// The element has a heading level of 6 + /// + Level6 = 6, + + /// + /// The element has a heading level of 7 + /// + Level7 = 7, + + /// + /// The element has a heading level of 8 + /// + Level8 = 8, + + /// + /// The element has a heading level of 9 + /// + Level9 = 9, + } + +} + diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs index ed02f3a0f6d..d187c6d5dec 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs @@ -598,14 +598,14 @@ public static int GetSizeOfSet(DependencyObject element) public static readonly DependencyProperty HeadingLevelProperty = DependencyProperty.RegisterAttached( "HeadingLevel", - typeof(Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel), + typeof(AutomationHeadingLevel), typeof(AutomationProperties), - new UIPropertyMetadata(Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel.None)); + new UIPropertyMetadata(AutomationHeadingLevel.None)); /// /// Helper for setting HeadingLevel property on a DependencyObject. /// - public static void SetHeadingLevel(DependencyObject element, Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel value) + public static void SetHeadingLevel(DependencyObject element, AutomationHeadingLevel value) { if (element == null) { @@ -618,14 +618,14 @@ public static void SetHeadingLevel(DependencyObject element, Microsoft.UI.Xaml.A /// /// Helper for reading HeadingLevel property from a DependencyObject. /// - public static Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevel(DependencyObject element) + public static AutomationHeadingLevel GetHeadingLevel(DependencyObject element) { if (element == null) { throw new ArgumentNullException(nameof(element)); } - return ((Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel)element.GetValue(HeadingLevelProperty)); + return ((AutomationHeadingLevel)element.GetValue(HeadingLevelProperty)); } #endregion diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 1051ad60c20..ca6d8c37a95 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -25,17 +25,6 @@ using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; -namespace Microsoft.UI.Xaml.Automation.Peers -{ - // TODO: Remove after testing - public enum AutomationHeadingLevel - { - None = 0, - Level1 = 1, - Level2 = 2 - }; -} - namespace System.Windows.Automation.Peers { /// @@ -716,9 +705,9 @@ virtual protected int GetPositionInSetCore() /// /// - virtual protected Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevelCore() + virtual protected AutomationHeadingLevel GetHeadingLevelCore() { - return Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel.None; + return AutomationHeadingLevel.None; } // @@ -1286,9 +1275,9 @@ public int GetSizeOfSet() /// /// /// - public Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevel() + public AutomationHeadingLevel GetHeadingLevel() { - Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel result = Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel.None; + AutomationHeadingLevel result = AutomationHeadingLevel.None; if (_publicCallInProgress) throw new InvalidOperationException(SR.Get(SRID.Automation_RecursivePublicCall)); @@ -1798,7 +1787,7 @@ private void RaisePropertyChangedInternal(IRawElementProviderSimple provider, #endif } - // InvalidateLimit – lower bound for raising ChildrenInvalidated StructureChange event + // InvalidateLimit � lower bound for raising ChildrenInvalidated StructureChange event internal void UpdateChildrenInternal(int invalidateLimit) { List oldChildren = _children; @@ -2031,7 +2020,7 @@ internal void UpdateSubtree() /// /// propagate the new value for AncestorsInvalid through the parent chain, - /// use EventSource (wrapper) peers whenever available as it’s the one connected to the tree. + /// use EventSource (wrapper) peers whenever available as it�s the one connected to the tree. /// internal void InvalidateAncestorsRecursive() { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index 38ef1f1c601..c89b750ea38 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -1,12 +1,3 @@ -namespace Microsoft.UI.Xaml.Automation.Peers -{ - public enum AutomationHeadingLevel - { - None = 0, - Level1 = 1, - Level2 = 2, - } -} namespace System.IO.Packaging { public static partial class PackageStore @@ -2135,6 +2126,21 @@ public enum AutomationLiveSetting Polite = 1, Assertive = 2, } + + public enum AutomationHeadingLevel + { + None = 0, + Level1 = 1, + Level2 = 2, + Level3 = 3, + Level4 = 4, + Level5 = 5, + Level6 = 6, + Level7 = 7, + Level8 = 8, + Level9 = 9, + } + public static partial class AutomationProperties { public static readonly System.Windows.DependencyProperty AcceleratorKeyProperty; @@ -2156,7 +2162,7 @@ public static partial class AutomationProperties public static string GetAcceleratorKey(System.Windows.DependencyObject element) { throw null; } public static string GetAccessKey(System.Windows.DependencyObject element) { throw null; } public static string GetAutomationId(System.Windows.DependencyObject element) { throw null; } - public static Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevel(System.Windows.DependencyObject element) { throw null; } + public static System.Windows.Automation.AutomationHeadingLevel GetHeadingLevel(System.Windows.DependencyObject element) { throw null; } public static string GetHelpText(System.Windows.DependencyObject element) { throw null; } public static bool GetIsColumnHeader(System.Windows.DependencyObject element) { throw null; } public static System.Windows.Automation.IsOffscreenBehavior GetIsOffscreenBehavior(System.Windows.DependencyObject element) { throw null; } @@ -2172,7 +2178,7 @@ public static partial class AutomationProperties public static void SetAcceleratorKey(System.Windows.DependencyObject element, string value) { } public static void SetAccessKey(System.Windows.DependencyObject element, string value) { } public static void SetAutomationId(System.Windows.DependencyObject element, string value) { } - public static void SetHeadingLevel(System.Windows.DependencyObject element, Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel value) { } + public static void SetHeadingLevel(System.Windows.DependencyObject element, System.Windows.Automation.AutomationHeadingLevel value) { } public static void SetHelpText(System.Windows.DependencyObject element, string value) { } public static void SetIsColumnHeader(System.Windows.DependencyObject element, bool value) { } public static void SetIsOffscreenBehavior(System.Windows.DependencyObject element, System.Windows.Automation.IsOffscreenBehavior value) { } @@ -2289,8 +2295,8 @@ protected AutomationPeer() { } protected abstract System.Windows.Point GetClickablePointCore(); public System.Collections.Generic.List GetControlledPeers() { throw null; } protected virtual System.Collections.Generic.List GetControlledPeersCore() { throw null; } - public Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevel() { throw null; } - protected virtual Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel GetHeadingLevelCore() { throw null; } + public System.Windows.Automation.AutomationHeadingLevel GetHeadingLevel() { throw null; } + protected virtual System.Windows.Automation.AutomationHeadingLevel GetHeadingLevelCore() { throw null; } public string GetHelpText() { throw null; } protected abstract string GetHelpTextCore(); protected virtual System.Windows.Automation.Peers.HostedWindowWrapper GetHostRawElementProviderCore() { throw null; } diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs index 7e600830b8c..beaf5292e6f 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs @@ -18,17 +18,6 @@ using System.Diagnostics; using MS.Internal.Automation; -namespace Microsoft.UI.Xaml.Automation.Peers -{ - // TODO: Remove after testing - public enum AutomationHeadingLevel - { - None = 0, - Level1 = 1, - Level2 = 2 - }; -} - namespace MS.Internal.Automation { // Disable warning for obsolete types. These are scheduled to be removed in M8.2 so @@ -285,7 +274,7 @@ internal static object ConvertToElementArray(object value) new AutomationPropertyInfo( null, AutomationElement.ItemStatusProperty, typeof(string), "" ), new AutomationPropertyInfo( null, AutomationElement.SizeOfSetProperty, typeof(int), -1 ), new AutomationPropertyInfo( null, AutomationElement.PositionInSetProperty, typeof(int), -1 ), - new AutomationPropertyInfo( null, AutomationElement.HeadingLevelProperty, typeof(Microsoft.UI.Xaml.Automation.Peers.AutomationHeadingLevel), null), + new AutomationPropertyInfo( null, AutomationElement.HeadingLevelProperty, typeof(AutomationHeadingLevel),AutomationHeadingLevel.None ), // Pattern Available properties // PropertyID Type Default value diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs new file mode 100644 index 00000000000..5d42d5d1823 --- /dev/null +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs @@ -0,0 +1,69 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +// +// +// +// Description: Enumeration for possible values of AutomationProperties.HeadingLevel +// + +namespace System.Windows.Automation +{ + /// + /// Describes the heading level of a control + /// + public enum AutomationHeadingLevel + { + /// + /// The element does not have a heading level + /// + None = 0, + + /// + /// The element has a heading level of 1 + /// + Level1 = 1, + + /// + /// The element has a heading level of 2 + /// + Level2 = 2, + + /// + /// The element has a heading level of 3 + /// + Level3 = 3, + + /// + /// The element has a heading level of 4 + /// + Level4 = 4, + + /// + /// The element has a heading level of 5 + /// + Level5 = 5, + + /// + /// The element has a heading level of 6 + /// + Level6 = 6, + + /// + /// The element has a heading level of 7 + /// + Level7 = 7, + + /// + /// The element has a heading level of 8 + /// + Level8 = 8, + + /// + /// The element has a heading level of 9 + /// + Level9 = 9, + } + +} \ No newline at end of file diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj index 2ccf4270b24..7d75e4f8bb6 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj @@ -61,6 +61,7 @@ + diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs index 4e24f88fd3f..4f6f9ece8d8 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs @@ -7,15 +7,7 @@ // the code is regenerated. // //------------------------------------------------------------------------------ -namespace Microsoft.UI.Xaml.Automation.Peers -{ - public enum AutomationHeadingLevel - { - None = 0, - Level1 = 1, - Level2 = 2, - } -} + namespace System.Windows.Automation { public partial class AndCondition : System.Windows.Automation.Condition From 0bcb251177a713e3fb5c689d4d3eb14d0f0cab65 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Mon, 5 Jul 2021 12:38:32 -0300 Subject: [PATCH 07/42] adding isdialog implementation --- .../PresentationCore-ref.baseline.txt | 3 +- .../Automation/AutomationProperties.cs | 33 +++++++++++++++++ .../Automation/Peers/AutomationPeer.cs | 35 +++++++++++++++++++ .../PresentationCore/ref/PresentationCore.cs | 5 +++ .../Automation/Peers/ToolTipAutomationPeer.cs | 4 +++ .../MS/Internal/Automation/Schema.cs | 1 + .../Windows/Automation/AutomationElement.cs | 5 +++ .../ref/UIAutomationClient.cs | 1 + .../AutomationIdentifierConstants.cs | 3 +- .../AutomationElementIdentifiers.cs | 3 ++ .../ref/UIAutomationTypes.cs | 1 + 11 files changed, 92 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt index 74468828cc1..bdc50766010 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt @@ -1,5 +1,6 @@ Compat issues with assembly PresentationCore: CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.LocalizabilityAttribute' changed from '[AttributeUsageAttribute(412, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class | AttributeTargets.Enum | AttributeTargets.Field | AttributeTargets.Property | AttributeTargets.Struct, AllowMultiple=false, Inherited=true)]' in the implementation. +MembersMustExist : Member 'public System.Windows.DependencyProperty System.Windows.DependencyProperty System.Windows.Automation.AutomationProperties.IsDialogProperty' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.FocusManager.GetFocusedElement(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.Channel System.Windows.Media.Brush.GetChannelCore(System.Int32)' does not exist in the implementation but it does exist in the contract. @@ -18,4 +19,4 @@ MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapDeco MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapEncoder.SealObject()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.TextFormatting.TextParagraphCache System.Windows.Media.TextFormatting.TextFormatter.CreateParagraphCache(System.Windows.Media.TextFormatting.TextSource, System.Int32, System.Double, System.Windows.Media.TextFormatting.TextParagraphProperties, System.Windows.Media.TextFormatting.TextLineBreak, System.Windows.Media.TextFormatting.TextRunCache)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Resources.AssemblyAssociatedContentFileAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. -Total Issues: 19 +Total Issues: 20 diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs index d187c6d5dec..47a082aa63b 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs @@ -629,7 +629,40 @@ public static AutomationHeadingLevel GetHeadingLevel(DependencyObject element) } #endregion + #region isDialog + public static readonly DependencyProperty IsDialogProperty = + DependencyProperty.RegisterAttached( + "IsDialog", + typeof(bool), + typeof(AutomationProperties), + new UIPropertyMetadata(false)); + + /// + /// Helper for setting IsDialog property on a DependencyObject. + /// #region private implementation + public static void SetIsDialog(DependencyObject element, bool value) + { + if(element == null) + { + throw new ArgumentNullException(nameof(element)); + } + element.SetValue(IsDialogProperty, value); + } + + /// + /// Helper for reading IsDialog property from a DependencyObject. + public static bool GetIsDialog(DependencyObject element) + { + if (element == null) + { + throw new ArgumentNullException(nameof(element)); + } + + return (bool)element.GetValue(IsDialogProperty); + } + #endregion + // Validation callback for string properties private static bool IsNotNull(object value) { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index ca6d8c37a95..9d949bc36e6 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -710,6 +710,13 @@ virtual protected AutomationHeadingLevel GetHeadingLevelCore() return AutomationHeadingLevel.None; } + /// + /// Override this method to provide UIAutomation with a bool value describing if this element is a dialog. + /// + virtual protected bool GetIsDialogCore(){ + return false; + } + // // INTERNAL STUFF - NOT OVERRIDABLE // @@ -1294,6 +1301,33 @@ public AutomationHeadingLevel GetHeadingLevel() return result; } + + /// + /// Attempt to get the value for the IsDialog property. + /// + /// + /// This public call cannot be attempted if another public call is in progress. + /// + /// + /// The value for the IsDialog property. + /// + public bool GetIsDialog(){ + bool result = false; + if(_publicCallInProgress) + throw new InvalidOperationException(SR.Get(SRID.Automation_RecursivePublicCall)); + + try + { + _publicCallInProgress = true; + result = GetIsDialogCore(); + } + finally + { + _publicCallInProgress = false; + } + return result; + } + /// /// Attempt to get the value for the PositionInSet property. /// @@ -2400,6 +2434,7 @@ internal PatternInfo(int id, WrapObject wrapObject, PatternInterface patternInte private static object GetControllerFor(AutomationPeer peer) { return peer.GetControllerForProviderArray(); } private static object GetSizeOfSet(AutomationPeer peer) { return peer.GetSizeOfSet(); } private static object GetHeadingLevel(AutomationPeer peer) { return peer.GetHeadingLevel(); } + private static object GetIsDialog(AutomationPeer peer) { return peer.GetIsDialog(); } private static object GetPositionInSet(AutomationPeer peer) { return peer.GetPositionInSet(); } private static Hashtable s_patternInfo; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index c89b750ea38..5758542d2df 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -2165,6 +2165,7 @@ public static partial class AutomationProperties public static System.Windows.Automation.AutomationHeadingLevel GetHeadingLevel(System.Windows.DependencyObject element) { throw null; } public static string GetHelpText(System.Windows.DependencyObject element) { throw null; } public static bool GetIsColumnHeader(System.Windows.DependencyObject element) { throw null; } + public static bool GetIsDialog(System.Windows.DependencyObject element) { throw null; } public static System.Windows.Automation.IsOffscreenBehavior GetIsOffscreenBehavior(System.Windows.DependencyObject element) { throw null; } public static bool GetIsRequiredForForm(System.Windows.DependencyObject element) { throw null; } public static bool GetIsRowHeader(System.Windows.DependencyObject element) { throw null; } @@ -2181,6 +2182,7 @@ public static void SetAutomationId(System.Windows.DependencyObject element, stri public static void SetHeadingLevel(System.Windows.DependencyObject element, System.Windows.Automation.AutomationHeadingLevel value) { } public static void SetHelpText(System.Windows.DependencyObject element, string value) { } public static void SetIsColumnHeader(System.Windows.DependencyObject element, bool value) { } + public static void SetIsDialog(System.Windows.DependencyObject element, bool value) { } public static void SetIsOffscreenBehavior(System.Windows.DependencyObject element, System.Windows.Automation.IsOffscreenBehavior value) { } public static void SetIsRequiredForForm(System.Windows.DependencyObject element, bool value) { } public static void SetIsRowHeader(System.Windows.DependencyObject element, bool value) { } @@ -2300,6 +2302,9 @@ protected AutomationPeer() { } public string GetHelpText() { throw null; } protected abstract string GetHelpTextCore(); protected virtual System.Windows.Automation.Peers.HostedWindowWrapper GetHostRawElementProviderCore() { throw null; } + + public bool GetIsDialog() { throw null; } + protected virtual bool GetIsDialogCore() { throw null; } public string GetItemStatus() { throw null; } protected abstract string GetItemStatusCore(); public string GetItemType() { throw null; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs index 76d7f371234..2f72b92995e 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs @@ -29,6 +29,10 @@ protected override AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.ToolTip; } + + protected override bool GetIsDialogCore(){ + return true; + } } } diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs index beaf5292e6f..737fcc6259b 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs @@ -275,6 +275,7 @@ internal static object ConvertToElementArray(object value) new AutomationPropertyInfo( null, AutomationElement.SizeOfSetProperty, typeof(int), -1 ), new AutomationPropertyInfo( null, AutomationElement.PositionInSetProperty, typeof(int), -1 ), new AutomationPropertyInfo( null, AutomationElement.HeadingLevelProperty, typeof(AutomationHeadingLevel),AutomationHeadingLevel.None ), + new AutomationPropertyInfo( convertToBool, AutomationElement.IsDialogProperty, typeof(bool), false ), // Pattern Available properties // PropertyID Type Default value diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs index ce47460345f..d09ce40c35f 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs @@ -202,6 +202,11 @@ internal static AutomationElement Wrap(SafeNodeHandle hnode) /// public static readonly AutomationProperty HeadingLevelProperty = AutomationElementIdentifiers.HeadingLevelProperty; + /// + /// Property ID: IsDialog - Describes if the automation element is a dialog. + /// + public static readonly AutomationProperty IsDialogProperty = AutomationElementIdentifiers.IsDialogProperty; + #region IsNnnnPatternAvailable properties /// Property that indicates whether the DockPattern is available for this AutomationElement public static readonly AutomationProperty IsDockPatternAvailableProperty = AutomationElementIdentifiers.IsDockPatternAvailableProperty; diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs index 4f6f9ece8d8..bc79efafe63 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs @@ -54,6 +54,7 @@ internal AutomationElement() { } public static readonly System.Windows.Automation.AutomationProperty HelpTextProperty; public static readonly System.Windows.Automation.AutomationProperty IsContentElementProperty; public static readonly System.Windows.Automation.AutomationProperty IsControlElementProperty; + public static readonly System.Windows.Automation.AutomationProperty IsDialogProperty; public static readonly System.Windows.Automation.AutomationProperty IsDockPatternAvailableProperty; public static readonly System.Windows.Automation.AutomationProperty IsEnabledProperty; public static readonly System.Windows.Automation.AutomationProperty IsExpandCollapsePatternAvailableProperty; diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs index 16e0338bed3..d291f71917c 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs @@ -279,7 +279,8 @@ internal enum Properties CenterPoint, Rotatation, Size, - HeadingLevel + HeadingLevel, + IsDialog }; internal enum Events diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs index 7ff7db66c5b..8ca890ed4a7 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs @@ -119,6 +119,9 @@ public static class AutomationElementIdentifiers /// Property ID: HeadingLevel - public static readonly AutomationProperty HeadingLevelProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.HeadingLevel, "AutomationElementIdentifiers.HeadingLevelProperty"); + /// Property ID: IsDialog - + public static readonly AutomationProperty IsDialogProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.IsDialog, "AutomationElementIdentifiers.IsDialogProperty"); + /// Property ID: IsRequiredForForm - Identifies weather an edit field is required to be filled out on a form public static readonly AutomationProperty IsRequiredForFormProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.IsRequiredForForm, "AutomationElementIdentifiers.IsRequiredForFormProperty"); diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs index d98428d5830..3cd6b384c58 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs @@ -41,6 +41,7 @@ public static partial class AutomationElementIdentifiers public static readonly System.Windows.Automation.AutomationProperty HelpTextProperty; public static readonly System.Windows.Automation.AutomationProperty IsContentElementProperty; public static readonly System.Windows.Automation.AutomationProperty IsControlElementProperty; + public static readonly System.Windows.Automation.AutomationProperty IsDialogProperty; public static readonly System.Windows.Automation.AutomationProperty IsDockPatternAvailableProperty; public static readonly System.Windows.Automation.AutomationProperty IsEnabledProperty; public static readonly System.Windows.Automation.AutomationProperty IsExpandCollapsePatternAvailableProperty; From 0e3ff1ddee77bf06871c635c63fb9e1fbe861371 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Mon, 5 Jul 2021 17:10:07 -0300 Subject: [PATCH 08/42] changing to isdialog from getisdialog --- .../PresentationCore-ref.baseline.txt | 4 ++- .../Automation/AutomationProperties.cs | 2 +- .../Automation/Peers/AutomationPeer.cs | 31 +++++++++++-------- .../Peers/TextBlockAutomationPeer.cs | 1 + .../Automation/Peers/ToolTipAutomationPeer.cs | 2 +- .../Windows/Automation/AutomationElement.cs | 3 +- .../AutomationIdentifierConstants.cs | 4 +-- 7 files changed, 28 insertions(+), 19 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt index bdc50766010..cd8d50076c4 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt @@ -1,6 +1,8 @@ Compat issues with assembly PresentationCore: CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.LocalizabilityAttribute' changed from '[AttributeUsageAttribute(412, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class | AttributeTargets.Enum | AttributeTargets.Field | AttributeTargets.Property | AttributeTargets.Struct, AllowMultiple=false, Inherited=true)]' in the implementation. MembersMustExist : Member 'public System.Windows.DependencyProperty System.Windows.DependencyProperty System.Windows.Automation.AutomationProperties.IsDialogProperty' does not exist in the implementation but it does exist in the contract. +MembersMustExist : Member 'public System.Boolean System.Windows.Automation.Peers.AutomationPeer.IsDialog()' does not exist in the implementation but it does exist in the contract. +MembersMustExist : Member 'protected System.Boolean System.Windows.Automation.Peers.AutomationPeer.IsDialogCore()' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.FocusManager.GetFocusedElement(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.Channel System.Windows.Media.Brush.GetChannelCore(System.Int32)' does not exist in the implementation but it does exist in the contract. @@ -19,4 +21,4 @@ MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapDeco MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapEncoder.SealObject()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.TextFormatting.TextParagraphCache System.Windows.Media.TextFormatting.TextFormatter.CreateParagraphCache(System.Windows.Media.TextFormatting.TextSource, System.Int32, System.Double, System.Windows.Media.TextFormatting.TextParagraphProperties, System.Windows.Media.TextFormatting.TextLineBreak, System.Windows.Media.TextFormatting.TextRunCache)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Resources.AssemblyAssociatedContentFileAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. -Total Issues: 20 +Total Issues: 22 diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs index 47a082aa63b..00c1569e809 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs @@ -640,7 +640,6 @@ public static AutomationHeadingLevel GetHeadingLevel(DependencyObject element) /// /// Helper for setting IsDialog property on a DependencyObject. /// - #region private implementation public static void SetIsDialog(DependencyObject element, bool value) { if(element == null) @@ -663,6 +662,7 @@ public static bool GetIsDialog(DependencyObject element) } #endregion + #region private implementation // Validation callback for string properties private static bool IsNotNull(object value) { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 9d949bc36e6..c35528a28da 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -713,7 +713,8 @@ virtual protected AutomationHeadingLevel GetHeadingLevelCore() /// /// Override this method to provide UIAutomation with a bool value describing if this element is a dialog. /// - virtual protected bool GetIsDialogCore(){ + virtual protected bool IsDialogCore() + { return false; } @@ -1311,21 +1312,21 @@ public AutomationHeadingLevel GetHeadingLevel() /// /// The value for the IsDialog property. /// - public bool GetIsDialog(){ + public bool IsDialog(){ bool result = false; if(_publicCallInProgress) throw new InvalidOperationException(SR.Get(SRID.Automation_RecursivePublicCall)); - try - { - _publicCallInProgress = true; - result = GetIsDialogCore(); - } - finally - { - _publicCallInProgress = false; - } - return result; + try + { + _publicCallInProgress = true; + result = IsDialogCore(); + } + finally + { + _publicCallInProgress = false; + } + return result; } /// @@ -2383,6 +2384,10 @@ private static void Initialize() { s_propertyInfo[AutomationElementIdentifiers.HeadingLevelProperty.Id] = new GetProperty(GetHeadingLevel); } + if (!AccessibilitySwitches.UseNetFx472CompatibleAccessibilityFeatures && AutomationElementIdentifiers.IsDialogProperty != null) + { + s_propertyInfo[AutomationElementIdentifiers.IsDialogProperty.Id] = new GetProperty(IsDialog); + } } private delegate object WrapObject(AutomationPeer peer, object iface); @@ -2434,7 +2439,7 @@ internal PatternInfo(int id, WrapObject wrapObject, PatternInterface patternInte private static object GetControllerFor(AutomationPeer peer) { return peer.GetControllerForProviderArray(); } private static object GetSizeOfSet(AutomationPeer peer) { return peer.GetSizeOfSet(); } private static object GetHeadingLevel(AutomationPeer peer) { return peer.GetHeadingLevel(); } - private static object GetIsDialog(AutomationPeer peer) { return peer.GetIsDialog(); } + private static object IsDialog(AutomationPeer peer) { return peer.IsDialog(); } private static object GetPositionInSet(AutomationPeer peer) { return peer.GetPositionInSet(); } private static Hashtable s_patternInfo; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/TextBlockAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/TextBlockAutomationPeer.cs index c458b438b98..7dfb16b3580 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/TextBlockAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/TextBlockAutomationPeer.cs @@ -76,5 +76,6 @@ override protected bool IsControlElementCore() return false; } + } } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs index 2f72b92995e..8cae7a123f7 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs @@ -30,7 +30,7 @@ protected override AutomationControlType GetAutomationControlTypeCore() return AutomationControlType.ToolTip; } - protected override bool GetIsDialogCore(){ + protected override bool IsDialogCore(){ return true; } } diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs index d09ce40c35f..13487f6c29a 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs @@ -199,11 +199,12 @@ internal static AutomationElement Wrap(SafeNodeHandle hnode) public static readonly AutomationProperty PositionInSetProperty = AutomationElementIdentifiers.PositionInSetProperty; /// + /// Property ID: HeadingLevel - Describes if the heading level of an element. /// public static readonly AutomationProperty HeadingLevelProperty = AutomationElementIdentifiers.HeadingLevelProperty; /// - /// Property ID: IsDialog - Describes if the automation element is a dialog. + /// Property ID: IsDialog - Identifies if the automation element is a dialog. /// public static readonly AutomationProperty IsDialogProperty = AutomationElementIdentifiers.IsDialogProperty; diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs index d291f71917c..a168722861e 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs @@ -279,8 +279,8 @@ internal enum Properties CenterPoint, Rotatation, Size, - HeadingLevel, - IsDialog + IsDialog, + HeadingLevel }; internal enum Events From 3a8be233e06de816b5cfe77e176f22ce0d6124ff Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Tue, 6 Jul 2021 12:40:02 -0300 Subject: [PATCH 09/42] improving isdialog implementation --- .../PresentationCore-ref-Net48.baseline.txt | 3 ++- .../Baselines/PresentationCore-ref.baseline.txt | 5 +---- .../PresentationFramework.cs | 3 +++ .../Windows/Automation/Peers/AutomationPeer.cs | 11 +++-------- .../Peers/ContentElementAutomationPeer.cs | 8 ++++++++ .../Automation/Peers/UIElement3DAutomationPeer.cs | 6 ++++++ .../Automation/Peers/UIElementAutomationPeer.cs | 6 ++++++ .../src/PresentationCore/ref/PresentationCore.cs | 8 ++++++-- .../Peers/DataGridCellItemAutomationPeer.cs | 12 ++++++++++++ .../Automation/Peers/DateTimeAutomationPeer.cs | 15 +++++++++++++++ .../Automation/Peers/ItemAutomationPeer.cs | 12 ++++++++++++ .../Automation/Peers/TextBlockAutomationPeer.cs | 1 - .../Automation/Peers/ToolTipAutomationPeer.cs | 4 ---- .../ref/PresentationFramework.cs | 3 +++ 14 files changed, 77 insertions(+), 20 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref-Net48.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref-Net48.baseline.txt index cf58cee29da..9138518a45e 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref-Net48.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref-Net48.baseline.txt @@ -1,5 +1,6 @@ Compat issues with assembly PresentationCore: CannotRemoveBaseTypeOrInterface : Type 'System.Windows.LocalizabilityAttribute' does not implement interface 'System.Runtime.InteropServices._Attribute' in the implementation but it does in the contract. +CannotAddAbstractMembers : Member 'protected System.Boolean System.Windows.Automation.Peers.AutomationPeer.IsDialogCore()' is abstract in the implementation but is missing in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.Channel System.Windows.Media.Brush.GetChannelCore(System.Int32)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Int32 System.Windows.Media.Brush.GetChannelCountCore()' does not exist in the implementation but it does exist in the contract. @@ -19,4 +20,4 @@ MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapDeco MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapEncoder.SealObject()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.TextFormatting.TextParagraphCache System.Windows.Media.TextFormatting.TextFormatter.CreateParagraphCache(System.Windows.Media.TextFormatting.TextSource, System.Int32, System.Double, System.Windows.Media.TextFormatting.TextParagraphProperties, System.Windows.Media.TextFormatting.TextLineBreak, System.Windows.Media.TextFormatting.TextRunCache)' does not exist in the implementation but it does exist in the contract. CannotRemoveBaseTypeOrInterface : Type 'System.Windows.Resources.AssemblyAssociatedContentFileAttribute' does not implement interface 'System.Runtime.InteropServices._Attribute' in the implementation but it does in the contract. -Total Issues: 20 +Total Issues: 21 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt index cd8d50076c4..74468828cc1 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt @@ -1,8 +1,5 @@ Compat issues with assembly PresentationCore: CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.LocalizabilityAttribute' changed from '[AttributeUsageAttribute(412, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class | AttributeTargets.Enum | AttributeTargets.Field | AttributeTargets.Property | AttributeTargets.Struct, AllowMultiple=false, Inherited=true)]' in the implementation. -MembersMustExist : Member 'public System.Windows.DependencyProperty System.Windows.DependencyProperty System.Windows.Automation.AutomationProperties.IsDialogProperty' does not exist in the implementation but it does exist in the contract. -MembersMustExist : Member 'public System.Boolean System.Windows.Automation.Peers.AutomationPeer.IsDialog()' does not exist in the implementation but it does exist in the contract. -MembersMustExist : Member 'protected System.Boolean System.Windows.Automation.Peers.AutomationPeer.IsDialogCore()' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.FocusManager.GetFocusedElement(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.Channel System.Windows.Media.Brush.GetChannelCore(System.Int32)' does not exist in the implementation but it does exist in the contract. @@ -21,4 +18,4 @@ MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapDeco MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapEncoder.SealObject()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.TextFormatting.TextParagraphCache System.Windows.Media.TextFormatting.TextFormatter.CreateParagraphCache(System.Windows.Media.TextFormatting.TextSource, System.Int32, System.Double, System.Windows.Media.TextFormatting.TextParagraphProperties, System.Windows.Media.TextFormatting.TextLineBreak, System.Windows.Media.TextFormatting.TextRunCache)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Resources.AssemblyAssociatedContentFileAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. -Total Issues: 22 +Total Issues: 19 diff --git a/src/Microsoft.DotNet.Wpf/cycle-breakers/PresentationFramework/PresentationFramework.cs b/src/Microsoft.DotNet.Wpf/cycle-breakers/PresentationFramework/PresentationFramework.cs index d208a672a21..b2443a35cea 100644 --- a/src/Microsoft.DotNet.Wpf/cycle-breakers/PresentationFramework/PresentationFramework.cs +++ b/src/Microsoft.DotNet.Wpf/cycle-breakers/PresentationFramework/PresentationFramework.cs @@ -2427,6 +2427,7 @@ public DataGridCellItemAutomationPeer(object item, System.Windows.Controls.DataG protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } + protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } @@ -2562,6 +2563,7 @@ internal DateTimeAutomationPeer() { } protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } + protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } @@ -2812,6 +2814,7 @@ protected ItemAutomationPeer(object item, System.Windows.Automation.Peers.ItemsC protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } + protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index c35528a28da..4f8f411e35c 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -652,6 +652,9 @@ virtual protected string GetLocalizedControlTypeCore() /// abstract protected bool IsControlElementCore(); + /// + abstract protected bool IsDialogCore(); + /// abstract protected AutomationPeer GetLabeledByCore(); @@ -710,14 +713,6 @@ virtual protected AutomationHeadingLevel GetHeadingLevelCore() return AutomationHeadingLevel.None; } - /// - /// Override this method to provide UIAutomation with a bool value describing if this element is a dialog. - /// - virtual protected bool IsDialogCore() - { - return false; - } - // // INTERNAL STUFF - NOT OVERRIDABLE // diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs index 59d15b12afe..01dd068ad80 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs @@ -213,6 +213,14 @@ override protected bool IsEnabledCore() return _owner.IsEnabled; } + /// + /// + /// + override protected bool IsDialogCore() + { + return false; + } + /// /// /// diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs index 7e07bdad991..dee7c6c6b5d 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs @@ -317,6 +317,12 @@ override protected bool IsEnabledCore() return _owner.IsEnabled; } + /// + override protected bool IsDialogCore() + { + return false; + } + /// override protected bool IsPasswordCore() { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs index 211a7450438..49a1a24df71 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs @@ -365,6 +365,12 @@ override protected bool IsEnabledCore() return _owner.IsEnabled; } + /// + override protected bool IsDialogCore() + { + return false; + } + /// override protected bool IsPasswordCore() { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index 5758542d2df..9f930637104 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -2149,6 +2149,7 @@ public static partial class AutomationProperties public static readonly System.Windows.DependencyProperty HeadingLevelProperty; public static readonly System.Windows.DependencyProperty HelpTextProperty; public static readonly System.Windows.DependencyProperty IsColumnHeaderProperty; + public static readonly System.Windows.DependencyProperty IsDialogProperty; public static readonly System.Windows.DependencyProperty IsOffscreenBehaviorProperty; public static readonly System.Windows.DependencyProperty IsRequiredForFormProperty; public static readonly System.Windows.DependencyProperty IsRowHeaderProperty; @@ -2303,8 +2304,6 @@ protected AutomationPeer() { } protected abstract string GetHelpTextCore(); protected virtual System.Windows.Automation.Peers.HostedWindowWrapper GetHostRawElementProviderCore() { throw null; } - public bool GetIsDialog() { throw null; } - protected virtual bool GetIsDialogCore() { throw null; } public string GetItemStatus() { throw null; } protected abstract string GetItemStatusCore(); public string GetItemType() { throw null; } @@ -2334,6 +2333,8 @@ public void InvalidatePeer() { } protected abstract bool IsContentElementCore(); public bool IsControlElement() { throw null; } protected abstract bool IsControlElementCore(); + public bool IsDialog() { throw null; } + protected abstract bool IsDialogCore(); public bool IsEnabled() { throw null; } protected abstract bool IsEnabledCore(); public bool IsKeyboardFocusable() { throw null; } @@ -2381,6 +2382,7 @@ public ContentElementAutomationPeer(System.Windows.ContentElement owner) { } protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } + protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } @@ -2451,6 +2453,7 @@ public UIElement3DAutomationPeer(System.Windows.UIElement3D owner) { } protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } + protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } @@ -2485,6 +2488,7 @@ public UIElementAutomationPeer(System.Windows.UIElement owner) { } protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } + protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridCellItemAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridCellItemAutomationPeer.cs index 9466211a551..f23dc7fac8e 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridCellItemAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridCellItemAutomationPeer.cs @@ -405,6 +405,18 @@ protected override bool IsControlElementCore() return true; } + /// + protected override bool IsDialogCore() + { + AutomationPeer wrapperPeer = OwningCellPeer; + if (wrapperPeer != null) + return wrapperPeer.IsDialog(); + else + ThrowElementNotAvailableException(); + + return false; + } + /// protected override bool IsEnabledCore() { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs index 6ed7fd6a0fc..8ebee66da19 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs @@ -510,6 +510,21 @@ protected override bool IsControlElementCore() return true; } + protected override bool IsDialogCore() + { + AutomationPeer wrapperPeer = WrapperPeer; + if (wrapperPeer != null) + { + return wrapperPeer.IsDialog(); + } + else + { + ThrowElementNotAvailableException(); + } + + return false; + } + protected override bool IsEnabledCore() { AutomationPeer wrapperPeer = WrapperPeer; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemAutomationPeer.cs index d8f951ae212..8fb301c2ab7 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemAutomationPeer.cs @@ -436,6 +436,18 @@ protected override bool IsEnabledCore() return false; } + /// + protected override bool IsDialogCore() + { + AutomationPeer wrapperPeer = GetWrapperPeer(); + if (wrapperPeer != null) + return wrapperPeer.IsDialog(); + else + ThrowElementNotAvailableException(); + + return false; + } + /// protected override bool IsPasswordCore() { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/TextBlockAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/TextBlockAutomationPeer.cs index 7dfb16b3580..c458b438b98 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/TextBlockAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/TextBlockAutomationPeer.cs @@ -76,6 +76,5 @@ override protected bool IsControlElementCore() return false; } - } } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs index 8cae7a123f7..76d7f371234 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ToolTipAutomationPeer.cs @@ -29,10 +29,6 @@ protected override AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.ToolTip; } - - protected override bool IsDialogCore(){ - return true; - } } } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs index 534e2813c0d..4e077c7e38b 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs @@ -2417,6 +2417,7 @@ public DataGridCellItemAutomationPeer(object item, System.Windows.Controls.DataG protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } + protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } @@ -2554,6 +2555,7 @@ internal DateTimeAutomationPeer() { } protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } + protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } @@ -2808,6 +2810,7 @@ protected ItemAutomationPeer(object item, System.Windows.Automation.Peers.ItemsC protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } + protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } From ac060ac4375dff6472e3fc53250413eae8af3003 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Guimar=C3=A3es?= Date: Tue, 6 Jul 2021 13:08:07 -0300 Subject: [PATCH 10/42] Update src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs Co-authored-by: ThomasGoulet73 <51839772+ThomasGoulet73@users.noreply.github.com> --- .../System/Windows/Automation/AutomationProperties.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs index 00c1569e809..cda7d3f0e8a 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationProperties.cs @@ -651,6 +651,7 @@ public static void SetIsDialog(DependencyObject element, bool value) /// /// Helper for reading IsDialog property from a DependencyObject. + /// public static bool GetIsDialog(DependencyObject element) { if (element == null) @@ -676,4 +677,3 @@ private static bool IsNotNull(object value) #endregion } } - From e49e2b019339d0b3bb7cfcad327ec384cca3f452 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Guimar=C3=A3es?= Date: Tue, 6 Jul 2021 13:08:34 -0300 Subject: [PATCH 11/42] Update src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs Co-authored-by: ThomasGoulet73 <51839772+ThomasGoulet73@users.noreply.github.com> --- .../System/Windows/Automation/AutomationElement.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs index 13487f6c29a..29bfbc02cfb 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationElement.cs @@ -199,7 +199,7 @@ internal static AutomationElement Wrap(SafeNodeHandle hnode) public static readonly AutomationProperty PositionInSetProperty = AutomationElementIdentifiers.PositionInSetProperty; /// - /// Property ID: HeadingLevel - Describes if the heading level of an element. + /// Property ID: HeadingLevel - Describes the heading level of an element. /// public static readonly AutomationProperty HeadingLevelProperty = AutomationElementIdentifiers.HeadingLevelProperty; From 73935129bc9acdff232988c626a5d47e1e527692 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Guimar=C3=A3es?= Date: Tue, 6 Jul 2021 13:08:44 -0300 Subject: [PATCH 12/42] Update src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs Co-authored-by: ThomasGoulet73 <51839772+ThomasGoulet73@users.noreply.github.com> --- .../System/Windows/Automation/AutomationElementIdentifiers.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs index 8ca890ed4a7..2c5f2ac4db7 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs @@ -116,7 +116,7 @@ public static class AutomationElementIdentifiers /// Property ID: FrameworkId - Identifies the underlying UI framework's name for the element being accessed public static readonly AutomationProperty FrameworkIdProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.FrameworkId, "AutomationElementIdentifiers.FrameworkIdProperty"); - /// Property ID: HeadingLevel - + /// Property ID: HeadingLevel - Describes the heading level of an element. public static readonly AutomationProperty HeadingLevelProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.HeadingLevel, "AutomationElementIdentifiers.HeadingLevelProperty"); /// Property ID: IsDialog - From 81a1df3904b89f19fb54d3d9fb8b5ce5790afc31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Guimar=C3=A3es?= Date: Tue, 6 Jul 2021 13:08:52 -0300 Subject: [PATCH 13/42] Update src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs Co-authored-by: ThomasGoulet73 <51839772+ThomasGoulet73@users.noreply.github.com> --- .../System/Windows/Automation/Peers/AutomationPeer.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 4f8f411e35c..e82ae0248b4 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -1307,7 +1307,8 @@ public AutomationHeadingLevel GetHeadingLevel() /// /// The value for the IsDialog property. /// - public bool IsDialog(){ + public bool IsDialog() + { bool result = false; if(_publicCallInProgress) throw new InvalidOperationException(SR.Get(SRID.Automation_RecursivePublicCall)); From 1ee85b454fdab4aeed00c01edc4069bdbbee9184 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Guimar=C3=A3es?= Date: Tue, 6 Jul 2021 13:09:08 -0300 Subject: [PATCH 14/42] Update src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs Co-authored-by: ThomasGoulet73 <51839772+ThomasGoulet73@users.noreply.github.com> --- .../System/Windows/Automation/AutomationElementIdentifiers.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs index 2c5f2ac4db7..e31b5ff9839 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationElementIdentifiers.cs @@ -119,7 +119,7 @@ public static class AutomationElementIdentifiers /// Property ID: HeadingLevel - Describes the heading level of an element. public static readonly AutomationProperty HeadingLevelProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.HeadingLevel, "AutomationElementIdentifiers.HeadingLevelProperty"); - /// Property ID: IsDialog - + /// Property ID: IsDialog - Identifies if the automation element is a dialog. public static readonly AutomationProperty IsDialogProperty = AutomationProperty.Register(AutomationIdentifierConstants.Properties.IsDialog, "AutomationElementIdentifiers.IsDialogProperty"); /// Property ID: IsRequiredForForm - Identifies weather an edit field is required to be filled out on a form From cbbc720563090036894674841e5ffc71ae62413e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Guimar=C3=A3es?= Date: Tue, 6 Jul 2021 13:09:40 -0300 Subject: [PATCH 15/42] Update src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs Co-authored-by: ThomasGoulet73 <51839772+ThomasGoulet73@users.noreply.github.com> --- .../src/Shared/System/Windows/InterOp/OSVersionHelper.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs index 489daff9908..b8c328dac0f 100644 --- a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs +++ b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs @@ -270,7 +270,7 @@ internal static OperatingSystemVersion GetOsVersion() { return OperatingSystemVersion.Windows10RS5; } - if (IsOsWindows10RS4OrGreater) + else if (IsOsWindows10RS4OrGreater) { return OperatingSystemVersion.Windows10RS4; } From 39219233343646ae10afc396a2a394a28dc2d0a6 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Tue, 6 Jul 2021 14:42:33 -0300 Subject: [PATCH 16/42] adding headinglevel summary --- .../System/Windows/Automation/Peers/AutomationPeer.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index e82ae0248b4..f6d0bb3d4e3 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -1273,10 +1273,13 @@ public int GetSizeOfSet() } /// + /// Attempt to get the value for the HeadingLevel property. /// /// + /// This public call cannot be attempted if another public call is in progress. /// /// + /// The value for the HeadingLevel property. /// public AutomationHeadingLevel GetHeadingLevel() { From ba44bdd0b52ae2b83ece0130aca9dd65c0555656 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Tue, 6 Jul 2021 16:22:32 -0300 Subject: [PATCH 17/42] removing empty lines and adding description --- .../System/Windows/Automation/AutomationHeadingLevel.cs | 3 +-- .../System/Windows/Automation/Peers/AutomationPeer.cs | 1 + .../Shared/System/Windows/InterOp/OperatingSystemVersion.cs | 4 +--- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs index 053108f42a1..5d42d5d1823 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs @@ -66,5 +66,4 @@ public enum AutomationHeadingLevel Level9 = 9, } -} - +} \ No newline at end of file diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index f6d0bb3d4e3..663e15f1acf 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -707,6 +707,7 @@ virtual protected int GetPositionInSetCore() } /// + /// Override this method to provide UIAutomation with the heading level of this element. /// virtual protected AutomationHeadingLevel GetHeadingLevelCore() { diff --git a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OperatingSystemVersion.cs b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OperatingSystemVersion.cs index b4543056b57..6fa9aa2c507 100644 --- a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OperatingSystemVersion.cs +++ b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OperatingSystemVersion.cs @@ -49,6 +49,4 @@ internal enum OperatingSystemVersion Windows10RS4, Windows10RS5, } -} - - +} \ No newline at end of file From 118a26a2a349991428f7fce540f7b4343fe4a0b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Guimar=C3=A3es?= Date: Tue, 6 Jul 2021 18:37:06 -0300 Subject: [PATCH 18/42] Update src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs Co-authored-by: ThomasGoulet73 <51839772+ThomasGoulet73@users.noreply.github.com> --- .../System/Windows/Automation/Peers/AutomationPeer.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 663e15f1acf..21c2fa237d9 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -1822,7 +1822,7 @@ private void RaisePropertyChangedInternal(IRawElementProviderSimple provider, #endif } - // InvalidateLimit � lower bound for raising ChildrenInvalidated StructureChange event + // InvalidateLimit is the lower bound for raising ChildrenInvalidated StructureChange event internal void UpdateChildrenInternal(int invalidateLimit) { List oldChildren = _children; From f092113f353cf3cdcf8c48fe7185c79ad57b83a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Guimar=C3=A3es?= Date: Tue, 6 Jul 2021 18:37:42 -0300 Subject: [PATCH 19/42] Update src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs Co-authored-by: Sam Bent --- .../System/Windows/Automation/Peers/AutomationPeer.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 21c2fa237d9..8cd466fe26e 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -2055,7 +2055,7 @@ internal void UpdateSubtree() /// /// propagate the new value for AncestorsInvalid through the parent chain, - /// use EventSource (wrapper) peers whenever available as it�s the one connected to the tree. + /// use EventSource (wrapper) peers whenever available as it's the one connected to the tree. /// internal void InvalidateAncestorsRecursive() { From d223aa845b1259a49d5940293ddb6b586a5c2e8a Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Tue, 6 Jul 2021 19:44:58 -0300 Subject: [PATCH 20/42] suggested changes --- .../System/Windows/Automation/Peers/AutomationPeer.cs | 2 +- .../src/Shared/System/Windows/InterOp/OSVersionHelper.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 8cd466fe26e..8dbba1e1ee3 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -2438,9 +2438,9 @@ internal PatternInfo(int id, WrapObject wrapObject, PatternInterface patternInte private static object GetLiveSetting(AutomationPeer peer) { return peer.GetLiveSetting(); } private static object GetControllerFor(AutomationPeer peer) { return peer.GetControllerForProviderArray(); } private static object GetSizeOfSet(AutomationPeer peer) { return peer.GetSizeOfSet(); } + private static object GetPositionInSet(AutomationPeer peer) { return peer.GetPositionInSet(); } private static object GetHeadingLevel(AutomationPeer peer) { return peer.GetHeadingLevel(); } private static object IsDialog(AutomationPeer peer) { return peer.IsDialog(); } - private static object GetPositionInSet(AutomationPeer peer) { return peer.GetPositionInSet(); } private static Hashtable s_patternInfo; private static Hashtable s_propertyInfo; diff --git a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs index b8c328dac0f..4a5f5ab664b 100644 --- a/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs +++ b/src/Microsoft.DotNet.Wpf/src/Shared/System/Windows/InterOp/OSVersionHelper.cs @@ -336,4 +336,4 @@ internal static OperatingSystemVersion GetOsVersion() #endregion } -} +} \ No newline at end of file From df19535d954762baaebaedcecd9408e427646359 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Tue, 6 Jul 2021 20:10:02 -0300 Subject: [PATCH 21/42] removing unecessary comment and adding rs5 for isDialog --- .../Windows/Automation/Peers/AutomationPeer.cs | 2 -- .../Automation/AutomationIdentifierConstants.cs | 14 +++++++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 8dbba1e1ee3..6cb4625be1b 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -2378,8 +2378,6 @@ private static void Initialize() { s_propertyInfo[AutomationElementIdentifiers.PositionInSetProperty.Id] = new GetProperty(GetPositionInSet); } - - // HeadingLevel is an RS4+ UIAutomation property. This will be NULL on other operating system versions. if (!AccessibilitySwitches.UseNetFx472CompatibleAccessibilityFeatures && AutomationElementIdentifiers.HeadingLevelProperty != null) { s_propertyInfo[AutomationElementIdentifiers.HeadingLevelProperty.Id] = new GetProperty(GetHeadingLevel); diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs index a168722861e..5fd49e1b2f3 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs @@ -31,7 +31,15 @@ internal static class AutomationIdentifierConstants static AutomationIdentifierConstants() { - if (OSVersionHelper.IsOsWindows10RS4OrGreater) + if (OSVersionHelper.IsOsWindows10RS5OrGreater) + { + LastSupportedProperty = Properties.IsDialog; + LastSupportedEvent = Events.Changes; + LastSupportedPattern = Patterns.CustomNavigation; + LastSupportedTextAttribute = TextAttributes.SayAsInterpretAs; + LastSupportedControlType = ControlTypes.AppBar; + } + else if (OSVersionHelper.IsOsWindows10RS4OrGreater) { LastSupportedProperty = Properties.HeadingLevel; LastSupportedEvent = Events.Changes; @@ -279,8 +287,8 @@ internal enum Properties CenterPoint, Rotatation, Size, - IsDialog, - HeadingLevel + HeadingLevel, + IsDialog }; internal enum Events From df85bbd86fd86734bd8e56fa9faf49f90f69d736 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 7 Jul 2021 15:31:01 -0300 Subject: [PATCH 22/42] changing enum constant --- .../MS/Internal/Automation/AutomationIdentifierConstants.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs index 5fd49e1b2f3..da8f26740d0 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs @@ -287,7 +287,7 @@ internal enum Properties CenterPoint, Rotatation, Size, - HeadingLevel, + HeadingLevel = 30173, IsDialog }; From d01beaab60790d76c4b759b983b419988f1be034 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 7 Jul 2021 18:15:51 -0300 Subject: [PATCH 23/42] Adding window isdialogcore implementation --- .../Windows/Automation/Peers/WindowAutomationPeer.cs | 6 ++++++ .../PresentationFramework/System/Windows/Window.cs | 11 +++++++++++ .../Automation/AutomationIdentifierConstants.cs | 7 ++++++- 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs index 25c5d7dcd3c..ce5b1938663 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs @@ -88,6 +88,12 @@ override protected Rect GetBoundingRectangleCore() return bounds; } + + protected override bool IsDialogCore() + { + Window window = (Window)Owner; + return window.IsShowingAsDialog; + } } } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs index d15232b2f15..5b558dd1f69 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs @@ -1279,6 +1279,17 @@ public WindowCollection OwnedWindows } } + /// + /// Gets Showing as dialog + /// + internal bool IsShowingAsDialog + { + get + { + return _showingAsDialog; + } + } + /// /// Sets/gets DialogResult /// diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs index da8f26740d0..47f7bd402dd 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/MS/Internal/Automation/AutomationIdentifierConstants.cs @@ -287,7 +287,12 @@ internal enum Properties CenterPoint, Rotatation, Size, - HeadingLevel = 30173, + IsSelectionPattern2Available, + Selection2FirstSelectedItem, + Selection2LastSelectedItem, + Selection2CurrentSelectedItem, + Selection2ItemCount, + HeadingLevel, IsDialog }; From a3ee3c14e0c1151cd41d4b51c0c64d2f3e19abd4 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 7 Jul 2021 20:51:02 -0300 Subject: [PATCH 24/42] overriding headinglevelcore in peers --- .../Peers/ContentElementAutomationPeer.cs | 9 +++++++++ .../Peers/UIElement3DAutomationPeer.cs | 9 +++++++++ .../Peers/UIElementAutomationPeer.cs | 9 +++++++++ .../PresentationCore/ref/PresentationCore.cs | 3 +++ .../Peers/DataGridCellItemAutomationPeer.cs | 18 ++++++++++++++++++ .../Automation/Peers/DateTimeAutomationPeer.cs | 18 ++++++++++++++++++ .../Automation/Peers/ItemAutomationPeer.cs | 18 ++++++++++++++++++ .../ref/PresentationFramework.cs | 3 +++ 8 files changed, 87 insertions(+) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs index 01dd068ad80..a51834d8a8e 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs @@ -295,6 +295,15 @@ override protected int GetSizeOfSetCore() return AutomationProperties.GetSizeOfSet(_owner); } + /// + /// Provides a value for UIAutomation's HeadingLevel property + /// Reads and returns the value + /// + override protected AutomationHeadingLevel GetHeadingLevelCore() + { + return AutomationProperties.GetHeadingLevel(_owner); + } + /// /// /// diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs index dee7c6c6b5d..0bafb789776 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs @@ -392,6 +392,15 @@ override protected int GetSizeOfSetCore() return AutomationProperties.GetSizeOfSet(_owner); } + /// + /// Provides a value for UIAutomation's HeadingLevel property + /// Reads and returns the value + /// + override protected AutomationHeadingLevel GetHeadingLevelCore() + { + return AutomationProperties.GetHeadingLevel(_owner); + } + // // M E T H O D S // diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs index 49a1a24df71..47ecd169826 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs @@ -493,6 +493,15 @@ override protected int GetSizeOfSetCore() return sizeOfSet; } + /// + /// Provides a value for UIAutomation's HeadingLevel property + /// Reads and returns the value + /// + override protected AutomationHeadingLevel GetHeadingLevelCore() + { + return AutomationProperties.GetHeadingLevel(_owner); + } + // // M E T H O D S // diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index 9f930637104..2ecf7fb3c97 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -2369,6 +2369,7 @@ public ContentElementAutomationPeer(System.Windows.ContentElement owner) { } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } + protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } @@ -2440,6 +2441,7 @@ public UIElement3DAutomationPeer(System.Windows.UIElement3D owner) { } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } + protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } @@ -2475,6 +2477,7 @@ public UIElementAutomationPeer(System.Windows.UIElement owner) { } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } + protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridCellItemAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridCellItemAutomationPeer.cs index f23dc7fac8e..4a6cb628c7e 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridCellItemAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridCellItemAutomationPeer.cs @@ -363,6 +363,24 @@ protected override int GetSizeOfSetCore() return size; } + /// + override protected AutomationHeadingLevel GetHeadingLevelCore() + { + AutomationPeer wrapperPeer = OwningCellPeer; + AutomationHeadingLevel headingLevel = AutomationHeadingLevel.None; + + if(wrapperPeer != null) + { + headingLevel = wrapperPeer.GetHeadingLevel(); + } + else + { + ThrowElementNotAvailableException(); + } + + return headingLevel; + } + override internal Rect GetVisibleBoundingRectCore() { AutomationPeer wrapperPeer = OwningCellPeer; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs index 8ebee66da19..6d6663d3865 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs @@ -459,6 +459,24 @@ protected override int GetSizeOfSetCore() return AutomationProperties.AutomationSizeOfSetDefault; } + /// + override protected AutomationHeadingLevel GetHeadingLevelCore() + { + AutomationPeer wrapperPeer = WrapperPeer; + AutomationHeadingLevel headingLevel = AutomationHeadingLevel.None; + + if(wrapperPeer != null) + { + headingLevel = wrapperPeer.GetHeadingLevel(); + } + else + { + ThrowElementNotAvailableException(); + } + + return headingLevel; + } + internal override Rect GetVisibleBoundingRectCore() { AutomationPeer wrapperPeer = WrapperPeer; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemAutomationPeer.cs index 8fb301c2ab7..184f9149ba2 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemAutomationPeer.cs @@ -232,6 +232,24 @@ protected override AutomationOrientation GetOrientationCore() return AutomationOrientation.None; } + /// + override protected AutomationHeadingLevel GetHeadingLevelCore() + { + AutomationPeer wrapperPeer = GetWrapperPeer(); + AutomationHeadingLevel headingLevel = AutomationHeadingLevel.None; + + if(wrapperPeer != null) + { + headingLevel = wrapperPeer.GetHeadingLevel(); + } + else + { + ThrowElementNotAvailableException(); + } + + return headingLevel; + } + /// /// Gets the position of an item within a set. /// diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs index 4e077c7e38b..483f224ebb4 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs @@ -2403,6 +2403,7 @@ public DataGridCellItemAutomationPeer(object item, System.Windows.Controls.DataG protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } + protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } @@ -2541,6 +2542,7 @@ internal DateTimeAutomationPeer() { } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } + protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } @@ -2797,6 +2799,7 @@ protected ItemAutomationPeer(object item, System.Windows.Automation.Peers.ItemsC protected override System.Windows.Rect GetBoundingRectangleCore() { throw null; } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } + protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } From 3944e814b3d6bb8d2e52c3a15bdb1fa16308b843 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 7 Jul 2021 20:57:03 -0300 Subject: [PATCH 25/42] editing override of isdialog --- .../Windows/Automation/Peers/ContentElementAutomationPeer.cs | 2 +- .../Windows/Automation/Peers/UIElement3DAutomationPeer.cs | 2 +- .../System/Windows/Automation/Peers/UIElementAutomationPeer.cs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs index a51834d8a8e..95441e38450 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/ContentElementAutomationPeer.cs @@ -218,7 +218,7 @@ override protected bool IsEnabledCore() /// override protected bool IsDialogCore() { - return false; + return AutomationProperties.GetIsDialog(_owner); } /// diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs index 0bafb789776..e8727abeb04 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElement3DAutomationPeer.cs @@ -320,7 +320,7 @@ override protected bool IsEnabledCore() /// override protected bool IsDialogCore() { - return false; + return AutomationProperties.GetIsDialog(_owner); } /// diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs index 47ecd169826..baab86741a9 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/UIElementAutomationPeer.cs @@ -368,7 +368,7 @@ override protected bool IsEnabledCore() /// override protected bool IsDialogCore() { - return false; + return AutomationProperties.GetIsDialog(_owner); } /// From a2ad74697758ca2a528b4f66bf49962c61563413 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Thu, 8 Jul 2021 01:06:35 -0300 Subject: [PATCH 26/42] changing values of enum for heading level so it correctly show in accessibility insights --- .../Automation/AutomationHeadingLevel.cs | 20 +++++++++---------- .../PresentationCore/ref/PresentationCore.cs | 20 +++++++++---------- .../Automation/AutomationHeadingLevel.cs | 20 +++++++++---------- 3 files changed, 30 insertions(+), 30 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs index 5d42d5d1823..bd40b73a8ee 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs @@ -18,52 +18,52 @@ public enum AutomationHeadingLevel /// /// The element does not have a heading level /// - None = 0, + None = 80050, /// /// The element has a heading level of 1 /// - Level1 = 1, + Level1, /// /// The element has a heading level of 2 /// - Level2 = 2, + Level2, /// /// The element has a heading level of 3 /// - Level3 = 3, + Level3, /// /// The element has a heading level of 4 /// - Level4 = 4, + Level4, /// /// The element has a heading level of 5 /// - Level5 = 5, + Level5, /// /// The element has a heading level of 6 /// - Level6 = 6, + Level6, /// /// The element has a heading level of 7 /// - Level7 = 7, + Level7, /// /// The element has a heading level of 8 /// - Level8 = 8, + Level8, /// /// The element has a heading level of 9 /// - Level9 = 9, + Level9, } } \ No newline at end of file diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index 2ecf7fb3c97..db5b3c79baf 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -2129,16 +2129,16 @@ public enum AutomationLiveSetting public enum AutomationHeadingLevel { - None = 0, - Level1 = 1, - Level2 = 2, - Level3 = 3, - Level4 = 4, - Level5 = 5, - Level6 = 6, - Level7 = 7, - Level8 = 8, - Level9 = 9, + None = 80050, + Level1, + Level2, + Level3, + Level4, + Level5, + Level6, + Level7, + Level8, + Level9, } public static partial class AutomationProperties diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs index 5d42d5d1823..bd40b73a8ee 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs @@ -18,52 +18,52 @@ public enum AutomationHeadingLevel /// /// The element does not have a heading level /// - None = 0, + None = 80050, /// /// The element has a heading level of 1 /// - Level1 = 1, + Level1, /// /// The element has a heading level of 2 /// - Level2 = 2, + Level2, /// /// The element has a heading level of 3 /// - Level3 = 3, + Level3, /// /// The element has a heading level of 4 /// - Level4 = 4, + Level4, /// /// The element has a heading level of 5 /// - Level5 = 5, + Level5, /// /// The element has a heading level of 6 /// - Level6 = 6, + Level6, /// /// The element has a heading level of 7 /// - Level7 = 7, + Level7, /// /// The element has a heading level of 8 /// - Level8 = 8, + Level8, /// /// The element has a heading level of 9 /// - Level9 = 9, + Level9, } } \ No newline at end of file From fed5d293e173619dca2da9109b67101850dc8acb Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Thu, 8 Jul 2021 22:54:25 -0300 Subject: [PATCH 27/42] changing IsDialogCore() to virtual --- .../Baselines/PresentationCore-ref-Net48.baseline.txt | 3 +-- .../PresentationFramework/PresentationFramework.cs | 3 --- .../System/Windows/Automation/Peers/AutomationPeer.cs | 4 +++- .../src/PresentationCore/ref/PresentationCore.cs | 2 +- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref-Net48.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref-Net48.baseline.txt index 9138518a45e..cf58cee29da 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref-Net48.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref-Net48.baseline.txt @@ -1,6 +1,5 @@ Compat issues with assembly PresentationCore: CannotRemoveBaseTypeOrInterface : Type 'System.Windows.LocalizabilityAttribute' does not implement interface 'System.Runtime.InteropServices._Attribute' in the implementation but it does in the contract. -CannotAddAbstractMembers : Member 'protected System.Boolean System.Windows.Automation.Peers.AutomationPeer.IsDialogCore()' is abstract in the implementation but is missing in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.Channel System.Windows.Media.Brush.GetChannelCore(System.Int32)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Int32 System.Windows.Media.Brush.GetChannelCountCore()' does not exist in the implementation but it does exist in the contract. @@ -20,4 +19,4 @@ MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapDeco MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapEncoder.SealObject()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.TextFormatting.TextParagraphCache System.Windows.Media.TextFormatting.TextFormatter.CreateParagraphCache(System.Windows.Media.TextFormatting.TextSource, System.Int32, System.Double, System.Windows.Media.TextFormatting.TextParagraphProperties, System.Windows.Media.TextFormatting.TextLineBreak, System.Windows.Media.TextFormatting.TextRunCache)' does not exist in the implementation but it does exist in the contract. CannotRemoveBaseTypeOrInterface : Type 'System.Windows.Resources.AssemblyAssociatedContentFileAttribute' does not implement interface 'System.Runtime.InteropServices._Attribute' in the implementation but it does in the contract. -Total Issues: 21 +Total Issues: 20 diff --git a/src/Microsoft.DotNet.Wpf/cycle-breakers/PresentationFramework/PresentationFramework.cs b/src/Microsoft.DotNet.Wpf/cycle-breakers/PresentationFramework/PresentationFramework.cs index b2443a35cea..d208a672a21 100644 --- a/src/Microsoft.DotNet.Wpf/cycle-breakers/PresentationFramework/PresentationFramework.cs +++ b/src/Microsoft.DotNet.Wpf/cycle-breakers/PresentationFramework/PresentationFramework.cs @@ -2427,7 +2427,6 @@ public DataGridCellItemAutomationPeer(object item, System.Windows.Controls.DataG protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } - protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } @@ -2563,7 +2562,6 @@ internal DateTimeAutomationPeer() { } protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } - protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } @@ -2814,7 +2812,6 @@ protected ItemAutomationPeer(object item, System.Windows.Automation.Peers.ItemsC protected override bool HasKeyboardFocusCore() { throw null; } protected override bool IsContentElementCore() { throw null; } protected override bool IsControlElementCore() { throw null; } - protected override bool IsDialogCore() { throw null; } protected override bool IsEnabledCore() { throw null; } protected override bool IsKeyboardFocusableCore() { throw null; } protected override bool IsOffscreenCore() { throw null; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 6cb4625be1b..38c712d430c 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -653,7 +653,9 @@ virtual protected string GetLocalizedControlTypeCore() abstract protected bool IsControlElementCore(); /// - abstract protected bool IsDialogCore(); + virtual protected bool IsDialogCore(){ + return false; + } /// abstract protected AutomationPeer GetLabeledByCore(); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index db5b3c79baf..87d81b8aeaf 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -2334,7 +2334,7 @@ public void InvalidatePeer() { } public bool IsControlElement() { throw null; } protected abstract bool IsControlElementCore(); public bool IsDialog() { throw null; } - protected abstract bool IsDialogCore(); + protected virtual bool IsDialogCore() { throw null; } public bool IsEnabled() { throw null; } protected abstract bool IsEnabledCore(); public bool IsKeyboardFocusable() { throw null; } From 23cc6b6323959c8f1839690fc04146dfb48fba46 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Fri, 9 Jul 2021 10:35:54 -0300 Subject: [PATCH 28/42] adding prefix in automation properties --- .../src/PresentationFramework/ref/PresentationFramework.cs | 6 +++--- .../System/Windows/Automation/AutomationHeadingLevel.cs | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs index 483f224ebb4..9fe48d1c8d7 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/ref/PresentationFramework.cs @@ -2403,7 +2403,7 @@ public DataGridCellItemAutomationPeer(object item, System.Windows.Controls.DataG protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } - protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } + protected override System.Windows.Automation.AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } @@ -2542,7 +2542,7 @@ internal DateTimeAutomationPeer() { } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } - protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } + protected override System.Windows.Automation.AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } @@ -2799,7 +2799,7 @@ protected ItemAutomationPeer(object item, System.Windows.Automation.Peers.ItemsC protected override System.Windows.Rect GetBoundingRectangleCore() { throw null; } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } - protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } + protected override System.Windows.Automation.AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs index bd40b73a8ee..fce0f390b58 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs @@ -18,7 +18,7 @@ public enum AutomationHeadingLevel /// /// The element does not have a heading level /// - None = 80050, + None = 1, /// /// The element has a heading level of 1 From 0afb9560c9ae22edc2238a5a6f1cbb47595c9544 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Fri, 9 Jul 2021 11:01:56 -0300 Subject: [PATCH 29/42] changing location of automationheadinglevel.cs to fix api compat errors --- .../UIAutomationClient-ref.baseline.txt | 4 +- .../UIAutomationTypes-ref.baseline.txt | 4 +- .../PresentationCore/PresentationCore.csproj | 1 - .../Automation/AutomationHeadingLevel.cs | 69 ------------------- .../UIAutomationClient.csproj | 1 - .../Automation/AutomationHeadingLevel.cs | 0 .../UIAutomationTypes.csproj | 1 + 7 files changed, 5 insertions(+), 75 deletions(-) delete mode 100644 src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs rename src/Microsoft.DotNet.Wpf/src/UIAutomation/{UIAutomationClient => UIAutomationTypes}/System/Windows/Automation/AutomationHeadingLevel.cs (100%) diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt index dee0c3be876..fcc74cf8643 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt @@ -1,3 +1 @@ -Compat issues with assembly UIAutomationClient: -TypesMustExist : Type 'System.Windows.Automation.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. -Total Issues: 1 +Total Issues: 0 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt index fcc74cf8643..01658640096 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt @@ -1 +1,3 @@ -Total Issues: 0 +Compat issues with assembly UIAutomationTypes: +TypesMustExist : Type 'System.Windows.Automation.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. +Total Issues: 1 diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj b/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj index 327818b45dc..f26ab3689d2 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj @@ -392,7 +392,6 @@ - diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs deleted file mode 100644 index bd40b73a8ee..00000000000 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs +++ /dev/null @@ -1,69 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -// -// -// -// Description: Enumeration for possible values of AutomationProperties.HeadingLevel -// - -namespace System.Windows.Automation -{ - /// - /// Describes the heading level of a control - /// - public enum AutomationHeadingLevel - { - /// - /// The element does not have a heading level - /// - None = 80050, - - /// - /// The element has a heading level of 1 - /// - Level1, - - /// - /// The element has a heading level of 2 - /// - Level2, - - /// - /// The element has a heading level of 3 - /// - Level3, - - /// - /// The element has a heading level of 4 - /// - Level4, - - /// - /// The element has a heading level of 5 - /// - Level5, - - /// - /// The element has a heading level of 6 - /// - Level6, - - /// - /// The element has a heading level of 7 - /// - Level7, - - /// - /// The element has a heading level of 8 - /// - Level8, - - /// - /// The element has a heading level of 9 - /// - Level9, - } - -} \ No newline at end of file diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj index 7d75e4f8bb6..2ccf4270b24 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj @@ -61,7 +61,6 @@ - diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationHeadingLevel.cs similarity index 100% rename from src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs rename to src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationHeadingLevel.cs diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj index 56224cce98b..9710dcca2d6 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj @@ -35,6 +35,7 @@ + From 764d24679fb0b1653b42a294d5eb8dd5044caa1d Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Fri, 9 Jul 2021 14:28:27 -0300 Subject: [PATCH 30/42] updating presentationcore return types for heading level --- .../src/PresentationCore/ref/PresentationCore.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index 87d81b8aeaf..6401369209b 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -2129,7 +2129,7 @@ public enum AutomationLiveSetting public enum AutomationHeadingLevel { - None = 80050, + None = 0, Level1, Level2, Level3, @@ -2369,7 +2369,7 @@ public ContentElementAutomationPeer(System.Windows.ContentElement owner) { } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } - protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } + protected override System.Windows.Automation.AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } @@ -2441,7 +2441,7 @@ public UIElement3DAutomationPeer(System.Windows.UIElement3D owner) { } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } - protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } + protected override System.Windows.Automation.AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } @@ -2477,7 +2477,7 @@ public UIElementAutomationPeer(System.Windows.UIElement owner) { } protected override System.Collections.Generic.List GetChildrenCore() { throw null; } protected override string GetClassNameCore() { throw null; } protected override System.Windows.Point GetClickablePointCore() { throw null; } - protected override AutomationHeadingLevel GetHeadingLevelCore() { throw null; } + protected override System.Windows.Automation.AutomationHeadingLevel GetHeadingLevelCore() { throw null; } protected override string GetHelpTextCore() { throw null; } protected override string GetItemStatusCore() { throw null; } protected override string GetItemTypeCore() { throw null; } From ee46685a8a69b8ae249f5c66f9d1182d2cf35d22 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Fri, 9 Jul 2021 16:55:12 -0300 Subject: [PATCH 31/42] Revert "changing location of automationheadinglevel.cs to fix api compat errors" This reverts commit 0afb9560c9ae22edc2238a5a6f1cbb47595c9544, as it creates some problems when running wpf --- .../UIAutomationClient-ref.baseline.txt | 4 +- .../UIAutomationTypes-ref.baseline.txt | 4 +- .../PresentationCore/PresentationCore.csproj | 1 + .../Automation/AutomationHeadingLevel.cs | 69 +++++++++++++++++++ .../Automation/AutomationHeadingLevel.cs | 0 .../UIAutomationClient.csproj | 1 + .../UIAutomationTypes.csproj | 1 - 7 files changed, 75 insertions(+), 5 deletions(-) create mode 100644 src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs rename src/Microsoft.DotNet.Wpf/src/UIAutomation/{UIAutomationTypes => UIAutomationClient}/System/Windows/Automation/AutomationHeadingLevel.cs (100%) diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt index fcc74cf8643..dee0c3be876 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt @@ -1 +1,3 @@ -Total Issues: 0 +Compat issues with assembly UIAutomationClient: +TypesMustExist : Type 'System.Windows.Automation.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. +Total Issues: 1 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt index 01658640096..fcc74cf8643 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationTypes-ref.baseline.txt @@ -1,3 +1 @@ -Compat issues with assembly UIAutomationTypes: -TypesMustExist : Type 'System.Windows.Automation.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. -Total Issues: 1 +Total Issues: 0 diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj b/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj index f26ab3689d2..327818b45dc 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/PresentationCore.csproj @@ -392,6 +392,7 @@ + diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs new file mode 100644 index 00000000000..bd40b73a8ee --- /dev/null +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs @@ -0,0 +1,69 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +// +// +// +// Description: Enumeration for possible values of AutomationProperties.HeadingLevel +// + +namespace System.Windows.Automation +{ + /// + /// Describes the heading level of a control + /// + public enum AutomationHeadingLevel + { + /// + /// The element does not have a heading level + /// + None = 80050, + + /// + /// The element has a heading level of 1 + /// + Level1, + + /// + /// The element has a heading level of 2 + /// + Level2, + + /// + /// The element has a heading level of 3 + /// + Level3, + + /// + /// The element has a heading level of 4 + /// + Level4, + + /// + /// The element has a heading level of 5 + /// + Level5, + + /// + /// The element has a heading level of 6 + /// + Level6, + + /// + /// The element has a heading level of 7 + /// + Level7, + + /// + /// The element has a heading level of 8 + /// + Level8, + + /// + /// The element has a heading level of 9 + /// + Level9, + } + +} \ No newline at end of file diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs similarity index 100% rename from src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/AutomationHeadingLevel.cs rename to src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj index 2ccf4270b24..7d75e4f8bb6 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj @@ -61,6 +61,7 @@ + diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj index 9710dcca2d6..56224cce98b 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj @@ -35,7 +35,6 @@ - From c203d9e569308a591e3914c91d3dda38c0088993 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Fri, 9 Jul 2021 17:39:56 -0300 Subject: [PATCH 32/42] maintaining the values of the enum as this for further testing --- .../src/PresentationCore/ref/PresentationCore.cs | 2 +- .../System/Windows/Automation/AutomationHeadingLevel.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index 6401369209b..08060674c99 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -2129,7 +2129,7 @@ public enum AutomationLiveSetting public enum AutomationHeadingLevel { - None = 0, + None = 80050, Level1, Level2, Level3, diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs index fce0f390b58..bd40b73a8ee 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs @@ -18,7 +18,7 @@ public enum AutomationHeadingLevel /// /// The element does not have a heading level /// - None = 1, + None = 80050, /// /// The element has a heading level of 1 From 9ebec4401cb5c784d18e16a9f0535fa879a2fbee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Guimar=C3=A3es?= Date: Fri, 9 Jul 2021 19:08:10 -0300 Subject: [PATCH 33/42] Update src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs Co-authored-by: Sam Bent --- .../Windows/Automation/Peers/WindowAutomationPeer.cs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs index ce5b1938663..278f1deed6a 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs @@ -92,9 +92,15 @@ override protected Rect GetBoundingRectangleCore() protected override bool IsDialogCore() { Window window = (Window)Owner; - return window.IsShowingAsDialog; +if (MS.Internal.Helper.IsDefaultValue(AutomationProperties.IsDialogProperty, window) +{ + return window.IsShowingAsDialog; +} +else +{ + return AutomationProperties.GetIsDialog(window); +} } } } - From cdf37868457766d4614f532fe164f1a2e5f56a7b Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Fri, 9 Jul 2021 19:58:27 -0300 Subject: [PATCH 34/42] changing enums to start on 0 and fixing automaticalli added code --- .../Windows/Automation/AutomationHeadingLevel.cs | 2 +- .../src/PresentationCore/ref/PresentationCore.cs | 2 +- .../Automation/Peers/WindowAutomationPeer.cs | 16 ++++++++-------- .../Windows/Automation/AutomationHeadingLevel.cs | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs index bd40b73a8ee..c9632f6f3f5 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/AutomationHeadingLevel.cs @@ -18,7 +18,7 @@ public enum AutomationHeadingLevel /// /// The element does not have a heading level /// - None = 80050, + None = 0, /// /// The element has a heading level of 1 diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index 08060674c99..6401369209b 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -2129,7 +2129,7 @@ public enum AutomationLiveSetting public enum AutomationHeadingLevel { - None = 80050, + None = 0, Level1, Level2, Level3, diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs index 278f1deed6a..601e0031956 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/WindowAutomationPeer.cs @@ -92,14 +92,14 @@ override protected Rect GetBoundingRectangleCore() protected override bool IsDialogCore() { Window window = (Window)Owner; -if (MS.Internal.Helper.IsDefaultValue(AutomationProperties.IsDialogProperty, window) -{ - return window.IsShowingAsDialog; -} -else -{ - return AutomationProperties.GetIsDialog(window); -} + if (MS.Internal.Helper.IsDefaultValue(AutomationProperties.IsDialogProperty, window)) + { + return window.IsShowingAsDialog; + } + else + { + return AutomationProperties.GetIsDialog(window); + } } } } diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs index bd40b73a8ee..c9632f6f3f5 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs @@ -18,7 +18,7 @@ public enum AutomationHeadingLevel /// /// The element does not have a heading level /// - None = 80050, + None = 0, /// /// The element has a heading level of 1 From a4df4cdb312c2ce3c760d7b6a8c8c97912079b76 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Sat, 10 Jul 2021 00:17:55 -0300 Subject: [PATCH 35/42] first try to add enum mapping --- .../MS/Internal/Automation/Schema.cs | 32 +++++++++++++- .../System/Windows/Automation/HeadingLevel.cs | 43 +++++++++++++++++++ .../UIAutomationTypes.csproj | 1 + .../ref/UIAutomationTypes.cs | 13 ++++++ 4 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs index 737fcc6259b..277c9716ac7 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs @@ -209,6 +209,35 @@ internal static object ConvertToElementArray(object value) return els; } + private static object ConvertToHeadingLevel(object value){ + switch(value) + { + case AutomationHeadingLevel.None: + return HeadingLevel.None; + case AutomationHeadingLevel.Level1: + return HeadingLevel.Level1; + case AutomationHeadingLevel.Level2: + return HeadingLevel.Level2; + case AutomationHeadingLevel.Level3: + return HeadingLevel.Level3; + case AutomationHeadingLevel.Level4: + return HeadingLevel.Level4; + case AutomationHeadingLevel.Level5: + return HeadingLevel.Level5; + case AutomationHeadingLevel.Level6: + return HeadingLevel.Level6; + case AutomationHeadingLevel.Level7: + return HeadingLevel.Level7; + case AutomationHeadingLevel.Level8: + return HeadingLevel.Level8; + case AutomationHeadingLevel.Level9: + return HeadingLevel.Level9; + default: + return HeadingLevel.None; + } + return HeadingLevel.None; + } + // Delegate versions of the above... private static AutomationPropertyConverter convertToBool = new AutomationPropertyConverter(ConvertToBool); private static AutomationPropertyConverter convertToRowOrColumnMajor = new AutomationPropertyConverter(ConvertToRowOrColumnMajor); @@ -224,6 +253,7 @@ internal static object ConvertToElementArray(object value) private static AutomationPropertyConverter convertToElementArray = new AutomationPropertyConverter(ConvertToElementArray); private static AutomationPropertyConverter convertToControlType = new AutomationPropertyConverter(ConvertToControlType); private static AutomationPropertyConverter convertToCultureInfo = new AutomationPropertyConverter(ConvertToCultureInfo); + private static AutomationPropertyConverter convertToHeadingLevel = new AutomationPropertyConverter(ConvertToHeadingLevel); #endregion Private Methods @@ -274,7 +304,7 @@ internal static object ConvertToElementArray(object value) new AutomationPropertyInfo( null, AutomationElement.ItemStatusProperty, typeof(string), "" ), new AutomationPropertyInfo( null, AutomationElement.SizeOfSetProperty, typeof(int), -1 ), new AutomationPropertyInfo( null, AutomationElement.PositionInSetProperty, typeof(int), -1 ), - new AutomationPropertyInfo( null, AutomationElement.HeadingLevelProperty, typeof(AutomationHeadingLevel),AutomationHeadingLevel.None ), + new AutomationPropertyInfo( convertToHeadingLevel, AutomationElement.HeadingLevelProperty, typeof(HeadingLevel), HeadingLevel.None ), new AutomationPropertyInfo( convertToBool, AutomationElement.IsDialogProperty, typeof(bool), false ), // Pattern Available properties diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs new file mode 100644 index 00000000000..475c6a0e088 --- /dev/null +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs @@ -0,0 +1,43 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +// Description: HeadingLevel + + +using System; +using System.Runtime.InteropServices; + +namespace System.Windows.Automation +{ + /// + /// Used to represent heading level property enumerated types. + /// +#if (INTERNAL_COMPILE) + internal enum HeadingLevel +#else + public enum HeadingLevel +#endif + { + /// No heading level. + None = 80050, + /// Heading level of 1. + Level1, + /// Heading level of 2. + Level2, + /// Heading level of 3. + Level3, + /// Heading level of 4. + Level4, + /// Heading level of 5. + Level5, + /// Heading level of 6. + Level6, + /// Heading level of 7. + Level7, + /// Heading level of 8. + Level8, + /// Heading level of 9. + Level9, + } +} diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj index 56224cce98b..359f7ac1f3f 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj @@ -47,6 +47,7 @@ + diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs index 3cd6b384c58..babbc100b71 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs @@ -267,6 +267,19 @@ public enum OrientationType Horizontal = 1, Vertical = 2, } + public enum HeadingLevel + { + None = 80050, + Level1, + Level2, + Level3, + Level4, + Level5, + Level6, + Level7, + Level8, + Level9, + } public partial class ProxyAssemblyNotLoadedException : System.Exception { public ProxyAssemblyNotLoadedException() { } From 0b283ac7a1d35e4d2395c6e57a35b86c200306dd Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Mon, 12 Jul 2021 10:04:41 -0300 Subject: [PATCH 36/42] removing unreachable code --- .../UIAutomationClient/MS/Internal/Automation/Schema.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs index 277c9716ac7..c5160f5d68b 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs @@ -235,7 +235,6 @@ private static object ConvertToHeadingLevel(object value){ default: return HeadingLevel.None; } - return HeadingLevel.None; } // Delegate versions of the above... From 1ae4a201f5d28d8372279e9966aed8925c038b3a Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Mon, 12 Jul 2021 17:41:58 -0300 Subject: [PATCH 37/42] moving the headinglevel conversion to automarionpeer.cs --- .../Automation/Peers/AutomationPeer.cs | 32 +++++++++++++++++++ .../MS/Internal/Automation/Schema.cs | 31 +----------------- 2 files changed, 33 insertions(+), 30 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 38c712d430c..9dca78be4a1 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -1303,6 +1303,34 @@ public AutomationHeadingLevel GetHeadingLevel() return result; } + private static HeadingLevel ConvertHeadingLevelToId(AutomationHeadingLevel value){ + switch(value) + { + case AutomationHeadingLevel.None: + return HeadingLevel.None; + case AutomationHeadingLevel.Level1: + return HeadingLevel.Level1; + case AutomationHeadingLevel.Level2: + return HeadingLevel.Level2; + case AutomationHeadingLevel.Level3: + return HeadingLevel.Level3; + case AutomationHeadingLevel.Level4: + return HeadingLevel.Level4; + case AutomationHeadingLevel.Level5: + return HeadingLevel.Level5; + case AutomationHeadingLevel.Level6: + return HeadingLevel.Level6; + case AutomationHeadingLevel.Level7: + return HeadingLevel.Level7; + case AutomationHeadingLevel.Level8: + return HeadingLevel.Level8; + case AutomationHeadingLevel.Level9: + return HeadingLevel.Level9; + default: + return HeadingLevel.None; + } + } + /// /// Attempt to get the value for the IsDialog property. @@ -2129,6 +2157,10 @@ internal object GetPropertyValue(int propertyId) if (getProperty != null) { result = getProperty(this); + if(AutomationElementIdentifiers.HeadingLevelProperty != null && propertyId == AutomationElementIdentifiers.HeadingLevelProperty.Id) + { + result = ConvertHeadingLevelToId((AutomationHeadingLevel)result); + } } return result; diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs index c5160f5d68b..308575b3a28 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs @@ -209,34 +209,6 @@ internal static object ConvertToElementArray(object value) return els; } - private static object ConvertToHeadingLevel(object value){ - switch(value) - { - case AutomationHeadingLevel.None: - return HeadingLevel.None; - case AutomationHeadingLevel.Level1: - return HeadingLevel.Level1; - case AutomationHeadingLevel.Level2: - return HeadingLevel.Level2; - case AutomationHeadingLevel.Level3: - return HeadingLevel.Level3; - case AutomationHeadingLevel.Level4: - return HeadingLevel.Level4; - case AutomationHeadingLevel.Level5: - return HeadingLevel.Level5; - case AutomationHeadingLevel.Level6: - return HeadingLevel.Level6; - case AutomationHeadingLevel.Level7: - return HeadingLevel.Level7; - case AutomationHeadingLevel.Level8: - return HeadingLevel.Level8; - case AutomationHeadingLevel.Level9: - return HeadingLevel.Level9; - default: - return HeadingLevel.None; - } - } - // Delegate versions of the above... private static AutomationPropertyConverter convertToBool = new AutomationPropertyConverter(ConvertToBool); private static AutomationPropertyConverter convertToRowOrColumnMajor = new AutomationPropertyConverter(ConvertToRowOrColumnMajor); @@ -252,7 +224,6 @@ private static object ConvertToHeadingLevel(object value){ private static AutomationPropertyConverter convertToElementArray = new AutomationPropertyConverter(ConvertToElementArray); private static AutomationPropertyConverter convertToControlType = new AutomationPropertyConverter(ConvertToControlType); private static AutomationPropertyConverter convertToCultureInfo = new AutomationPropertyConverter(ConvertToCultureInfo); - private static AutomationPropertyConverter convertToHeadingLevel = new AutomationPropertyConverter(ConvertToHeadingLevel); #endregion Private Methods @@ -303,7 +274,7 @@ private static object ConvertToHeadingLevel(object value){ new AutomationPropertyInfo( null, AutomationElement.ItemStatusProperty, typeof(string), "" ), new AutomationPropertyInfo( null, AutomationElement.SizeOfSetProperty, typeof(int), -1 ), new AutomationPropertyInfo( null, AutomationElement.PositionInSetProperty, typeof(int), -1 ), - new AutomationPropertyInfo( convertToHeadingLevel, AutomationElement.HeadingLevelProperty, typeof(HeadingLevel), HeadingLevel.None ), + new AutomationPropertyInfo( null, AutomationElement.HeadingLevelProperty, typeof(HeadingLevel), HeadingLevel.None ), new AutomationPropertyInfo( convertToBool, AutomationElement.IsDialogProperty, typeof(bool), false ), // Pattern Available properties From d29ff29d3f3de057c787f302074c3b24bafddabc Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 14 Jul 2021 15:41:23 -0300 Subject: [PATCH 38/42] removing api compat error --- .../UIAutomationClient-ref.baseline.txt | 4 +- .../Automation/AutomationHeadingLevel.cs | 69 ------------------- .../UIAutomationClient.csproj | 1 - .../System/Windows/Automation/HeadingLevel.cs | 6 +- 4 files changed, 2 insertions(+), 78 deletions(-) delete mode 100644 src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt index dee0c3be876..fcc74cf8643 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/UIAutomationClient-ref.baseline.txt @@ -1,3 +1 @@ -Compat issues with assembly UIAutomationClient: -TypesMustExist : Type 'System.Windows.Automation.AutomationHeadingLevel' does not exist in the implementation but it does exist in the contract. -Total Issues: 1 +Total Issues: 0 diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs deleted file mode 100644 index c9632f6f3f5..00000000000 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/System/Windows/Automation/AutomationHeadingLevel.cs +++ /dev/null @@ -1,69 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -// -// -// -// Description: Enumeration for possible values of AutomationProperties.HeadingLevel -// - -namespace System.Windows.Automation -{ - /// - /// Describes the heading level of a control - /// - public enum AutomationHeadingLevel - { - /// - /// The element does not have a heading level - /// - None = 0, - - /// - /// The element has a heading level of 1 - /// - Level1, - - /// - /// The element has a heading level of 2 - /// - Level2, - - /// - /// The element has a heading level of 3 - /// - Level3, - - /// - /// The element has a heading level of 4 - /// - Level4, - - /// - /// The element has a heading level of 5 - /// - Level5, - - /// - /// The element has a heading level of 6 - /// - Level6, - - /// - /// The element has a heading level of 7 - /// - Level7, - - /// - /// The element has a heading level of 8 - /// - Level8, - - /// - /// The element has a heading level of 9 - /// - Level9, - } - -} \ No newline at end of file diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj index 7d75e4f8bb6..2ccf4270b24 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/UIAutomationClient.csproj @@ -61,7 +61,6 @@ - diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs index 475c6a0e088..3473c1f0eef 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs @@ -11,13 +11,9 @@ namespace System.Windows.Automation { /// - /// Used to represent heading level property enumerated types. + /// Used to represent heading level property enumerated ids. /// -#if (INTERNAL_COMPILE) - internal enum HeadingLevel -#else public enum HeadingLevel -#endif { /// No heading level. None = 80050, From 7ef51400ba0637d4ac4cbcf0112d238ed3379ed1 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 14 Jul 2021 16:12:22 -0300 Subject: [PATCH 39/42] moving headinglevel ids enum to only the places where it is necessary --- .../Automation/Peers/AutomationPeer.cs | 14 +++++++ .../MS/Internal/Automation/Schema.cs | 14 +++++++ .../System/Windows/Automation/HeadingLevel.cs | 39 ------------------- .../UIAutomationTypes.csproj | 1 - .../ref/UIAutomationTypes.cs | 13 ------- 5 files changed, 28 insertions(+), 53 deletions(-) delete mode 100644 src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 9dca78be4a1..2a8a044fdf6 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -1303,6 +1303,20 @@ public AutomationHeadingLevel GetHeadingLevel() return result; } + + private enum HeadingLevel + { + None = 80050, + Level1, + Level2, + Level3, + Level4, + Level5, + Level6, + Level7, + Level8, + Level9, + } private static HeadingLevel ConvertHeadingLevelToId(AutomationHeadingLevel value){ switch(value) { diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs index 308575b3a28..e8cacb27ce6 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/MS/Internal/Automation/Schema.cs @@ -209,6 +209,20 @@ internal static object ConvertToElementArray(object value) return els; } + private enum HeadingLevel + { + None = 80050, + Level1, + Level2, + Level3, + Level4, + Level5, + Level6, + Level7, + Level8, + Level9, + } + // Delegate versions of the above... private static AutomationPropertyConverter convertToBool = new AutomationPropertyConverter(ConvertToBool); private static AutomationPropertyConverter convertToRowOrColumnMajor = new AutomationPropertyConverter(ConvertToRowOrColumnMajor); diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs deleted file mode 100644 index 3473c1f0eef..00000000000 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/System/Windows/Automation/HeadingLevel.cs +++ /dev/null @@ -1,39 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -// Description: HeadingLevel - - -using System; -using System.Runtime.InteropServices; - -namespace System.Windows.Automation -{ - /// - /// Used to represent heading level property enumerated ids. - /// - public enum HeadingLevel - { - /// No heading level. - None = 80050, - /// Heading level of 1. - Level1, - /// Heading level of 2. - Level2, - /// Heading level of 3. - Level3, - /// Heading level of 4. - Level4, - /// Heading level of 5. - Level5, - /// Heading level of 6. - Level6, - /// Heading level of 7. - Level7, - /// Heading level of 8. - Level8, - /// Heading level of 9. - Level9, - } -} diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj index 359f7ac1f3f..56224cce98b 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/UIAutomationTypes.csproj @@ -47,7 +47,6 @@ - diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs index babbc100b71..3cd6b384c58 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs @@ -267,19 +267,6 @@ public enum OrientationType Horizontal = 1, Vertical = 2, } - public enum HeadingLevel - { - None = 80050, - Level1, - Level2, - Level3, - Level4, - Level5, - Level6, - Level7, - Level8, - Level9, - } public partial class ProxyAssemblyNotLoadedException : System.Exception { public ProxyAssemblyNotLoadedException() { } From f7f4ff4cbc0537de84c202291d815c211cd65e34 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 14 Jul 2021 21:53:01 -0300 Subject: [PATCH 40/42] reverting baseline files --- .../PresentationCore-ref.baseline.txt | 22 ++- .../PresentationFramework-ref.baseline.txt | 174 +++++++++++++++++- ...m.Windows.Controls.Ribbon-ref.baseline.txt | 7 +- .../Baselines/System.Xaml-ref.baseline.txt | 4 +- .../Baselines/WindowsBase-ref.baseline.txt | 3 +- .../WindowsFormsIntegration-ref.baseline.txt | 5 +- 6 files changed, 209 insertions(+), 6 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt index 74468828cc1..697271461f0 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationCore-ref.baseline.txt @@ -1,11 +1,27 @@ Compat issues with assembly PresentationCore: +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.ContentElement.CommandBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.ContentElement.InputBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.LocalizabilityAttribute' changed from '[AttributeUsageAttribute(412, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class | AttributeTargets.Enum | AttributeTargets.Field | AttributeTargets.Property | AttributeTargets.Struct, AllowMultiple=false, Inherited=true)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement.CommandBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement.InputBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement.PersistId' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement.RenderSize' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement3D.CommandBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.UIElement3D.InputBindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.FocusManager.GetFocusedElement(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.InputScope.Names' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Input.InputScope.PhraseList' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.Channel System.Windows.Media.Brush.GetChannelCore(System.Int32)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Int32 System.Windows.Media.Brush.GetChannelCountCore()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Brush.GetHandleCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal void System.Windows.Media.Brush.ReleaseOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.FamilyTypeface.DeviceFontCharacterMetrics' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.FontFamily.FamilyMaps' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.FontFamily.FamilyNames' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.FontFamily.FamilyTypefaces' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Media.FontFamilyMap.Target' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Media.FontFamilyMap.Unicode' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. MembersMustExist : Member 'internal System.Object System.Windows.Media.Converters.BaseIListConverter.ConvertFromCore(System.ComponentModel.ITypeDescriptorContext, System.Globalization.CultureInfo, System.String)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Object System.Windows.Media.Converters.BaseIListConverter.ConvertToCore(System.ComponentModel.ITypeDescriptorContext, System.Globalization.CultureInfo, System.Object, System.Type)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Windows.Media.Composition.DUCE.ResourceHandle System.Windows.Media.Effects.Effect.AddRefOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. @@ -16,6 +32,10 @@ MembersMustExist : Member 'internal System.Windows.Rect System.Windows.Media.Eff MembersMustExist : Member 'internal void System.Windows.Media.Effects.Effect.ReleaseOnChannelCore(System.Windows.Media.Composition.DUCE.Channel)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapDecoder.SealObject()' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal void System.Windows.Media.Imaging.BitmapEncoder.SealObject()' does not exist in the implementation but it does exist in the contract. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Imaging.BitmapImage.StreamSource' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Media3D.ContainerUIElement3D.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Media3D.ModelVisual3D.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Media3D.Viewport3DVisual.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. MembersMustExist : Member 'internal System.Windows.Media.TextFormatting.TextParagraphCache System.Windows.Media.TextFormatting.TextFormatter.CreateParagraphCache(System.Windows.Media.TextFormatting.TextSource, System.Int32, System.Double, System.Windows.Media.TextFormatting.TextParagraphProperties, System.Windows.Media.TextFormatting.TextLineBreak, System.Windows.Media.TextFormatting.TextRunCache)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Resources.AssemblyAssociatedContentFileAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. -Total Issues: 19 +Total Issues: 39 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationFramework-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationFramework-ref.baseline.txt index 11f445aa4e1..e60eae0b0cf 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationFramework-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/PresentationFramework-ref.baseline.txt @@ -4,25 +4,70 @@ MembersMustExist : Member 'internal System.String[] Microsoft.Win32.FileDialog.P MembersMustExist : Member 'internal System.Boolean Microsoft.Win32.FileDialog.RunFileDialog(MS.Win32.NativeMethods.OPENFILENAME_I)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.ComponentModel.DesignerProperties.GetIsInDesignMode(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.AttachedPropertyBrowsableForChildrenAttribute' changed from '[AttributeUsageAttribute(64, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple=false)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.DataTemplate.Triggers' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DataTrigger.Binding' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.DataTrigger.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DataTrigger.Value' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.EventTrigger.Actions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkContentElement.BindingGroup' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkContentElement.BindingGroup' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkContentElement.DataContext' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkContentElement.DataContext' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkContentElement.Name' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkElement.BindingGroup' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.BindingGroup' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkElement.DataContext' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.DataContext' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.FlowDirection' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.Height' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.MaxHeight' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.MaxWidth' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.MinHeight' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.MinWidth' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.FrameworkElement.Name' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.Name' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.Tag' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.ToolTip' changed from '[LocalizabilityAttribute(10)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ToolTip)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkElement.Triggers' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElement.Width' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkElementFactory' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.FrameworkTemplate' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.FrameworkTemplate.Resources' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. MembersMustExist : Member 'internal void System.Windows.FrameworkTemplate.SetTargetTypeInternal(System.Type)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.HorizontalAlignment' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.MultiDataTrigger.Conditions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.MultiDataTrigger.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.MultiTrigger.Conditions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.MultiTrigger.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.ResizeMode' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.ResourceDictionary' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.ResourceDictionary.DeferrableContent' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.ResourceDictionary.Source' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Setter.Property' changed from '[LocalizabilityAttribute(0, Modifiability=0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Setter.Value' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.SetterBase' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.StaticResourceExtension' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Style' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Style.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Style.TargetType' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Style.Triggers' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.StyleTypedPropertyAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.TemplatePartAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.TemplateVisualStateAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.ThemeInfoAttribute' changed from '[AttributeUsageAttribute(1)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Thickness' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Trigger.Property' changed from '[LocalizabilityAttribute(0, Modifiability=0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Trigger.Setters' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Trigger.Value' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.TriggerBase' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.TriggerBase.EnterActions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.TriggerBase.ExitActions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.TriggerCollection' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.VerticalAlignment' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.VisualStateManager.GetVisualStateGroups(System.Windows.FrameworkElement)' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Window' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Window.DialogResult' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Window.Title' changed from '[LocalizabilityAttribute(2)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Title)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.WindowStartupLocation' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotRemoveAttribute : Attribute 'System.Xml.Serialization.XmlRootAttribute' exists on 'System.Windows.Annotations.Annotation' in the contract but not the implementation. CannotRemoveAttribute : Attribute 'System.Xml.Serialization.XmlRootAttribute' exists on 'System.Windows.Annotations.AnnotationResource' in the contract but not the implementation. @@ -30,61 +75,188 @@ CannotRemoveAttribute : Attribute 'System.Xml.Serialization.XmlRootAttribute' ex CannotRemoveAttribute : Attribute 'System.Xml.Serialization.XmlRootAttribute' exists on 'System.Windows.Annotations.ContentLocatorGroup' in the contract but not the implementation. MembersMustExist : Member 'internal System.Collections.Generic.List System.Windows.Automation.Peers.ContentTextAutomationPeer.GetAutomationPeersFromRange(System.Windows.Documents.ITextPointer, System.Windows.Documents.ITextPointer)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'internal System.Collections.Generic.List System.Windows.Automation.Peers.TextAutomationPeer.GetAutomationPeersFromRange(System.Windows.Documents.ITextPointer, System.Windows.Documents.ITextPointer)' does not exist in the implementation but it does exist in the contract. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.AccessText.FontFamily' changed from '[LocalizabilityAttribute(14, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font, Modifiability=Modifiability.Unmodifiable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.AccessText.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.BooleanToVisibilityConverter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.CheckBox' changed from '[LocalizabilityAttribute(5)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.CheckBox)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ComboBox' changed from '[LocalizabilityAttribute(6)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ComboBox)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ComboBoxItem' changed from '[LocalizabilityAttribute(6)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ComboBox)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ContentControl' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ContentControl.ContentTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ContentPresenter' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ContextMenu.IsOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ContextMenu.PlacementTarget' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Control.FontFamily' changed from '[LocalizabilityAttribute(14)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Control.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ControlTemplate' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ControlTemplate.Triggers' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.DataGridTextColumn.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Decorator' changed from '[LocalizabilityAttribute(16, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.DefinitionBase' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Expander' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Frame' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Grid.ColumnDefinitions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Grid.RowDefinitions' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridView.ColumnHeaderTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridView.Columns' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.GridViewColumn' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridViewColumn.CellTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridViewColumn.HeaderTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridViewHeaderRowPresenter.ColumnHeaderStringFormat' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.GridViewHeaderRowPresenter.ColumnHeaderTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.GroupBox' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.GroupStyle' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.HeaderedContentControl' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.HeaderedContentControl.Header' changed from '[LocalizabilityAttribute(3)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Label)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.HeaderedItemsControl' changed from '[LocalizabilityAttribute(8)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Menu)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Image' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.DefaultStylusPointDescription' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.EraserShape' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.IsGestureRecognizerAvailable' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.PreferredPasteFormats' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.InkCanvas.UseCustomCursor' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ItemCollection' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ItemsControl' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.GroupStyle' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.GroupStyleSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.IsGrouping' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.ItemContainerStyleSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.Items' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.ItemsSource' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ItemsControl.ItemTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ItemsPresenter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Label' changed from '[LocalizabilityAttribute(3)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Label)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ListBox' changed from '[LocalizabilityAttribute(7)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ListBox)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ListBox.SelectedItems' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.MediaElement' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.MediaElement.Clock' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.MenuItem' changed from '[LocalizabilityAttribute(8)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Menu)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.MenuItem.Command' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.MenuItem.CommandParameter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.MenuItem.IsSubmenuOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.MenuItem.IsSuspendingPopupAnimation' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Orientation' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Page.FontFamily' changed from '[LocalizabilityAttribute(14, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font, Modifiability=Modifiability.Unmodifiable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Page.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Page.WindowTitle' changed from '[LocalizabilityAttribute(2)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Title)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Panel' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Panel.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.PasswordBox.Password' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.PasswordBox.SecurePassword' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.RadioButton' changed from '[LocalizabilityAttribute(9)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.RadioButton)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.RadioButton.GroupName' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.RichTextBox' changed from '[LocalizabilityAttribute(15)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Inherit)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.RichTextBox.CaretPosition' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ScrollContentPresenter.HorizontalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ScrollContentPresenter.ScrollOwner' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ScrollContentPresenter.VerticalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ScrollViewer' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Separator' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Slider' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.StackPanel.HorizontalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.StackPanel.ScrollOwner' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.StackPanel.VerticalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TabControl.SelectedContent' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TabControl.SelectedContentTemplate' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TabControl.SelectedContentTemplateSelector' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBlock' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBlock.FontFamily' changed from '[LocalizabilityAttribute(14)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBlock.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBlock.Inlines' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBlock.Text' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBox' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.CaretIndex' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.LineCount' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBox.MaxLength' changed from '[LocalizabilityAttribute(0, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.SelectedText' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.SelectionLength' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TextBox.SelectionStart' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.TextBox.Text' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ToolBar.IsOverflowOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ToolBarTray.ToolBars' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.ToolTip' changed from '[LocalizabilityAttribute(10)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.ToolTip)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ToolTip.IsOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.ToolTip.PlacementTarget' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TreeView.SelectedItem' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.TreeView.SelectedValue' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Viewport3D' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Viewport3D.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.VirtualizingStackPanel.HorizontalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.VirtualizingStackPanel.ScrollOwner' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.VirtualizingStackPanel.VerticalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ButtonBase' changed from '[LocalizabilityAttribute(4)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Button)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ButtonBase.Command' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ButtonBase.CommandParameter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. MembersMustExist : Member 'internal void System.Windows.Controls.Primitives.GridViewRowPresenterBase.OnColumnPropertyChanged(System.Windows.Controls.GridViewColumn, System.String)' does not exist in the implementation but it does exist in the contract. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.MenuBase' changed from '[LocalizabilityAttribute(8)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Menu)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.MultiSelector.SelectedItems' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.PlacementMode' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Popup' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.Popup.PlacementTarget' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ScrollBar' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.ScrollBar.ViewportSize' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector.IsSynchronizedWithCurrentItem' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedIndex' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedIndex' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedItem' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedValue' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedValue' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Selector.SelectedValuePath' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.StatusBarItem' changed from '[LocalizabilityAttribute(15)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Inherit)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.TextBoxBase' changed from '[LocalizabilityAttribute(1)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Text)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Thumb' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.TickBar' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.ToggleButton.IsChecked' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Primitives.Track' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.Binding.UpdateSourceExceptionFilter' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.BindingBase' changed from '[LocalizabilityAttribute(0, Modifiability=0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable, Readability=Readability.Unreadable)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.CompositeCollection' changed from '[LocalizabilityAttribute(16)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Ignore)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.MultiBinding.Bindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.MultiBinding.UpdateSourceExceptionFilter' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.ObjectDataProvider' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.PriorityBinding.Bindings' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Data.ValueConversionAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.XmlDataProvider' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.XmlDataProvider.Document' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.XmlDataProvider.XmlSerializer' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Data.XmlDataProvider.XPath' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Data.XmlNamespaceMappingCollection' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.AnchoredBlock.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.FixedDocument.Pages' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.FixedDocumentSequence.References' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.FixedPage.Children' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument' changed from '[LocalizabilityAttribute(15, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Inherit, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.FlowDocument.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.ColumnGap' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.ColumnRuleWidth' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.ColumnWidth' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.FontFamily' changed from '[LocalizabilityAttribute(14, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font, Modifiability=Modifiability.Unmodifiable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.FlowDocument.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.Hyperlink.Command' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.Hyperlink.CommandParameter' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.Hyperlink.NavigateUri' changed from '[LocalizabilityAttribute(11)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Hyperlink)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.Hyperlink.TargetName' changed from '[LocalizabilityAttribute(0, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Modifiability=Modifiability.Unmodifiable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.List.ListItems' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.ListItem.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.PageContent.Child' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Paragraph.Inlines' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Section.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Section.HasTrailingParagraphBreakOnPaste' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Span.Inlines' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Table.Columns' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.Table.RowGroups' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.TableCell.Blocks' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.TableRow.Cells' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Documents.TableRowGroup.Rows' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.TextElement.FontFamily' changed from '[LocalizabilityAttribute(14, Modifiability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.Font, Modifiability=Modifiability.Unmodifiable)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Documents.TextElement.FontSize' changed from '[LocalizabilityAttribute(0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Documents.TextElementEditingBehaviorAttribute' changed from '[AttributeUsageAttribute(4)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DependencyProperty System.Windows.Input.KeyboardNavigation.ControlTabNavigationProperty' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DependencyProperty System.Windows.Input.KeyboardNavigation.DirectionalNavigationProperty' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DependencyProperty System.Windows.Input.KeyboardNavigation.TabNavigationProperty' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.DependencyProperty System.Windows.Markup.XmlAttributeProperties.XmlSpaceProperty' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Markup.XmlAttributeProperties.GetXmlNamespaceMaps(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Markup.XmlAttributeProperties.GetXmlnsDefinition(System.Windows.DependencyObject)' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Markup.XmlAttributeProperties.GetXmlnsDefinition(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. @@ -92,4 +264,4 @@ CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVi CannotChangeAttribute : Attribute 'System.Windows.Markup.DesignerSerializationOptionsAttribute' on 'System.Windows.Markup.XmlAttributeProperties.GetXmlSpace(System.Windows.DependencyObject)' changed from '[DesignerSerializationOptionsAttribute(1)]' in the contract to '[DesignerSerializationOptionsAttribute(DesignerSerializationOptions.SerializeAsAttribute)]' in the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Media.Animation.Storyboard.GetTarget(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Shapes.Shape' changed from '[LocalizabilityAttribute(0, Readability=0)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.None, Readability=Readability.Unreadable)]' in the implementation. -Total Issues: 93 +Total Issues: 265 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Windows.Controls.Ribbon-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Windows.Controls.Ribbon-ref.baseline.txt index ccb6f8ad653..2367b0ffc9b 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Windows.Controls.Ribbon-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Windows.Controls.Ribbon-ref.baseline.txt @@ -1,4 +1,9 @@ Compat issues with assembly System.Windows.Controls.Ribbon: +CannotChangeAttribute : Attribute 'System.Windows.LocalizabilityAttribute' on 'System.Windows.Controls.Ribbon.RibbonGallery.SelectedValuePath' changed from '[LocalizabilityAttribute(17)]' in the contract to '[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]' in the implementation. MembersMustExist : Member 'protected internal void System.Windows.Controls.Ribbon.RibbonGalleryItem.OnSelected(System.Windows.RoutedEventArgs)' does not exist in the implementation but it does exist in the contract. MembersMustExist : Member 'protected internal void System.Windows.Controls.Ribbon.RibbonGalleryItem.OnUnselected(System.Windows.RoutedEventArgs)' does not exist in the implementation but it does exist in the contract. -Total Issues: 2 +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Ribbon.RibbonQuickAccessToolBar.IsOverflowOpen' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Ribbon.Primitives.RibbonGalleryCategoriesPanel.HorizontalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Ribbon.Primitives.RibbonGalleryCategoriesPanel.ScrollOwner' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Controls.Ribbon.Primitives.RibbonGalleryCategoriesPanel.VerticalOffset' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +Total Issues: 7 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Xaml-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Xaml-ref.baseline.txt index b73fe299425..cc55eb9e3c3 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Xaml-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/System.Xaml-ref.baseline.txt @@ -1,6 +1,7 @@ Compat issues with assembly System.Xaml: CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.AcceptedMarkupExtensionExpressionTypeAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true, Inherited=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.AmbientAttribute' changed from '[AttributeUsageAttribute(196, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class | AttributeTargets.Method | AttributeTargets.Property, Inherited=true)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Markup.ArrayExtension.Items' changed from '[DesignerSerializationVisibilityAttribute(2)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Content)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.ConstructorArgumentAttribute' changed from '[AttributeUsageAttribute(128, AllowMultiple=false, Inherited=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Property, AllowMultiple=false, Inherited=false)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.ContentPropertyAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false, Inherited=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.ContentWrapperAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=true, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=true, Inherited=true)]' in the implementation. @@ -14,6 +15,7 @@ CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Wi CannotRemoveAttribute : Attribute 'System.ComponentModel.TypeConverterAttribute' exists on 'System.Windows.Markup.StaticExtension' in the contract but not the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.TrimSurroundingWhitespaceAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false, Inherited=true)]' in the implementation. CannotRemoveAttribute : Attribute 'System.ComponentModel.TypeConverterAttribute' exists on 'System.Windows.Markup.TypeExtension' in the contract but not the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Markup.TypeExtension.TypeName' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.UidPropertyAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.UsableDuringInitializationAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false, Inherited=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.WhitespaceSignificantCollectionAttribute' changed from '[AttributeUsageAttribute(4, AllowMultiple=false, Inherited=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple=false, Inherited=true)]' in the implementation. @@ -24,4 +26,4 @@ CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Wi CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.XmlnsCompatibleWithAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.XmlnsDefinitionAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.XmlnsPrefixAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=true)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=true)]' in the implementation. -Total Issues: 25 +Total Issues: 27 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsBase-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsBase-ref.baseline.txt index 4d2bb5e41df..a59a8027d10 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsBase-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsBase-ref.baseline.txt @@ -4,6 +4,7 @@ CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Wi CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.AttachedPropertyBrowsableWhenAttributePresentAttribute' changed from '[AttributeUsageAttribute(64, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple=false)]' in the implementation. CannotRemoveAttribute : Attribute 'System.Windows.Markup.ValueSerializerAttribute' exists on 'System.Windows.DependencyProperty' in the contract but not the implementation. CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.NameScope.GetNameScope(System.Windows.DependencyObject)' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Data.DataSourceProvider.Data' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Markup.DesignerSerializationOptionsAttribute' changed from '[AttributeUsageAttribute(448, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Field | AttributeTargets.Method | AttributeTargets.Property, AllowMultiple=false)]' in the implementation. CannotChangeAttribute : Attribute 'System.AttributeUsageAttribute' on 'System.Windows.Media.DisableDpiAwarenessAttribute' changed from '[AttributeUsageAttribute(1, AllowMultiple=false)]' in the contract to '[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple=false)]' in the implementation. -Total Issues: 7 +Total Issues: 8 diff --git a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsFormsIntegration-ref.baseline.txt b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsFormsIntegration-ref.baseline.txt index fcc74cf8643..a4e714e6922 100644 --- a/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsFormsIntegration-ref.baseline.txt +++ b/src/Microsoft.DotNet.Wpf/ApiCompat/Baselines/WindowsFormsIntegration-ref.baseline.txt @@ -1 +1,4 @@ -Total Issues: 0 +Compat issues with assembly WindowsFormsIntegration: +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Forms.Integration.ElementHost.Child' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +CannotChangeAttribute : Attribute 'System.ComponentModel.DesignerSerializationVisibilityAttribute' on 'System.Windows.Forms.Integration.ElementHost.HostContainer' changed from '[DesignerSerializationVisibilityAttribute(0)]' in the contract to '[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Hidden)]' in the implementation. +Total Issues: 2 From 1c09b7dae53f6b2f7b3093601463702c0910c582 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 14 Jul 2021 22:29:44 -0300 Subject: [PATCH 41/42] removing disclaimer --- .../UIAutomationClient/ref/UIAutomationClient.cs | 10 ---------- .../UIAutomationTypes/ref/UIAutomationTypes.cs | 9 --------- 2 files changed, 19 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs index bc79efafe63..862c22d41c7 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationClient/ref/UIAutomationClient.cs @@ -1,13 +1,3 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// GenAPI Version: 6.0.4.31401 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - namespace System.Windows.Automation { public partial class AndCondition : System.Windows.Automation.Condition diff --git a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs index 3cd6b384c58..455835c5b9d 100644 --- a/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs +++ b/src/Microsoft.DotNet.Wpf/src/UIAutomation/UIAutomationTypes/ref/UIAutomationTypes.cs @@ -1,12 +1,3 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// GenAPI Version: 6.0.4.31401 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ namespace System.Windows.Automation { public sealed partial class AsyncContentLoadedEventArgs : System.Windows.Automation.AutomationEventArgs From c113364f465fc9d9822f6329b55af25bba5e33e4 Mon Sep 17 00:00:00 2001 From: Felipe da Conceicao Guimaraes Date: Wed, 14 Jul 2021 22:45:49 -0300 Subject: [PATCH 42/42] removing switches --- .../System/Windows/Automation/Peers/AutomationPeer.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs index 2a8a044fdf6..7a53918c9e7 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Automation/Peers/AutomationPeer.cs @@ -2426,11 +2426,11 @@ private static void Initialize() { s_propertyInfo[AutomationElementIdentifiers.PositionInSetProperty.Id] = new GetProperty(GetPositionInSet); } - if (!AccessibilitySwitches.UseNetFx472CompatibleAccessibilityFeatures && AutomationElementIdentifiers.HeadingLevelProperty != null) + if (AutomationElementIdentifiers.HeadingLevelProperty != null) { s_propertyInfo[AutomationElementIdentifiers.HeadingLevelProperty.Id] = new GetProperty(GetHeadingLevel); } - if (!AccessibilitySwitches.UseNetFx472CompatibleAccessibilityFeatures && AutomationElementIdentifiers.IsDialogProperty != null) + if (AutomationElementIdentifiers.IsDialogProperty != null) { s_propertyInfo[AutomationElementIdentifiers.IsDialogProperty.Id] = new GetProperty(IsDialog); }