From cb3860384699ca8ea198ea854cbcd452d2d91a94 Mon Sep 17 00:00:00 2001 From: Rachel Kang Date: Wed, 23 Nov 2022 13:24:45 -0500 Subject: [PATCH] Add appropriate versioning attributes --- .../Core/Platform/GestureManager/GestureManager.iOS.cs | 5 ++++- .../Core/Platform/iOS/CustomHoverGestureRecognizer.cs | 9 ++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/Controls/src/Core/Platform/GestureManager/GestureManager.iOS.cs b/src/Controls/src/Core/Platform/GestureManager/GestureManager.iOS.cs index 2ff21287886a..fc3686c8adf1 100644 --- a/src/Controls/src/Core/Platform/GestureManager/GestureManager.iOS.cs +++ b/src/Controls/src/Core/Platform/GestureManager/GestureManager.iOS.cs @@ -223,7 +223,8 @@ static void ProcessRecognizerHandlerTap( } var pointerGestureRecognizer = recognizer as PointerGestureRecognizer; - if (pointerGestureRecognizer != null) + + if (pointerGestureRecognizer != null && OperatingSystem.IsIOSVersionAtLeast(13)) { var uiRecognizer = CreatePointerRecognizer(r => { @@ -405,6 +406,8 @@ UISwipeGestureRecognizer CreateSwipeRecognizer(SwipeDirection direction, Action< return result; } + [SupportedOSPlatform("ios13.0")] + [SupportedOSPlatform("maccatalyst13.0")] CustomHoverGestureRecognizer CreatePointerRecognizer(Action action) { var result = new CustomHoverGestureRecognizer(action); diff --git a/src/Controls/src/Core/Platform/iOS/CustomHoverGestureRecognizer.cs b/src/Controls/src/Core/Platform/iOS/CustomHoverGestureRecognizer.cs index ac79e586793f..505b4c660b5b 100644 --- a/src/Controls/src/Core/Platform/iOS/CustomHoverGestureRecognizer.cs +++ b/src/Controls/src/Core/Platform/iOS/CustomHoverGestureRecognizer.cs @@ -1,4 +1,5 @@ using System; +using System.Runtime.Versioning; using Foundation; using ObjCRuntime; using UIKit; @@ -6,21 +7,19 @@ namespace Microsoft.Maui.Controls.Platform.iOS; +[SupportedOSPlatform("ios13.0")] +[SupportedOSPlatform("maccatalyst13.0")] internal class CustomHoverGestureRecognizer : UIHoverGestureRecognizer { NSObject _target; - -#pragma warning disable CA1416 + public CustomHoverGestureRecognizer(NSObject target, Selector action) : base(target, action) { _target = target; } -#pragma warning restore CA1416 -#pragma warning disable CA1416 internal CustomHoverGestureRecognizer(Action action) : this(new Callback(action), Selector.FromHandle(Selector.GetHandle("target:"))!) { } -#pragma warning restore CA1416 [Register("__UIHoverGestureRecognizer")] class Callback : Token