diff --git a/src/coreanimation.cs b/src/coreanimation.cs index ee8833b328db..76576ee5b677 100644 --- a/src/coreanimation.cs +++ b/src/coreanimation.cs @@ -38,7 +38,6 @@ using OpenGL; #else using UIKit; -using CAEdrMetadata = Foundation.NSObject; #endif #if HAS_OPENGLES using OpenGLES; @@ -50,6 +49,10 @@ using Metal; using SceneKit; // For SCNAnimationEvent +#if __WATCHOS__ || __TVOS__ +using CAEdrMetadata = Foundation.NSObject; +#endif + #if !MONOMAC using CGLPixelFormat = Foundation.NSObject; using CVTimeStamp = Foundation.NSObject; @@ -754,12 +757,30 @@ interface CAMetalLayer { IMTLDevice PreferredDevice { get; } [NoWatch] - [NoiOS] + [iOS (16, 0)] [NoTV] [Mac (10, 15)] - [MacCatalyst (13, 0)] + [MacCatalyst (16, 0)] [NullAllowed, Export ("EDRMetadata", ArgumentSemantic.Strong)] CAEdrMetadata EdrMetadata { get; set; } + + [NoWatch] + [NoTV] + [iOS (16, 0)] + [MacCatalyst (16, 0)] + [Mac (11, 0)] + [Export ("wantsExtendedDynamicRangeContent")] + bool WantsExtendedDynamicRangeContent { get; set; } + + [NoWatch] + [TV (16, 0)] + [iOS (16, 0)] + [MacCatalyst (16, 0)] + [Mac (13, 0)] + [Export ("developerHUDProperties", ArgumentSemantic.Copy)] + [NullAllowed] + // There's no documentation about which values are valid in this dictionary, so we can't create any strong bindings for it. + NSDictionary DeveloperHudProperties { get; set; } } [BaseType (typeof (CALayer))] @@ -2038,9 +2059,9 @@ interface CARenderer { } [NoWatch] - [NoiOS] + [iOS (16, 0)] [NoTV] - [MacCatalyst (13, 1)] + [MacCatalyst (16, 0)] [Mac (10, 15)] [BaseType (typeof (NSObject), Name = "CAEDRMetadata")] [DisableDefaultCtor] @@ -2057,5 +2078,10 @@ interface CAEdrMetadata { [Static] [Export ("HLGMetadata", ArgumentSemantic.Retain)] CAEdrMetadata HlgMetadata { get; } + + [Mac (13, 0)] + [Static] + [Export ("available")] + bool Available { [Bind ("isAvailable")] get; } } } diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CoreAnimation.ignore b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CoreAnimation.ignore index 13e8fb3f324d..03052d9918da 100644 --- a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CoreAnimation.ignore +++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CoreAnimation.ignore @@ -14,5 +14,3 @@ !missing-selector! CAConstraint::offset not bound !missing-selector! +CALayer::layerWithRemoteClientId: not bound !missing-selector! +CARemoteLayerServer::sharedServer not bound -!missing-selector! CAMetalLayer::setWantsExtendedDynamicRangeContent: not bound -!missing-selector! CAMetalLayer::wantsExtendedDynamicRangeContent not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CoreAnimation.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CoreAnimation.todo index 36146e39fbfd..8ecb17ad1823 100644 --- a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CoreAnimation.todo +++ b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CoreAnimation.todo @@ -1,9 +1,6 @@ !missing-field! kCARendererColorSpace not bound !missing-field! kCARendererMetalCommandQueue not bound -!missing-selector! +CAEDRMetadata::isAvailable not bound !missing-selector! +CARenderer::rendererWithMTLTexture:options: not bound -!missing-selector! CAMetalLayer::developerHUDProperties not bound -!missing-selector! CAMetalLayer::setDeveloperHUDProperties: not bound !missing-selector! CARenderer::addUpdateRect: not bound !missing-selector! CARenderer::beginFrameAtTime:timeStamp: not bound !missing-selector! CARenderer::bounds not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-CoreAnimation.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-CoreAnimation.todo index a29a792b603d..8ecb17ad1823 100644 --- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-CoreAnimation.todo +++ b/tests/xtro-sharpie/api-annotations-dotnet/iOS-CoreAnimation.todo @@ -1,16 +1,6 @@ !missing-field! kCARendererColorSpace not bound !missing-field! kCARendererMetalCommandQueue not bound -!missing-selector! +CAEDRMetadata::HDR10MetadataWithDisplayInfo:contentInfo:opticalOutputScale: not bound -!missing-selector! +CAEDRMetadata::HDR10MetadataWithMinLuminance:maxLuminance:opticalOutputScale: not bound -!missing-selector! +CAEDRMetadata::HLGMetadata not bound -!missing-selector! +CAEDRMetadata::isAvailable not bound !missing-selector! +CARenderer::rendererWithMTLTexture:options: not bound -!missing-selector! CAMetalLayer::developerHUDProperties not bound -!missing-selector! CAMetalLayer::EDRMetadata not bound -!missing-selector! CAMetalLayer::setDeveloperHUDProperties: not bound -!missing-selector! CAMetalLayer::setEDRMetadata: not bound -!missing-selector! CAMetalLayer::setWantsExtendedDynamicRangeContent: not bound -!missing-selector! CAMetalLayer::wantsExtendedDynamicRangeContent not bound !missing-selector! CARenderer::addUpdateRect: not bound !missing-selector! CARenderer::beginFrameAtTime:timeStamp: not bound !missing-selector! CARenderer::bounds not bound @@ -22,5 +12,4 @@ !missing-selector! CARenderer::setDestination: not bound !missing-selector! CARenderer::setLayer: not bound !missing-selector! CARenderer::updateBounds not bound -!missing-type! CAEDRMetadata not bound !missing-type! CARenderer not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreAnimation.ignore b/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreAnimation.ignore index 97d895e96032..4238db5672f5 100644 --- a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreAnimation.ignore +++ b/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreAnimation.ignore @@ -4,8 +4,6 @@ !missing-protocol-conformance! CAConstraintLayoutManager should conform to CALayoutManager !missing-selector! +CALayer::layerWithRemoteClientId: not bound !missing-selector! CAConstraint::offset not bound -!missing-selector! CAMetalLayer::setWantsExtendedDynamicRangeContent: not bound -!missing-selector! CAMetalLayer::wantsExtendedDynamicRangeContent not bound !missing-selector! CARemoteLayerClient::clientId not bound !missing-selector! CARemoteLayerClient::initWithServerPort: not bound !missing-selector! CARemoteLayerClient::layer not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreAnimation.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreAnimation.todo deleted file mode 100644 index 46e01ebf49d6..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreAnimation.todo +++ /dev/null @@ -1,3 +0,0 @@ -!missing-selector! +CAEDRMetadata::isAvailable not bound -!missing-selector! CAMetalLayer::developerHUDProperties not bound -!missing-selector! CAMetalLayer::setDeveloperHUDProperties: not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-CoreAnimation.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-CoreAnimation.todo index 50449d525b96..8ecb17ad1823 100644 --- a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-CoreAnimation.todo +++ b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-CoreAnimation.todo @@ -1,8 +1,6 @@ !missing-field! kCARendererColorSpace not bound !missing-field! kCARendererMetalCommandQueue not bound !missing-selector! +CARenderer::rendererWithMTLTexture:options: not bound -!missing-selector! CAMetalLayer::developerHUDProperties not bound -!missing-selector! CAMetalLayer::setDeveloperHUDProperties: not bound !missing-selector! CARenderer::addUpdateRect: not bound !missing-selector! CARenderer::beginFrameAtTime:timeStamp: not bound !missing-selector! CARenderer::bounds not bound diff --git a/tests/xtro-sharpie/iOS-CoreAnimation.todo b/tests/xtro-sharpie/iOS-CoreAnimation.todo index a29a792b603d..8ecb17ad1823 100644 --- a/tests/xtro-sharpie/iOS-CoreAnimation.todo +++ b/tests/xtro-sharpie/iOS-CoreAnimation.todo @@ -1,16 +1,6 @@ !missing-field! kCARendererColorSpace not bound !missing-field! kCARendererMetalCommandQueue not bound -!missing-selector! +CAEDRMetadata::HDR10MetadataWithDisplayInfo:contentInfo:opticalOutputScale: not bound -!missing-selector! +CAEDRMetadata::HDR10MetadataWithMinLuminance:maxLuminance:opticalOutputScale: not bound -!missing-selector! +CAEDRMetadata::HLGMetadata not bound -!missing-selector! +CAEDRMetadata::isAvailable not bound !missing-selector! +CARenderer::rendererWithMTLTexture:options: not bound -!missing-selector! CAMetalLayer::developerHUDProperties not bound -!missing-selector! CAMetalLayer::EDRMetadata not bound -!missing-selector! CAMetalLayer::setDeveloperHUDProperties: not bound -!missing-selector! CAMetalLayer::setEDRMetadata: not bound -!missing-selector! CAMetalLayer::setWantsExtendedDynamicRangeContent: not bound -!missing-selector! CAMetalLayer::wantsExtendedDynamicRangeContent not bound !missing-selector! CARenderer::addUpdateRect: not bound !missing-selector! CARenderer::beginFrameAtTime:timeStamp: not bound !missing-selector! CARenderer::bounds not bound @@ -22,5 +12,4 @@ !missing-selector! CARenderer::setDestination: not bound !missing-selector! CARenderer::setLayer: not bound !missing-selector! CARenderer::updateBounds not bound -!missing-type! CAEDRMetadata not bound !missing-type! CARenderer not bound diff --git a/tests/xtro-sharpie/macOS-CoreAnimation.ignore b/tests/xtro-sharpie/macOS-CoreAnimation.ignore index 97d895e96032..4238db5672f5 100644 --- a/tests/xtro-sharpie/macOS-CoreAnimation.ignore +++ b/tests/xtro-sharpie/macOS-CoreAnimation.ignore @@ -4,8 +4,6 @@ !missing-protocol-conformance! CAConstraintLayoutManager should conform to CALayoutManager !missing-selector! +CALayer::layerWithRemoteClientId: not bound !missing-selector! CAConstraint::offset not bound -!missing-selector! CAMetalLayer::setWantsExtendedDynamicRangeContent: not bound -!missing-selector! CAMetalLayer::wantsExtendedDynamicRangeContent not bound !missing-selector! CARemoteLayerClient::clientId not bound !missing-selector! CARemoteLayerClient::initWithServerPort: not bound !missing-selector! CARemoteLayerClient::layer not bound diff --git a/tests/xtro-sharpie/macOS-CoreAnimation.todo b/tests/xtro-sharpie/macOS-CoreAnimation.todo deleted file mode 100644 index 46e01ebf49d6..000000000000 --- a/tests/xtro-sharpie/macOS-CoreAnimation.todo +++ /dev/null @@ -1,3 +0,0 @@ -!missing-selector! +CAEDRMetadata::isAvailable not bound -!missing-selector! CAMetalLayer::developerHUDProperties not bound -!missing-selector! CAMetalLayer::setDeveloperHUDProperties: not bound diff --git a/tests/xtro-sharpie/tvOS-CoreAnimation.todo b/tests/xtro-sharpie/tvOS-CoreAnimation.todo index 50449d525b96..8ecb17ad1823 100644 --- a/tests/xtro-sharpie/tvOS-CoreAnimation.todo +++ b/tests/xtro-sharpie/tvOS-CoreAnimation.todo @@ -1,8 +1,6 @@ !missing-field! kCARendererColorSpace not bound !missing-field! kCARendererMetalCommandQueue not bound !missing-selector! +CARenderer::rendererWithMTLTexture:options: not bound -!missing-selector! CAMetalLayer::developerHUDProperties not bound -!missing-selector! CAMetalLayer::setDeveloperHUDProperties: not bound !missing-selector! CARenderer::addUpdateRect: not bound !missing-selector! CARenderer::beginFrameAtTime:timeStamp: not bound !missing-selector! CARenderer::bounds not bound