[CoreAnimation] Add missing CAMetalLayer properties. Fixes #17340. (#17345)

Also make CAEdrMetadata available on iOS and add a missing CAEdrMetadata
property.

Fixes https://github.com/xamarin/xamarin-macios/issues/17340.
This commit is contained in:
Rolf Bjarne Kvinge 2023-01-25 08:57:46 +01:00 коммит произвёл GitHub
Родитель 6af8da73af
Коммит 40b98b650d
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
11 изменённых файлов: 31 добавлений и 46 удалений

Просмотреть файл

@ -38,7 +38,6 @@ using CoreVideo;
using OpenGL;
#else
using UIKit;
using CAEdrMetadata = Foundation.NSObject;
#endif
#if HAS_OPENGLES
using OpenGLES;
@ -50,6 +49,10 @@ using ObjCRuntime;
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 @@ namespace CoreAnimation {
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 @@ namespace CoreAnimation {
}
[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 @@ namespace CoreAnimation {
[Static]
[Export ("HLGMetadata", ArgumentSemantic.Retain)]
CAEdrMetadata HlgMetadata { get; }
[Mac (13, 0)]
[Static]
[Export ("available")]
bool Available { [Bind ("isAvailable")] get; }
}
}

Просмотреть файл

@ -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

Просмотреть файл

@ -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

Просмотреть файл

@ -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

Просмотреть файл

@ -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

Просмотреть файл

@ -1,3 +0,0 @@
!missing-selector! +CAEDRMetadata::isAvailable not bound
!missing-selector! CAMetalLayer::developerHUDProperties not bound
!missing-selector! CAMetalLayer::setDeveloperHUDProperties: not bound

Просмотреть файл

@ -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

Просмотреть файл

@ -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

Просмотреть файл

@ -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

Просмотреть файл

@ -1,3 +0,0 @@
!missing-selector! +CAEDRMetadata::isAvailable not bound
!missing-selector! CAMetalLayer::developerHUDProperties not bound
!missing-selector! CAMetalLayer::setDeveloperHUDProperties: not bound

Просмотреть файл

@ -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