Skip to content

WebKit macOS xcode14.0 beta1

Israel Soto edited this page Jul 15, 2022 · 3 revisions

#WebKit.framework https://github.com/xamarin/xamarin-macios/pull/15525

diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKError.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKError.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKError.h	2022-02-23 10:59:01.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKError.h	2022-05-31 15:01:20.000000000 -0400
@@ -63,6 +63,9 @@
     WKErrorJavaScriptInvalidFrameTarget API_AVAILABLE(macos(11.0), ios(14.0)),
     WKErrorNavigationAppBoundDomain API_AVAILABLE(macos(11.0), ios(14.0)),
     WKErrorJavaScriptAppBoundDomain API_AVAILABLE(macos(11.0), ios(14.0)),
+    WKErrorDuplicateCredential API_AVAILABLE(macos(13.0), ios(16.0)),
+    WKErrorMalformedCredential API_AVAILABLE(macos(13.0), ios(16.0)),
+    WKErrorCredentialNotFound API_AVAILABLE(macos(13.0), ios(16.0)),
 } API_AVAILABLE(macos(10.10), ios(8.0));
 
 NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKPreferences.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKPreferences.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKPreferences.h	2022-02-23 10:57:18.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKPreferences.h	2022-05-31 14:48:31.000000000 -0400
@@ -68,12 +68,12 @@
  to improve compatibility with certain known websites. You can disable site-specific quirks
  to help test your website without these workarounds. Enabled by default.
  */
-@property (nonatomic, getter=isSiteSpecificQuirksModeEnabled) BOOL siteSpecificQuirksModeEnabled API_AVAILABLE(macos(12.0), ios(15.0));
+@property (nonatomic, getter=isSiteSpecificQuirksModeEnabled) BOOL siteSpecificQuirksModeEnabled API_AVAILABLE(macos(13.0), ios(16.0));
 
 /*! @abstract A Boolean value indicating whether Fullscreen API is enabled.
  @discussion The default value is NO. We can set it to YES to enable support for the fullscreen API.
  */
-@property (nonatomic, getter=isElementFullscreenEnabled) BOOL elementFullscreenEnabled API_AVAILABLE(macos(12.0), ios(15.0));
+@property (nonatomic, getter=isElementFullscreenEnabled) BOOL elementFullscreenEnabled API_AVAILABLE(macos(13.0), ios(16.0));
 
 @end
 
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKWebView.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKWebView.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKWebView.h	2022-02-23 10:59:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKWebView.h	2022-05-31 15:01:19.000000000 -0400
@@ -33,6 +33,10 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+#if TARGET_OS_IOS
+@class UIFindInteraction;
+#endif
+
 @class WKBackForwardList;
 @class WKBackForwardListItem;
 @class WKContentWorld;
@@ -79,7 +83,7 @@
     WKFullscreenStateEnteringFullscreen,
     WKFullscreenStateInFullscreen,
     WKFullscreenStateExitingFullscreen,
-} NS_SWIFT_NAME(WKWebView.FullscreenState) API_AVAILABLE(macos(12.0), ios(15.0));
+} NS_SWIFT_NAME(WKWebView.FullscreenState) API_AVAILABLE(macos(13.0), ios(16.0));
 
 /*! @abstract A copy of the configuration with which the web view was
  initialized. */
@@ -406,7 +410,7 @@
 
 /*! @abstract Set microphone capture state of a WKWebView.
  @param state state to apply for capture.
- @param completionHandler A block to invoke after the camera state has been changed.
+ @param completionHandler A block to invoke after the microphone state has been changed.
  @discussion
  If value is WKMediaCaptureStateNone, this will stop any microphone capture.
  If value is WKMediaCaptureStateMuted, any active microphone capture will become muted.
@@ -619,7 +623,40 @@
  its native UI components when the fullscreen state changes. The application should observe the fullscreenState
  property of WKWebView in order to receive notifications regarding the fullscreen state change.
  */
-@property (nonatomic, readonly) WKFullscreenState fullscreenState API_AVAILABLE(macos(12.0), ios(15.0));
+@property (nonatomic, readonly) WKFullscreenState fullscreenState API_AVAILABLE(macos(13.0), ios(16.0));
+
+/*! @abstract Insets from the @link frame @/link that represent the smallest and largest possible size of the
+ visual area of the @link WKWebView @/link based on the state of the surrounding UI.
+ @discussion For apps with size-changing UI around the @link WKWebView @/link, specify minimumViewportInset and
+ maximumViewportInset to supply webpages with the appropriate value for CSS "large viewport" `lv*`
+ units and CSS "small viewport" `sv*` units respectively @link https://www.w3.org/TR/css-values-4/#viewport-variants @/link.
+ Set minimumViewportInset to the smallest inset a webpage may experience in your app's maximally
+ collapsed UI configuration. Set maximumViewportInset to the largest inset a webpage may experience
+ in your app's maximally expanded UI configuration. For apps where the maximally collapsed UI
+ configuration is such that the @link WKWebView @/link is not surrounded by anything, there is no need to specify
+ minimumViewportInset. For apps with fixed-sized UI surrounding the @link WKWebView @/link, there is no need to
+ specify either value. Both values must be either zero or positive, and maximumViewportInset must be
+ larger than minimumViewportInset.
+ */
+#if TARGET_OS_IPHONE
+@property (nonatomic, readonly) UIEdgeInsets minimumViewportInset API_AVAILABLE(ios(16.0));
+@property (nonatomic, readonly) UIEdgeInsets maximumViewportInset API_AVAILABLE(ios(16.0));
+- (void)setMinimumViewportInset:(UIEdgeInsets)minimumViewportInset maximumViewportInset:(UIEdgeInsets)maximumViewportInset API_AVAILABLE(ios(16.0));
+#else
+@property (nonatomic, readonly) NSEdgeInsets minimumViewportInset API_AVAILABLE(macos(13.0));
+@property (nonatomic, readonly) NSEdgeInsets maximumViewportInset API_AVAILABLE(macos(13.0));
+- (void)setMinimumViewportInset:(NSEdgeInsets)minimumViewportInset maximumViewportInset:(NSEdgeInsets)maximumViewportInset API_AVAILABLE(macos(13.0));
+#endif
+
+#if TARGET_OS_IOS
+
+/*! @abstract Enables the web view's built-in find interaction. */
+@property (nonatomic, readwrite, getter=isFindInteractionEnabled) BOOL findInteractionEnabled API_AVAILABLE(ios(16.0));
+
+/*! @abstract If  @link findInteractionEnabled @/link is set to true, returns this web view's built-in find interaction. Otherwise, nil. */
+@property (nonatomic, nullable, readonly) UIFindInteraction *findInteraction API_AVAILABLE(ios(16.0));
+
+#endif
 
 @end
 
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebKitAvailability.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebKitAvailability.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebKitAvailability.h	2022-02-23 10:57:23.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebKitAvailability.h	2022-05-31 15:01:22.000000000 -0400
@@ -28,7 +28,6 @@
 
 #import <TargetConditionals.h>
 
-#if !TARGET_OS_IPHONE
 #include <Foundation/NSObjCRuntime.h>
 
 #define WEBKIT_AVAILABLE_MAC(introduced) NS_AVAILABLE_MAC(introduced)
@@ -49,15 +48,4 @@
 
 #endif /* !defined(BUILDING_WEBKIT) && !defined(DISABLE_LEGACY_WEBKIT_DEPRECATIONS) */
 
-#else
-
-#define WEBKIT_AVAILABLE_MAC(introduced)
-#define WEBKIT_CLASS_AVAILABLE_MAC(introduced)
-#define WEBKIT_ENUM_AVAILABLE_MAC(introduced)
-#define WEBKIT_DEPRECATED_MAC(introduced, deprecated, ...)
-#define WEBKIT_CLASS_DEPRECATED_MAC(introduced, deprecated, ...)
-#define WEBKIT_ENUM_DEPRECATED_MAC(introduced, deprecated, ...)
-
-#endif /* !TARGET_OS_IPHONE */
-
 #endif /* WebKit_WebKitAvailability_h */
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebKitLegacy.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebKitLegacy.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebKitLegacy.h	2022-02-19 01:59:34.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebKitLegacy.h	2022-05-28 23:58:44.000000000 -0400
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebPreferences.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebPreferences.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebPreferences.h	2022-02-23 10:57:15.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/WebKit.framework/Headers/WebPreferences.h	2022-05-31 15:01:14.000000000 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2003, 2004, 2005, 2012 Apple Inc.  All rights reserved.
+ * Copyright (C) 2003-2022 Apple Inc.  All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -168,8 +168,9 @@
 
 /*!
     @property javaEnabled
+    @discussion Deprecated function that does nothing and always returns false.
 */
-@property (nonatomic, getter=isJavaEnabled) BOOL javaEnabled;
+@property (nonatomic, getter=isJavaEnabled) BOOL javaEnabled WEBKIT_DEPRECATED_MAC(10_3, 10_15);
 
 /*!
     @property javaScriptEnabled
Clone this wiki locally