From 62526bef3599681e08d9b6a2ed51d8b9316f0165 Mon Sep 17 00:00:00 2001 From: Steven Kirk Date: Fri, 20 Jul 2018 21:38:14 +0200 Subject: [PATCH] Don't disallow setting unregistered properties. The changes made to the animation system in #1768 currently needs to be able to set any property on any object in order for animations on transforms to work. --- .../Converters/AvaloniaPropertyTypeConverter.cs | 9 ++++++++- tests/Avalonia.Markup.Xaml.UnitTests/Xaml/StyleTests.cs | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/Markup/Avalonia.Markup.Xaml/Converters/AvaloniaPropertyTypeConverter.cs b/src/Markup/Avalonia.Markup.Xaml/Converters/AvaloniaPropertyTypeConverter.cs index 2470778685..0588e82901 100644 --- a/src/Markup/Avalonia.Markup.Xaml/Converters/AvaloniaPropertyTypeConverter.cs +++ b/src/Markup/Avalonia.Markup.Xaml/Converters/AvaloniaPropertyTypeConverter.cs @@ -5,6 +5,7 @@ using System; using System.ComponentModel; using System.Globalization; using Avalonia.Controls; +using Avalonia.Logging; using Avalonia.Markup.Parsers; using Avalonia.Markup.Xaml.Parsers; using Avalonia.Markup.Xaml.Templates; @@ -42,7 +43,13 @@ namespace Avalonia.Markup.Xaml.Converters !property.IsAttached && !registry.IsRegistered(targetType, property)) { - throw new XamlLoadException($"Property '{effectiveOwner.Name}.{propertyName}' is not registered on '{targetType}'."); + Logger.Warning( + LogArea.Property, + this, + "Property '{Owner}.{Name}' is not registered on '{Type}'.", + effectiveOwner, + propertyName, + targetType); } return property; diff --git a/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/StyleTests.cs b/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/StyleTests.cs index 1d2f90d383..beaf7477d0 100644 --- a/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/StyleTests.cs +++ b/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/StyleTests.cs @@ -174,7 +174,7 @@ namespace Avalonia.Markup.Xaml.UnitTests.Xaml } } - [Fact] + [Fact(Skip = "The animation system currently needs to be able to set any property on any object")] public void Disallows_Setting_Non_Registered_Property() { using (UnitTestApplication.Start(TestServices.StyledWindow))