Граф коммитов

3331 Коммитов

Автор SHA1 Сообщение Дата
Sebastien Pouliot 8bb621cd93 [coreimage] Add new headers API up to beta 6 (#2601)
Filters are not complete (ref: #57350)
https://bugzilla.xamarin.com/show_bug.cgi?id=57350

* Some new constants are not yet documented (type is known), so they
  are commented / ignored
  https://bugzilla.xamarin.com/show_bug.cgi?id=59296

* Filled bug for [Wrap] inside [Category] so strong dictionary helpers
  can be re-enabled later
  https://bugzilla.xamarin.com/show_bug.cgi?id=59294
2017-09-07 14:52:13 -04:00
Rolf Bjarne Kvinge 369a5de6de [Intents] Add convenience ctor overload and call correct base ctor in manual ctor. (#2613)
Add a convenience constructor overload in
INGetUserCurrentRestaurantReservationBookingsIntent that uses nint instead of
NSNumber, since logically "number of results" will always be some sort of
integer.

Also call the correct base constructor in INSpeakableString's custom
constructor (same as any other generated constructor). Otherwise we end up
doing something like this: [[[INSpeakableString alloc] init] initWith ...],
i.e. calling two different init methods.
2017-09-07 14:51:44 -04:00
Vincent Dondain e1873169f2 [uikit] Add all UISpringLoadedInteractionSupporting (#2616)
Types do not conform to the protocol but protocol methods work on those types (see monotouch-test).
Fixed introspection tests accordingly and tested the selectors in monotouch-test.
2017-09-07 14:32:48 -04:00
Rolf Bjarne Kvinge 00abb2486b [AppKit] Rename NSBezierPath.AppendBezierPathWithCGGlyph to match its sibling methods. (#2605)
NSBezierPath contains a lot of 'AppendPathWithXXX' methods, that all map to
'appendBezierPathXXX' selectors.

So rename AppendBezierPathWithCGGlyph accordingly, to make it more similar to
the other methods in the same type.
2017-09-07 14:08:01 -04:00
Miguel de Icaza 47a528f41a Xcode9 scenekit (#2512)
* [SceneKit] basic work

* Added key

* [xcode9] SCNCameraController

* [xcode9] SCNCamera updates

* [xcode9] SCNMaterial

* [xcode9] SCNGeometryTessellator, SCNCameraControlConfiguration, SCNView, small bits

* Add trailing commas to last enum value

* Remove whitespace noise

* [scenekit] Update deprecated attributes messages

* Addresses some of Rolf's feedback

* Drop the WeakDelegate in SCNCameraController

* Rename method to Render, remove ctor from class that can not be constructed in Palygrounds, add typo exception
2017-09-07 19:51:09 +02:00
Manuel de la Pena 809978aa35 [mtouch] Do state why we did not copy the aot (msym) files. (#2594) 2017-09-07 13:14:53 -04:00
Vincent Dondain e096d6aab4 [uikit] Update for Xcode 9 - Part 6 (#2602)
NSAttributedString.h
NSFileProviderExtension.h
NSLayoutAnchor.h
UIAccessibility.h
UIAccessibilityAdditions.h
UIAccessibilityContainer.h
UIAccessibilityContentSizeCategoryImageAdjusting.h
UIAccessibilityCustomRotor.h
UIAccessibilityLocationDescriptor.h
UITabBar.h
UINavigationBar.h
UIScreen.h
2017-09-07 10:54:58 -04:00
Rolf Bjarne Kvinge aa6004cab9 Support overloading Objective-C methods based on static/instance. (#2607)
Two Objective-C methods can be named identically as long as one is static and
the other instance.

We must support this since Apple did just this (in the NSItemProviderReading /
NSItemProviderWriting protocols).

We solve it by prepending a '+' or '-' to the selector when hashing it (to
determine selector uniqueness, and to look the method up again at runtime).
2017-09-07 13:05:44 +02:00
Rolf Bjarne Kvinge ac2203bfbc [CoreML] Improve API. (#2592)
* [CoreML] Improve API.

* The indices, shape and stride properties for MLMultiArray and
  MLMultiArrayConstraint can logically only be arrays of integers, so type
  them as such. This means adding overloads for MLMultiArray's constructors,
  GetObject and SetObject methods, and the indexers that takes nint[] arrays
  instead of NSNumber[] arrays.

* Change MLFeatureValue's static factory methods to be a method ('Create')
  instead of a preposition, and call all the different factory methods the
  same, since they can be overloaded nicely.

* [tests][monotouch-test] Add version check to MLMultiArrayTest and make sure the arrays we create are big enough for the data we put in them.

* [tests][monotouch-test] MLMultiArray's elements aren't zero-initialized, so don't assume that in the tests.
2017-09-07 11:30:55 +02:00
Sebastien Pouliot 51e1b4d655 Bump mono to head of 2017-06 prior to branching 15.5 (#2612) 2017-09-07 09:56:08 +02:00
Rolf Bjarne Kvinge 80d51dcd43 [UIKit] De-model UIDataSourceTranslating. (#2603)
It's not clear from neither the documentation nor the headers how this
protocol is supposed to be used, and since it doesn't correspond to the
delegate pattern, remove the [Model] attribute for now.

We can always add it back later.
2017-09-07 07:26:41 +02:00
Rolf Bjarne Kvinge 0f42b51177 [ImageIO] Fix API to not duplicate the instance in instance methods. (#2609)
An instance method does not need to take the instance as a parameter, so
remove the first (instance) parameter for
CGImageDestination.AddAuxiliaryDataInfo and
CGImageSource.CopyAuxiliaryDataInfo.

An alternative solution would be to make the methods static, but I like the
instance API better.
2017-09-07 07:21:36 +02:00
Rolf Bjarne Kvinge b6ef4b199e [Foundation] Remove 'Key' suffix from some fields. (#2606)
Of the 168 fields in NSMetadataItem, only these 5 hadn't removed the 'Key'
suffix.

So make them all equivalent by removing the 'Key' suffix from these 5 fields.
2017-09-07 07:20:35 +02:00
Rolf Bjarne Kvinge d440ebc1cd [ARKit] Rename a few method to make them nicer. (#2604)
* DisplayTransform -> GetDisplayTransform since methods should have verbs.

* SessionWasInterrupted -> WasInterrupted and SessionInterruptionEnded ->
  InterruptionEnded since these names match better with the other names
  (CameraDidChangeTrackingState / DidFail / DidOutputAudioSampleBuffer: none
  are prefixed with 'Session'). Additionally, the type is a Model (for the
  delegate pattern), which means all methods are more-or-less event-like, and
  the first argument is always the same (the protocol itself), which is
  another indicator the methods should be named similarly.
2017-09-06 16:32:43 +02:00
Vincent Dondain 6802ba7e24 [xtro] Fix EnumCheck (#2600) 2017-09-05 22:38:02 -04:00
Sebastien Pouliot 9d9ea58ae1 [iosurface] Enable for tvOS and XM classic (to avoid multiple defines around consumer API) (#2597) 2017-09-05 16:57:28 -04:00
Vincent Dondain fb476034d1 [xtro] Fix StartWorkingDirectory to enable debugging (#2598) 2017-09-05 15:56:13 -04:00
Alex Soto 82afd3e96d [Intents] Adds missing API found by xtro, fixes Bug 59183 (#2596)
https://bugzilla.xamarin.com/show_bug.cgi?id=59183

Fixes

!missing-selector! +INNotebookItemTypeResolutionResult::disambiguationWithValuesToDisambiguate: not bound
!missing-selector! +INCarSeatResolutionResult::confirmationRequiredWithCarSeatToConfirm: not bound
!missing-selector! +INCarSeatResolutionResult::successWithResolvedCarSeat: not bound
!incorrect-protocol-member! INUIHostedViewControlling::configureWithInteraction:context:completion: is OPTIONAL and should NOT be abstract
2017-09-05 14:01:44 -05:00
Ludovic Henry 8178ecc5ea Bump mono to 2017-06 (#2595) 2017-09-05 14:48:09 -04:00
Rolf Bjarne Kvinge cc0ab7a979 [CoreMedia] Fix leak in CMAttachmentBearer.GetAttachments. (#2593)
The caller owns the return value from CMCopyDictionaryOfAttachments, so tell
Runtime.GetNSObject that.
2017-09-05 17:53:48 +02:00
Rolf Bjarne Kvinge 15808c4693 Merge pull request #2571 from rolfbjarne/xcode9-matrix
Add Simd matrix types and use them to bind native Simd matrices. Fixes #58599
2017-09-05 15:33:02 +02:00
Miguel de Icaza c453776ac0 [Xcode9] Add IOSurface bindings (#2363)
* This framework was a private framework before iOS 11.

This framework was a private framework before iOS 11, yet the headers claim
many API were introduced in iOS 10.

So take account of this difference by using the private framework location in
iOS 10.3 or earlier.

Testing these API from Xcode works fine when run on an iOS 10.3 device, and
I've confirmed the IOSurface framework is loaded from the private frameworks
path on older devices (and when built using Xcode 9 and linked with the public
framework path).

* Disable code to make IOSurface work on iOS 10.

Disable the code to make IOSurface work on iOS 10, since it may be rejected by
the App Store.

This also means adjusting the availability attributes, so that the
introspection tests pass (and to document that technically these API won't
work when used with Xamarin.iOS in iOS 10).

I've filed bug #[59201][1] to keep track of this, maybe we can re-enable this later.

[1]: https://bugzilla.xamarin.com/show_bug.cgi?id=59201
2017-09-05 08:57:58 -04:00
Manuel de la Pena 03711e698d [AVFoundation] Updated bindings for xcode9. (#2272) 2017-09-05 08:46:00 -04:00
Timothy Risi c628320cda [Metal] New bindings from Xcode 9 betas (#2457) 2017-09-05 08:45:03 -04:00
Alex Soto 483561c38f [Intents] Fix breaking changes in Intents added in Xcode 9 Bindings (#2590)
Apple added more protocol conformances to INRidesharingDomainHandling and
INPaymentsDomainHandling protocols in Xcode 9, I introduced these breaking
changes back when I did intents binding so fixing them :)
2017-09-05 07:37:34 -05:00
Alex Soto 17a7b1c386 [Intents] Confirm* interface methods should be bound as Confirm, Fixes Bug 59164 (#2591)
* [Intents] Confirm* interface methods should probably be bound as Confirm, Fixes Bug 59164

https://bugzilla.xamarin.com/show_bug.cgi?id=59164

All Confirm* methods from *IntentHandling interfaces should be named
just `Confirm` to avoid confusion because most of them do not directly
confirm as an acion, but instead they **ask** for confirmation also we
would follow swift's naming by doing this.

* [Intents] XAMCORE_4_0 all Confirm* methods from *IntentHandling

Turns any Confirm* into just Confirm inside a XAMCORE_4_0 block,
2017-09-05 07:32:52 -05:00
Sebastien Pouliot a85324b01c [intents] Fix some (partial) xtro issues and #59156 (#2585)
reference
https://bugzilla.xamarin.com/show_bug.cgi?id=59156

Remaining issues are filled in https://bugzilla.xamarin.com/show_bug.cgi?id=59183

!missing-selector! +INCarSeatResolutionResult::confirmationRequiredWithCarSeatToConfirm: not bound
!missing-selector! +INCarSeatResolutionResult::successWithResolvedCarSeat: not bound
!missing-selector! +INNotebookItemTypeResolutionResult::disambiguationWithValuesToDisambiguate: not bound
2017-09-05 08:08:15 -04:00
Rolf Bjarne Kvinge 977a976959 [SpriteKit] SKTransformNode is new in Xcode 9 so no need to keep the broken (and obsolete) non-simd version of RotationMatrix. 2017-09-04 09:13:53 +02:00
Rolf Bjarne Kvinge 540044d9e9 [xharness] Add a missing IsServerMode check to generate correct html. (#2581) 2017-09-01 15:24:45 +02:00
Rolf Bjarne Kvinge 45c37d2905 [xtro] Reword some of the Simd diagnostic messages according to review. 2017-09-01 15:17:51 +02:00
Rolf Bjarne Kvinge 0cf7de80e2 [introspection] Make sure '[FAIL]' is printed before every failure. (#2578)
This makes xharness able to list the failures in the inline summary.
2017-09-01 14:58:45 +02:00
Sebastien Pouliot 4bc13b0ec5 [spritekit] Audit fixes (xtro) (#2577)
1.	SKVideoNode is now, partially, available on watchOS and does
	not require the extra, manual code to swicth selectors depending
	on the OS version being run.

!missing-type! SKVideoNode not bound
!missing-selector! SKVideoNode::anchorPoint not bound
!missing-selector! SKVideoNode::initWithCoder: not bound
!missing-selector! SKVideoNode::initWithFileNamed: not bound
!missing-selector! SKVideoNode::initWithURL: not bound
!missing-selector! SKVideoNode::setAnchorPoint: not bound
!missing-selector! SKVideoNode::setSize: not bound
!missing-selector! SKVideoNode::size not bound
!missing-selector! +SKVideoNode::videoNodeWithFileNamed: not bound
!missing-selector! +SKVideoNode::videoNodeWithURL: not bound

2.	SKNodeFocusBehavior is exposed needlessly on watchOS because
	SpriteKit/Enums.cs was not processed by the generator, so [NoWatch]
	did not matter.

!unknown-native-enum! SKNodeFocusBehavior bound

	It's also visible on macOS but nothing uses it (so we do not expose
	it needlessly)

!missing-enum! SKNodeFocusBehavior not bound

3.	Add missing designated initializer on default `init`

!missing-designated-initializer! SKAttributeValue::init is missing an [DesignatedInitializer] attribute
!missing-designated-initializer! SKNode::init is missing an [DesignatedInitializer] attribute

4.	Remove inconsistency for SKNode subclasses wrt XAMCORE_4_0

The trio attributeValues, setAttributeValues and setValue:forAttributeNamed:
that was moved from SKNode (deprecated) into its subclasses. This was done
using XAMCORE_4_0 but not on every subclasses. This adds them everywhere to
be consistent (only SKNode versions are not defined in XAMCORE_4_0)

!missing-selector! SKEffectNode::attributeValues not bound
!missing-selector! SKEffectNode::setAttributeValues: not bound
!missing-selector! SKEffectNode::setValue:forAttributeNamed: not bound
!missing-selector! SKEffectNode::valueForAttributeNamed: not bound
!missing-selector! SKEmitterNode::attributeValues not bound
!missing-selector! SKEmitterNode::setAttributeValues: not bound
!missing-selector! SKEmitterNode::setValue:forAttributeNamed: not bound
!missing-selector! SKEmitterNode::valueForAttributeNamed: not bound
!missing-selector! SKSpriteNode::attributeValues not bound
!missing-selector! SKSpriteNode::setAttributeValues: not bound
!missing-selector! SKSpriteNode::setValue:forAttributeNamed: not bound
!missing-selector! SKSpriteNode::valueForAttributeNamed: not bound
2017-09-01 08:20:28 -04:00
Sebastien Pouliot 8affb8219d Bump version for preview #8 (#2576) 2017-09-01 08:19:45 -04:00
Rolf Bjarne Kvinge 371827e7dc [monotouch-test] Exclude code that requires the binding project from xammac tests.
Exclude code that requires the test binding project from xammac tests because
there's currently no XM version of the test binding project.

Fixes this:

    tests/monotouch-test/SpriteKit/UniformTest.cs(20,7): error CS0246: The type or namespace name 'Bindings' could not be found (are you missing a using directive or an assembly reference?)
    tests/monotouch-test/ModelIO/MDLMaterialProperty.cs(37,7): error CS0246: The type or namespace name 'Bindings' could not be found (are you missing a using directive or an assembly reference?)
    tests/monotouch-test/ModelIO/MDLTransform.cs(34,7): error CS0246: The type or namespace name 'Bindings' could not be found (are you missing a using directive or an assembly reference?)
2017-09-01 12:48:49 +02:00
Rolf Bjarne Kvinge 6f2549fae6 [monotouch-tests] Include more custom asserts for watchOS to make the build work.
Fixes this:

    Simd/MatrixFloat4x4Test.cs(28,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual'
    Simd/MatrixFloat4x4Test.cs(29,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual'
    Simd/MatrixFloat4x4Test.cs(37,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual'
    Simd/MatrixFloat4x4Test.cs(48,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual'
    [...]
2017-09-01 11:34:38 +02:00
Rolf Bjarne Kvinge b97ea9f5d0 [introspection] Don't check native signatures on obsolete members, and ignore the right simd matrix types.
Fixes this introspection/Mac problem:

    ***** ApiSignatureTest.NativeSignatures
    Selector: uniformWithName:matrixFloat2x2: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded
    Selector: uniformWithName:matrixFloat3x3: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded
    Selector: uniformWithName:matrixFloat4x4: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded
    Selector: setMatrixFloat2x2Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded
    Selector: setMatrixFloat3x3Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded
    Selector: setMatrixFloat4x4Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded
    Selector: initWithName:matrixFloat2x2: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded
    Selector: initWithName:matrixFloat3x3: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded
    Selector: initWithName:matrixFloat4x4: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded
2017-09-01 11:15:44 +02:00
Rolf Bjarne Kvinge b80cfee33e [tests] Since libtest.a need ModelIO now, the corresponding LinkWith attributes need to state that too. 2017-09-01 11:14:46 +02:00
Rolf Bjarne Kvinge d562435005 [tests] Make sure test symbols don't clash between different test libraries.
Fixes this build problem for framework-test:

	clang: error: linker command failed with exit code 1 (use -v to see invocation)
	MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_mdltransform_get_rotation_matrix'.
	MTOUCH: error MT5213: Duplicate symbol in: /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/framework-test/obj/iPhoneSimulator/Debug-unified/mtouch-cache/XStaticObjectTest.framework/XStaticObjectTest (Location related to previous error)
	MTOUCH: error MT5213: Duplicate symbol in: /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/framework-test/obj/iPhoneSimulator/Debug-unified/mtouch-cache/XStaticArTest.framework/XStaticArTest(libtest-ar.x86_64.o) (Location related to previous error)
	MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_mdltransformcomponent_get_local_transform'.
	MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_mdltransform_create_global_transform'.
	MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_get_matrix_float4x4'.
	MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_get_matrix_float3x3'.
	MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_get_matrix_float2x2'.
	MTOUCH: error MT5209: Native linking error: 6 duplicate symbols for architecture x86_64
	MTOUCH: error MT5202: Native linking failed. Please review the build log.
2017-09-01 11:11:06 +02:00
Rolf Bjarne Kvinge 96ad068015 [xtro] Reword some of the Simd diagnostic messages according to review. 2017-09-01 09:37:58 +02:00
Sebastien Pouliot 01712b2312 [watchkit] Add missing designated initializers (#2574)
references (xtro)
!missing-designated-initializer! WKInterfaceController::init is missing an [DesignatedInitializer] attribute
!missing-designated-initializer! WKUserNotificationInterfaceController::init is missing an [DesignatedInitializer] attribute
2017-09-01 09:14:54 +02:00
Vincent Dondain 0697797fdf [uikit] Fix enums availability attributes (#2575)
- Fixes bug #59132: [uikit] Extra types in watchOS
(https://bugzilla.xamarin.com/show_bug.cgi?id=59132)
2017-08-31 15:33:31 -04:00
Rolf Bjarne Kvinge f90655bd05 [introspection] Improve error message when failing to find a native library. (#2573) 2017-08-31 13:35:47 -04:00
Sebastien Pouliot d3fced628f [wkwebkit] Fix (native) protocol names (#2572)
Also ignore xtro's WKSnapshotConfiguration since it's an Apple bug 34185961

reference (xtro)
!missing-protocol! WKURLSchemeHandler not bound
!missing-protocol! WKURLSchemeTask not bound
!unknown-protocol! WKUrlSchemeHandler bound
!unknown-protocol! WKUrlSchemeTask bound

!unknown-type! WKSnapshotConfiguration bound
2017-08-31 13:35:25 -04:00
Rolf Bjarne Kvinge 11b0eb96dc [xtro] Remove unnecessary ignores.
The implementation changed, and these stayed accidentally.
2017-08-31 14:51:45 +02:00
Rolf Bjarne Kvinge 8ec1bafdd8 [xtro] Don't report missing [MarshalDirective] for obsolete methods. 2017-08-31 14:50:54 +02:00
Rolf Bjarne Kvinge c2c78cee08 [SpriteKit] Use the new Simd-compatible matrix types, and deprecate the old API. 2017-08-31 14:03:13 +02:00
Rolf Bjarne Kvinge 5303155836 [GameplayKit] Use the new Simd-compatible matrix types, and deprecate the old API. 2017-08-31 14:03:12 +02:00
Rolf Bjarne Kvinge 788cd94355 [ModelIO] Use the new Simd-compatible matrix types, and deprecate the old API. 2017-08-31 14:03:12 +02:00
Rolf Bjarne Kvinge f6a01bbc27 [Vision] Use the new Simd matrix types. 2017-08-31 14:03:11 +02:00
Rolf Bjarne Kvinge 6e96f1d56b [ARKit] Use the new Simd matrix types. 2017-08-31 14:03:11 +02:00