From 5adbf19400e3c23433024c04c87949b98cee9334 Mon Sep 17 00:00:00 2001 From: Sebastien Pouliot Date: Thu, 23 Aug 2018 09:47:05 -0400 Subject: [PATCH] [coreimage] Add missing API found by xtro --- src/coreimage.cs | 22 ++++++++++++++-------- tests/xtro-sharpie/common-CoreImage.ignore | 4 ++++ tests/xtro-sharpie/iOS-CoreImage.todo | 5 ----- tests/xtro-sharpie/macOS-CoreImage.todo | 5 ----- tests/xtro-sharpie/tvOS-CoreImage.todo | 5 ----- 5 files changed, 18 insertions(+), 23 deletions(-) delete mode 100644 tests/xtro-sharpie/iOS-CoreImage.todo delete mode 100644 tests/xtro-sharpie/macOS-CoreImage.todo delete mode 100644 tests/xtro-sharpie/tvOS-CoreImage.todo diff --git a/src/coreimage.cs b/src/coreimage.cs index 21af1c113d..02cb0700f4 100644 --- a/src/coreimage.cs +++ b/src/coreimage.cs @@ -202,7 +202,6 @@ namespace CoreImage { } [BaseType (typeof (NSObject))] - [DisableDefaultCtor] interface CIContext { #if !MONOMAC || XAMCORE_2_0 [iOS (9,0)][Mac (10,11)] @@ -238,11 +237,11 @@ namespace CoreImage { [Export ("initWithOptions:")] IntPtr Constructor ([NullAllowed] NSDictionary options); -#if !MONOMAC [Static] - [Wrap ("FromOptions ((NSDictionary) null)")] + [Export ("context")] CIContext Create (); +#if !MONOMAC [Static] [Export ("contextWithEAGLContext:")] CIContext FromContext (EAGLContext eaglContext); @@ -1736,11 +1735,6 @@ namespace CoreImage { [Field ("kCIImageAutoAdjustEnhance"), Internal] NSString AutoAdjustEnhanceKey { get; } -// [Availability (Deprecated = Platform.iOS_9_0)] -// [Availability (Deprecated = Platform.Mac_10_11)] -// [Export ("autoAdjustmentFilters"), Internal] -// NSArray _GetAutoAdjustmentFilters (); - [Export ("autoAdjustmentFiltersWithOptions:"), Internal] NSArray _GetAutoAdjustmentFilters ([NullAllowed] NSDictionary opts); @@ -1778,6 +1772,18 @@ namespace CoreImage { [Export ("imageByApplyingFilter:")] CIImage CreateByFiltering (string filterName); + [iOS (11, 0)] + [TV (11,0)] + [Mac (10,13)] + [Export ("imageBySamplingLinear")] + CIImage CreateBySamplingLinear (); + + [iOS (11, 0)] + [TV (11,0)] + [Mac (10,13)] + [Export ("imageBySamplingNearest")] + CIImage CreateBySamplingNearest (); + [iOS (8,0), Mac (10,10)] [Field ("kCIImageAutoAdjustCrop"), Internal] NSString AutoAdjustCrop { get; } diff --git a/tests/xtro-sharpie/common-CoreImage.ignore b/tests/xtro-sharpie/common-CoreImage.ignore index faacb2207f..098187f919 100644 --- a/tests/xtro-sharpie/common-CoreImage.ignore +++ b/tests/xtro-sharpie/common-CoreImage.ignore @@ -11,3 +11,7 @@ ## bound in informal protocol CIImageProvider !missing-selector! NSObject::provideImageData:bytesPerRow:origin::size::userInfo: not bound + +## at some point in time (iOS11/macOS 10.11) this API was removed/deprecated and we added a compatibility +## stub using 'autoAdjustmentFiltersWithOptions:'. Now it's back (in headers but can be ignored) +!missing-selector! CIImage::autoAdjustmentFilters not bound diff --git a/tests/xtro-sharpie/iOS-CoreImage.todo b/tests/xtro-sharpie/iOS-CoreImage.todo deleted file mode 100644 index 85f5198cdd..0000000000 --- a/tests/xtro-sharpie/iOS-CoreImage.todo +++ /dev/null @@ -1,5 +0,0 @@ -!missing-selector! +CIContext::context not bound -!missing-selector! CIContext::init not bound -!missing-selector! CIImage::autoAdjustmentFilters not bound -!missing-selector! CIImage::imageBySamplingLinear not bound -!missing-selector! CIImage::imageBySamplingNearest not bound diff --git a/tests/xtro-sharpie/macOS-CoreImage.todo b/tests/xtro-sharpie/macOS-CoreImage.todo deleted file mode 100644 index 85f5198cdd..0000000000 --- a/tests/xtro-sharpie/macOS-CoreImage.todo +++ /dev/null @@ -1,5 +0,0 @@ -!missing-selector! +CIContext::context not bound -!missing-selector! CIContext::init not bound -!missing-selector! CIImage::autoAdjustmentFilters not bound -!missing-selector! CIImage::imageBySamplingLinear not bound -!missing-selector! CIImage::imageBySamplingNearest not bound diff --git a/tests/xtro-sharpie/tvOS-CoreImage.todo b/tests/xtro-sharpie/tvOS-CoreImage.todo deleted file mode 100644 index 85f5198cdd..0000000000 --- a/tests/xtro-sharpie/tvOS-CoreImage.todo +++ /dev/null @@ -1,5 +0,0 @@ -!missing-selector! +CIContext::context not bound -!missing-selector! CIContext::init not bound -!missing-selector! CIImage::autoAdjustmentFilters not bound -!missing-selector! CIImage::imageBySamplingLinear not bound -!missing-selector! CIImage::imageBySamplingNearest not bound