From 6d54de504aab7bfa80078747686ef2d9d29ed937 Mon Sep 17 00:00:00 2001 From: Dariusz Komosinski Date: Thu, 30 Jan 2020 22:46:50 +0100 Subject: [PATCH 1/4] Remove TypeInfo usage from Avalonia.Markup.Xaml. --- src/Markup/Avalonia.Markup.Xaml/Templates/DataTemplate.cs | 3 +-- .../Avalonia.Markup.Xaml/Templates/TreeDataTemplate.cs | 5 +---- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/src/Markup/Avalonia.Markup.Xaml/Templates/DataTemplate.cs b/src/Markup/Avalonia.Markup.Xaml/Templates/DataTemplate.cs index c81a3718a7..d56435b4f2 100644 --- a/src/Markup/Avalonia.Markup.Xaml/Templates/DataTemplate.cs +++ b/src/Markup/Avalonia.Markup.Xaml/Templates/DataTemplate.cs @@ -2,7 +2,6 @@ // Licensed under the MIT license. See licence.md file in the project root for full license information. using System; -using System.Reflection; using Avalonia.Controls; using Avalonia.Controls.Templates; using Avalonia.Metadata; @@ -28,7 +27,7 @@ namespace Avalonia.Markup.Xaml.Templates } else { - return DataType.GetTypeInfo().IsAssignableFrom(data.GetType().GetTypeInfo()); + return DataType.IsInstanceOfType(data); } } diff --git a/src/Markup/Avalonia.Markup.Xaml/Templates/TreeDataTemplate.cs b/src/Markup/Avalonia.Markup.Xaml/Templates/TreeDataTemplate.cs index 0e2a131afd..0e95af674b 100644 --- a/src/Markup/Avalonia.Markup.Xaml/Templates/TreeDataTemplate.cs +++ b/src/Markup/Avalonia.Markup.Xaml/Templates/TreeDataTemplate.cs @@ -2,12 +2,9 @@ // Licensed under the MIT license. See licence.md file in the project root for full license information. using System; -using System.Reflection; using Avalonia.Controls; using Avalonia.Controls.Templates; using Avalonia.Data; -using Avalonia.Data.Core; -using Avalonia.Markup.Data; using Avalonia.Markup.Parsers; using Avalonia.Metadata; @@ -34,7 +31,7 @@ namespace Avalonia.Markup.Xaml.Templates } else { - return DataType.GetTypeInfo().IsAssignableFrom(data.GetType().GetTypeInfo()); + return DataType.IsInstanceOfType(data); } } From 0d2dd884aded0d4b1dab2eab027ef9b0fcd61eac Mon Sep 17 00:00:00 2001 From: Dariusz Komosinski Date: Thu, 30 Jan 2020 22:46:59 +0100 Subject: [PATCH 2/4] Remove TypeInfo usage from Avalonia.Visuals. --- src/Avalonia.Visuals/VisualTree/VisualLocator.cs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/Avalonia.Visuals/VisualTree/VisualLocator.cs b/src/Avalonia.Visuals/VisualTree/VisualLocator.cs index eaca9ed9d7..1e0662c17a 100644 --- a/src/Avalonia.Visuals/VisualTree/VisualLocator.cs +++ b/src/Avalonia.Visuals/VisualTree/VisualLocator.cs @@ -1,7 +1,5 @@ using System; using System.Linq; -using System.Reactive.Linq; -using System.Reflection; using Avalonia.Reactive; namespace Avalonia.VisualTree @@ -50,7 +48,7 @@ namespace Avalonia.VisualTree if (_relativeTo.IsAttachedToVisualTree) { return _relativeTo.GetVisualAncestors() - .Where(x => _ancestorType?.GetTypeInfo().IsAssignableFrom(x.GetType().GetTypeInfo()) ?? true) + .Where(x => _ancestorType?.IsAssignableFrom(x.GetType()) ?? true) .ElementAtOrDefault(_ancestorLevel); } else From df0bbee6e78f1fa5861216d37ed8ddb0f4529595 Mon Sep 17 00:00:00 2001 From: Dariusz Komosinski Date: Thu, 30 Jan 2020 22:47:09 +0100 Subject: [PATCH 3/4] Remove TypeInfo usage from Avalonia.ReactiveUI. --- src/Avalonia.ReactiveUI/AvaloniaActivationForViewFetcher.cs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/Avalonia.ReactiveUI/AvaloniaActivationForViewFetcher.cs b/src/Avalonia.ReactiveUI/AvaloniaActivationForViewFetcher.cs index 5a4d625c41..f7437e5930 100644 --- a/src/Avalonia.ReactiveUI/AvaloniaActivationForViewFetcher.cs +++ b/src/Avalonia.ReactiveUI/AvaloniaActivationForViewFetcher.cs @@ -2,9 +2,7 @@ // Licensed under the MIT license. See licence.md file in the project root for full license information. using System; -using System.Reflection; using System.Reactive.Linq; -using Avalonia; using Avalonia.VisualTree; using Avalonia.Controls; using ReactiveUI; @@ -21,7 +19,7 @@ namespace Avalonia.ReactiveUI /// public int GetAffinityForView(Type view) { - return typeof(IVisual).GetTypeInfo().IsAssignableFrom(view.GetTypeInfo()) ? 10 : 0; + return typeof(IVisual).IsAssignableFrom(view) ? 10 : 0; } /// From e249765d06c034779e70b6e04bc039decc29a607 Mon Sep 17 00:00:00 2001 From: Dariusz Komosinski Date: Thu, 30 Jan 2020 22:47:24 +0100 Subject: [PATCH 4/4] Remove TypeInfo usage from Avalonia.Interactivity. --- src/Avalonia.Interactivity/RoutedEvent.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Avalonia.Interactivity/RoutedEvent.cs b/src/Avalonia.Interactivity/RoutedEvent.cs index bc5dec9a90..55d9e61d87 100644 --- a/src/Avalonia.Interactivity/RoutedEvent.cs +++ b/src/Avalonia.Interactivity/RoutedEvent.cs @@ -3,7 +3,6 @@ using System; using System.Reactive.Subjects; -using System.Reflection; namespace Avalonia.Interactivity { @@ -29,7 +28,7 @@ namespace Avalonia.Interactivity Contract.Requires(name != null); Contract.Requires(eventArgsType != null); Contract.Requires(ownerType != null); - Contract.Requires(typeof(RoutedEventArgs).GetTypeInfo().IsAssignableFrom(eventArgsType.GetTypeInfo())); + Contract.Requires(typeof(RoutedEventArgs).IsAssignableFrom(eventArgsType)); EventArgsType = eventArgsType; Name = name;