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);
}