[UIKit] Updated UIKit to xcode8-beta6 (#636)

Expected extrospection test failures:

- ios.unclassified:!missing-field! UIApplicationInvalidInterfaceOrientationException not bound

Generator bugs:

- HACK: We have a generator bug(?) that won't allow overloads (AmbiguousMatchException) in protocols

tvOS/iOS 9 Introspection Expected failures (UIKit Only):

- [FAIL] UIKit.UIContentSizeCategoryExtensions.UIContentSizeCategoryUnspecified
Generated enum extensions do not honor availability on NSString properties

API Diff, expected changes (verified and correct):

Type Changed: UIKit.UIContentSizeCategory

Modified fields:

	ExtraExtraExtraLarge = 6 7
	ExtraExtraLarge = 5 6
	ExtraLarge = 4 5
	ExtraSmall = 0 1
	Large = 3 4
	Medium = 2 3
	Small = 1 2

Added values:

	AccessibilityExtraExtraExtraLarge = 12,
	AccessibilityExtraExtraLarge = 11,
	AccessibilityExtraLarge = 10,
	AccessibilityLarge = 9,
	AccessibilityMedium = 8,
	Unspecified = 0,
This commit is contained in:
Alex Soto 2016-08-22 07:44:43 -05:00 коммит произвёл Sebastien Pouliot
Родитель 9f2df4b2f3
Коммит 16d5d68503
7 изменённых файлов: 620 добавлений и 126 удалений

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

@ -317,9 +317,10 @@ namespace XamCore.UIKit {
}
}
[iOS (10,0), TV (10,0)]
[DllImport (Constants.UIKitLibrary)]
static extern bool UIAccessibilityIsAssistiveTouchRunning ();
[iOS (10,0)]
[iOS (10,0), TV (10,0)]
public static bool IsAssistiveTouchRunning {
get {
return UIAccessibilityIsAssistiveTouchRunning ();
@ -327,6 +328,7 @@ namespace XamCore.UIKit {
}
#if !TVOS
[iOS (10,0)]
[DllImport (Constants.UIKitLibrary)]
static extern nuint UIAccessibilityHearingDevicePairedEar ();

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

@ -484,6 +484,7 @@ namespace XamCore.UIKit {
DecimalPad,
Twitter,
WebSearch,
[iOS (10, 0)]
AsciiCapableNumberPad
}
@ -1618,8 +1619,11 @@ namespace XamCore.UIKit {
[iOS (8,0)]
public enum UIBlurEffectStyle : nint {
ExtraLight, Light, Dark,
// Notice: value 3 is skipped
[TV (10,0), NoiOS, NoWatch]
ExtraDark,
[iOS (10,0)]
Regular = 4,
[iOS (10,0)]
Prominent = 5,
}
@ -1640,6 +1644,7 @@ namespace XamCore.UIKit {
[NoTV][NoWatch]
[iOS (8,0)]
[Deprecated (PlatformName.iOS, 10, 0, message:"Use UNAuthorizationOptions instead")]
[Native]
[Flags]
public enum UIUserNotificationType : nuint {
@ -1651,6 +1656,7 @@ namespace XamCore.UIKit {
[NoTV][NoWatch]
[iOS (8, 0)]
[Deprecated (PlatformName.iOS, 10, 0, message: "Use UNNotificationActionOptions instead")]
[Native]
public enum UIUserNotificationActivationMode : nuint {
Foreground,
@ -1659,6 +1665,7 @@ namespace XamCore.UIKit {
[NoTV][NoWatch]
[iOS (8, 0)]
[Deprecated (PlatformName.iOS, 10, 0, message: "Use UNNotificationCategory.Actions instead")]
[Native]
public enum UIUserNotificationActionContext : nuint {
Default,
@ -1774,6 +1781,7 @@ namespace XamCore.UIKit {
[NoTV][NoWatch]
[iOS (9,0)]
[Deprecated (PlatformName.iOS, 10, 0, message: "Use UNNotificationAction or UNTextInputNotificationAction instead")]
[Native]
public enum UIUserNotificationActionBehavior : nuint
{
@ -1940,4 +1948,23 @@ namespace XamCore.UIKit {
Previous,
Next
}
[iOS (10,0), TV (10,0), NoWatch]
[Native]
[Flags]
public enum UICloudSharingPermissionOptions : nuint {
Standard = 0,
AllowPublic = 1 << 0,
AllowPrivate = 1 << 1,
AllowReadOnly = 1 << 2,
AllowReadWrite = 1 << 3
}
[iOS (10,0), TV (10,0), NoWatch]
[Native]
public enum UITextFieldDidEndEditingReason : nint {
Committed,
[NoiOS]
Cancelled
}
}

Разница между файлами не показана из-за своего большого размера Загрузить разницу

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

@ -410,6 +410,125 @@ namespace Introspection {
return !TestRuntime.CheckXcodeVersion (8,0);
}
break;
case "CALayerDelegate": // UIView now conforms to CALayerDelegate in iOS 10
switch (type.Name) {
case "UISearchBar":
case "UISegmentedControl":
case "UITableView":
case "UITableViewCell":
case "UITextField":
case "UITextView":
case "UIToolbar":
case "UIView":
case "MKPinAnnotationView":
case "UIImageView":
case "PHLivePhotoView":
case "UIInputView":
case "UILabel":
case "UIActionSheet":
case "UIButton":
case "UICollectionView":
case "UINavigationBar":
case "UIControl":
case "UIPickerView":
case "UIPageControl":
case "MPVolumeView":
case "UIPopoverBackgroundView":
case "UIProgressView":
case "UIRefreshControl":
case "HKActivityRingView":
case "UIScrollView":
case "CAInterAppAudioSwitcherView":
case "CAInterAppAudioTransportView":
case "UISlider":
case "UIStackView":
case "SCNView":
case "UIStepper":
case "UISwitch":
case "UITabBar":
case "UITableViewHeaderFooterView":
case "GLKView":
case "SKView":
case "MKMapView":
case "MKAnnotationView":
case "PKAddPassButton":
case "PKPaymentButton":
case "UIActivityIndicatorView":
case "UICollectionReusableView":
case "UIWebView":
case "UICollectionViewCell":
case "UIWindow":
case "UIDatePicker":
case "UIVisualEffectView":
case "WKWebView":
case "ADBannerView":
return !TestRuntime.CheckXcodeVersion (8, 0);
}
break;
case "UIFocusItem": // UIView now conforms to UIFocusItem in iOS 10
switch (type.Name) {
case "UIButton":
case "UICollectionReusableView":
case "UICollectionView":
case "UICollectionViewCell":
case "MKAnnotationView":
case "UIControl":
case "MKMapView":
case "UISearchBar":
case "UISegmentedControl":
case "UITableView":
case "UITableViewCell":
case "UITextField":
case "UITextView":
case "MKPinAnnotationView":
case "UIView":
case "SKNode":
case "SKShapeNode":
case "SKVideoNode":
case "UIImageView":
case "UIInputView":
case "UILabel":
case "UINavigationBar":
case "UIPageControl":
case "UIPopoverBackgroundView":
case "UIProgressView":
case "SCNView":
case "UIScrollView":
case "SK3DNode":
case "MTKView":
case "SKAudioNode":
case "SKCameraNode":
case "SKCropNode":
case "SKEffectNode":
case "SKEmitterNode":
case "SKFieldNode":
case "SKLabelNode":
case "SKLightNode":
case "UIStackView":
case "UITabBar":
case "SKReferenceNode":
case "GLKView":
case "SKScene":
case "SKSpriteNode":
case "SKView":
case "UITableViewHeaderFooterView":
case "UIActivityIndicatorView":
case "UIVisualEffectView":
case "UIWindow":
return !TestRuntime.CheckXcodeVersion (8, 0);
}
break;
case "UIContentSizeCategoryAdjusting": // new conformations of UIContentSizeCategoryAdjusting in iOS 10
switch (type.Name) {
case "UITextField":
case "UITextView":
case "UILabel":
return !TestRuntime.CheckXcodeVersion (8, 0);
}
break;
}
return base.Skip (type, protocolName);
}

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

@ -161,3 +161,52 @@
!missing-selector! INRideDriver::initWithHandle:nameComponents:image:rating:phoneNumber: not bound
!missing-selector! INRideOption::identifier not bound
!missing-selector! INRideOption::setIdentifier: not bound
# UIKit
## HACK: those members are not *required* in ObjC but we made them
## abstract to have them inlined in UITextField and UITextView
## Even more confusing it that respondToSelecttor return NO on them
## even if it works in _real_ life (compare unit and introspection tests)
!incorrect-protocol-member! UITextInputTraits::autocapitalizationType is OPTIONAL and should NOT be abstract
!incorrect-protocol-member! UITextInputTraits::autocorrectionType is OPTIONAL and should NOT be abstract
!incorrect-protocol-member! UITextInputTraits::enablesReturnKeyAutomatically is OPTIONAL and should NOT be abstract
!incorrect-protocol-member! UITextInputTraits::isSecureTextEntry is OPTIONAL and should NOT be abstract
!incorrect-protocol-member! UITextInputTraits::keyboardAppearance is OPTIONAL and should NOT be abstract
!incorrect-protocol-member! UITextInputTraits::keyboardType is OPTIONAL and should NOT be abstract
!incorrect-protocol-member! UITextInputTraits::returnKeyType is OPTIONAL and should NOT be abstract
!incorrect-protocol-member! UITextInputTraits::spellCheckingType is OPTIONAL and should NOT be abstract
## it's technically optional but there's no point in adopting the protocol if you do not provide the implemenation
## We should review the above ^ if we want to keep this when XAMCORE_4_0 becomes a thing
!incorrect-protocol-member! UIInputViewAudioFeedback::enableInputClicksWhenVisible is OPTIONAL and should NOT be abstract
## Obsoleted selectors in very early versions of iOS (3.0) and removed in XAMCORE_3_0
!extra-protocol-member! unexpected selector UIImagePickerControllerDelegate::imagePickerController:didFinishPickingImage:editingInfo: found
!extra-protocol-member! unexpected selector UITableViewDelegate::tableView:accessoryTypeForRowWithIndexPath: found
## Special case from UIAccessibilityAction. We added it (completly) on UIResponser but magic tap is also available on app delegate according to docs
## See comments is uikit.cs for more info
!extra-protocol-member! unexpected selector UIApplicationDelegate::accessibilityPerformMagicTap found
## Protocol Inlined Maybe we want to change this in XAMCORE_4_0 since this predates our Category support
!missing-protocol! UIResponderStandardEditActions not bound
!missing-protocol-conformance! UIResponder should conform to UIResponderStandardEditActions
## @required members added to exixting interfaces (breaking change), fixed on XAMCORE_4_0
!incorrect-protocol-member! UIViewControllerContextTransitioning::pauseInteractiveTransition is REQUIRED and should be abstract
!incorrect-protocol-member! UIViewControllerTransitionCoordinator::notifyWhenInteractionChangesUsingBlock: is REQUIRED and should be abstract
!incorrect-protocol-member! UIViewControllerTransitionCoordinatorContext::isInterruptible is REQUIRED and should be abstract
!incorrect-protocol-member! UIFocusEnvironment::preferredFocusEnvironments is REQUIRED and should be abstract
!incorrect-protocol-member! UITextDocumentProxy::documentInputMode is REQUIRED and should be abstract
!incorrect-protocol-member! UILayoutSupport::bottomAnchor is REQUIRED and should be abstract
!incorrect-protocol-member! UILayoutSupport::heightAnchor is REQUIRED and should be abstract
!incorrect-protocol-member! UILayoutSupport::topAnchor is REQUIRED and should be abstract
## Not bound intentionally, Factory method FromDisplayP3 is available and adding this as a ctor would make the api usage ugly since signature matches colorWithRed:green:blue:alpha:
!missing-selector! UIColor::initWithDisplayP3Red:green:blue:alpha: not bound
## It seems that Apple added a setter but it seems it is a mistake on the newly added property radar:27929872
!missing-selector! UIViewController::setDisablesAutomaticKeyboardDismissal: not bound

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

@ -145,3 +145,21 @@
!incorrect-protocol-member! UITextInputTraits::keyboardType is OPTIONAL and should NOT be abstract
!incorrect-protocol-member! UITextInputTraits::returnKeyType is OPTIONAL and should NOT be abstract
!incorrect-protocol-member! UITextInputTraits::spellCheckingType is OPTIONAL and should NOT be abstract
## Headers says it is available but none of its members or implementor class are available
!missing-protocol! UIPreviewInteractionDelegate not bound
## Header says they are available in tvOS but intro says nope nope nope radar:27929711
## Undefined _OBJC_CLASS_$_UICloudSharingController
!missing-protocol! UICloudSharingControllerDelegate not bound
!missing-type! UICloudSharingController not bound
!missing-selector! UICloudSharingController::availablePermissions not bound
!missing-selector! UICloudSharingController::delegate not bound
!missing-selector! UICloudSharingController::initWithPreparationHandler: not bound
!missing-selector! UICloudSharingController::initWithShare:container: not bound
!missing-selector! UICloudSharingController::setAvailablePermissions: not bound
!missing-selector! UICloudSharingController::setDelegate: not bound
!missing-selector! UICloudSharingController::share not bound
## It seems that Apple added a setter but it seems it is a mistake on the newly added property radar:27929872
!missing-selector! UIViewController::setDisablesAutomaticKeyboardDismissal: not bound

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

@ -117,6 +117,9 @@
!missing-enum! NSTextAlignment not bound
!unknown-native-enum! UITextAlignment bound
## Not bound intentionally, Factory method FromDisplayP3 is available and adding this as a ctor would make the api usage ugly since signature matches colorWithRed:green:blue:alpha:
!missing-selector! UIColor::initWithDisplayP3Red:green:blue:alpha: not bound
# others