From 654dae7c0360f7204f5faa6577012a46f4414a7a Mon Sep 17 00:00:00 2001 From: Nikita Tsukanov Date: Wed, 29 May 2019 20:47:11 +0300 Subject: [PATCH] Lazy initialization for PointerEventArgs.Device --- src/Avalonia.Input/PointerEventArgs.cs | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/Avalonia.Input/PointerEventArgs.cs b/src/Avalonia.Input/PointerEventArgs.cs index 91bfb694a0..1d07190a81 100644 --- a/src/Avalonia.Input/PointerEventArgs.cs +++ b/src/Avalonia.Input/PointerEventArgs.cs @@ -27,11 +27,6 @@ namespace Avalonia.Input _properties = properties; Pointer = pointer; InputModifiers = modifiers; -#pragma warning disable 612 -#pragma warning disable 618 - Device = new EmulatedDevice(this); -#pragma warning restore 618 -#pragma warning restore 612 } class EmulatedDevice : IPointerDevice @@ -55,9 +50,11 @@ namespace Avalonia.Input } public IPointer Pointer { get; } - + + private IPointerDevice _device; + [Obsolete("Use Pointer to get pointer-specific information")] - public IPointerDevice Device { get; } + public IPointerDevice Device => _device ?? (_device = new EmulatedDevice(this)); public InputModifiers InputModifiers { get; }