From 51f6bd7ec0c3e14b390c8a30d34275f1250eb9c0 Mon Sep 17 00:00:00 2001 From: Manuel de la Pena Date: Sat, 26 Aug 2023 15:59:24 -0400 Subject: [PATCH] [CoreBluetooth] Add support for xcode 15 beta 6. --- src/corebluetooth.cs | 9 +++++++++ tests/cecil-tests/BlittablePInvokes.KnownFailures.cs | 2 ++ .../api-annotations-dotnet/iOS-CoreBluetooth.todo | 2 -- .../api-annotations-dotnet/macOS-CoreBluetooth.todo | 2 -- .../api-annotations-dotnet/tvOS-CoreBluetooth.todo | 2 -- tests/xtro-sharpie/iOS-CoreBluetooth.todo | 2 -- tests/xtro-sharpie/macOS-CoreBluetooth.todo | 2 -- tests/xtro-sharpie/tvOS-CoreBluetooth.todo | 2 -- tests/xtro-sharpie/watchOS-CoreBluetooth.todo | 2 -- 9 files changed, 11 insertions(+), 14 deletions(-) delete mode 100644 tests/xtro-sharpie/api-annotations-dotnet/iOS-CoreBluetooth.todo delete mode 100644 tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreBluetooth.todo delete mode 100644 tests/xtro-sharpie/api-annotations-dotnet/tvOS-CoreBluetooth.todo delete mode 100644 tests/xtro-sharpie/iOS-CoreBluetooth.todo delete mode 100644 tests/xtro-sharpie/macOS-CoreBluetooth.todo delete mode 100644 tests/xtro-sharpie/tvOS-CoreBluetooth.todo delete mode 100644 tests/xtro-sharpie/watchOS-CoreBluetooth.todo diff --git a/src/corebluetooth.cs b/src/corebluetooth.cs index 8ad969cf7d7e..e2b94da53b20 100644 --- a/src/corebluetooth.cs +++ b/src/corebluetooth.cs @@ -104,6 +104,8 @@ interface CBConnectPeripheralOptions { [iOS (13, 0), TV (13, 0), Watch (6, 0), NoMac] [MacCatalyst (13, 1)] bool RequiresAncs { get; set; } + [iOS (17, 0), TV (17, 0), Watch (10, 0), Mac (14, 0), MacCatalyst (17, 0)] + bool EnableAutoReconnect { get; } } [Static] @@ -125,6 +127,9 @@ interface CBConnectPeripheralOptionsKeys { [MacCatalyst (13, 1)] [Field ("CBConnectPeripheralOptionRequiresANCS")] NSString RequiresAncsKey { get; } + [iOS (17, 0), TV (17, 0), Watch (10, 0), Mac (14, 0), MacCatalyst (17, 0)] + [Field ("CBConnectPeripheralOptionEnableAutoReconnect")] + NSString EnableAutoReconnectKey { get; } } [MacCatalyst (13, 1)] @@ -378,6 +383,10 @@ interface CBCentralManagerDelegate { [MacCatalyst (13, 1)] [Export ("centralManager:didUpdateANCSAuthorizationForPeripheral:"), EventArgs ("CBAncsAuthorizationUpdate")] void DidUpdateAncsAuthorization (CBCentralManager central, CBPeripheral peripheral); + + [iOS (17, 0), TV (17, 0), Watch (10, 0), Mac (14, 0), MacCatalyst (17, 0), EventArgs ("CBPeripheralDiconnectionEvent")] + [Export ("centralManager:didDisconnectPeripheral:timestamp:isReconnecting:error:")] + void DidDisconnectPeripheral (CBCentralManager central, CBPeripheral peripheral, double timestamp, bool isReconnecting, [NullAllowed] NSError error); } [MacCatalyst (13, 1)] diff --git a/tests/cecil-tests/BlittablePInvokes.KnownFailures.cs b/tests/cecil-tests/BlittablePInvokes.KnownFailures.cs index e839212b64d8..1f9f6386ba2e 100644 --- a/tests/cecil-tests/BlittablePInvokes.KnownFailures.cs +++ b/tests/cecil-tests/BlittablePInvokes.KnownFailures.cs @@ -1329,6 +1329,8 @@ public partial class BlittablePInvokes { "System.Void UIKit.UIAccessibility::UIAccessibilityRequestGuidedAccessSession(System.Boolean,ObjCRuntime.BlockLiteral*)", "System.Void UIKit.UIGraphics::BeginImageContextWithOptions(CoreGraphics.CGSize,System.Boolean,System.Runtime.InteropServices.NFloat)", "System.Void UIKit.UIGuidedAccessRestriction::UIGuidedAccessConfigureAccessibilityFeatures(System.UIntPtr,System.Boolean,ObjCRuntime.BlockLiteral*)", + "System.Void ObjCRuntime.Messaging::void_objc_msgSend_NativeHandle_NativeHandle_Double_bool_NativeHandle(System.IntPtr,System.IntPtr,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,System.Double,System.Boolean,ObjCRuntime.NativeHandle)", + "System.Void ObjCRuntime.Messaging::void_objc_msgSendSuper_NativeHandle_NativeHandle_Double_bool_NativeHandle(System.IntPtr,System.IntPtr,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,System.Double,System.Boolean,ObjCRuntime.NativeHandle)", }; } } diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-CoreBluetooth.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-CoreBluetooth.todo deleted file mode 100644 index 4aa425e8a739..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-CoreBluetooth.todo +++ /dev/null @@ -1,2 +0,0 @@ -!missing-field! CBConnectPeripheralOptionEnableAutoReconnect not bound -!missing-protocol-member! CBCentralManagerDelegate::centralManager:didDisconnectPeripheral:timestamp:isReconnecting:error: not found diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreBluetooth.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreBluetooth.todo deleted file mode 100644 index 4aa425e8a739..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreBluetooth.todo +++ /dev/null @@ -1,2 +0,0 @@ -!missing-field! CBConnectPeripheralOptionEnableAutoReconnect not bound -!missing-protocol-member! CBCentralManagerDelegate::centralManager:didDisconnectPeripheral:timestamp:isReconnecting:error: not found diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-CoreBluetooth.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-CoreBluetooth.todo deleted file mode 100644 index 4aa425e8a739..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-CoreBluetooth.todo +++ /dev/null @@ -1,2 +0,0 @@ -!missing-field! CBConnectPeripheralOptionEnableAutoReconnect not bound -!missing-protocol-member! CBCentralManagerDelegate::centralManager:didDisconnectPeripheral:timestamp:isReconnecting:error: not found diff --git a/tests/xtro-sharpie/iOS-CoreBluetooth.todo b/tests/xtro-sharpie/iOS-CoreBluetooth.todo deleted file mode 100644 index 4aa425e8a739..000000000000 --- a/tests/xtro-sharpie/iOS-CoreBluetooth.todo +++ /dev/null @@ -1,2 +0,0 @@ -!missing-field! CBConnectPeripheralOptionEnableAutoReconnect not bound -!missing-protocol-member! CBCentralManagerDelegate::centralManager:didDisconnectPeripheral:timestamp:isReconnecting:error: not found diff --git a/tests/xtro-sharpie/macOS-CoreBluetooth.todo b/tests/xtro-sharpie/macOS-CoreBluetooth.todo deleted file mode 100644 index 4aa425e8a739..000000000000 --- a/tests/xtro-sharpie/macOS-CoreBluetooth.todo +++ /dev/null @@ -1,2 +0,0 @@ -!missing-field! CBConnectPeripheralOptionEnableAutoReconnect not bound -!missing-protocol-member! CBCentralManagerDelegate::centralManager:didDisconnectPeripheral:timestamp:isReconnecting:error: not found diff --git a/tests/xtro-sharpie/tvOS-CoreBluetooth.todo b/tests/xtro-sharpie/tvOS-CoreBluetooth.todo deleted file mode 100644 index 4aa425e8a739..000000000000 --- a/tests/xtro-sharpie/tvOS-CoreBluetooth.todo +++ /dev/null @@ -1,2 +0,0 @@ -!missing-field! CBConnectPeripheralOptionEnableAutoReconnect not bound -!missing-protocol-member! CBCentralManagerDelegate::centralManager:didDisconnectPeripheral:timestamp:isReconnecting:error: not found diff --git a/tests/xtro-sharpie/watchOS-CoreBluetooth.todo b/tests/xtro-sharpie/watchOS-CoreBluetooth.todo deleted file mode 100644 index 4aa425e8a739..000000000000 --- a/tests/xtro-sharpie/watchOS-CoreBluetooth.todo +++ /dev/null @@ -1,2 +0,0 @@ -!missing-field! CBConnectPeripheralOptionEnableAutoReconnect not bound -!missing-protocol-member! CBCentralManagerDelegate::centralManager:didDisconnectPeripheral:timestamp:isReconnecting:error: not found