Title: [290619] trunk/Source/WebCore
Revision
290619
Author
pvol...@apple.com
Date
2022-02-28 15:48:00 -0800 (Mon, 28 Feb 2022)

Log Message

[iOS] Weak link AVPictureInPictureController
https://bugs.webkit.org/show_bug.cgi?id=237227
<rdar://76011860>

Reviewed by Brent Fulgham.

Weak linking instead of soft linking should be a small performance improvement.

* Configurations/WebCore.xcconfig:
* platform/ios/VideoFullscreenInterfaceAVKit.mm:
(WebCore::supportsPictureInPicture):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (290618 => 290619)


--- trunk/Source/WebCore/ChangeLog	2022-02-28 23:26:38 UTC (rev 290618)
+++ trunk/Source/WebCore/ChangeLog	2022-02-28 23:48:00 UTC (rev 290619)
@@ -1,5 +1,19 @@
 2022-02-28  Per Arne Vollan  <pvol...@apple.com>
 
+        [iOS] Weak link AVPictureInPictureController
+        https://bugs.webkit.org/show_bug.cgi?id=237227
+        <rdar://76011860>
+
+        Reviewed by Brent Fulgham.
+
+        Weak linking instead of soft linking should be a small performance improvement.
+
+        * Configurations/WebCore.xcconfig:
+        * platform/ios/VideoFullscreenInterfaceAVKit.mm:
+        (WebCore::supportsPictureInPicture):
+
+2022-02-28  Per Arne Vollan  <pvol...@apple.com>
+
         Remove release assert when UI process is blocking IOSurface IOKit access
         https://bugs.webkit.org/show_bug.cgi?id=237278
 

Modified: trunk/Source/WebCore/Configurations/WebCore.xcconfig (290618 => 290619)


--- trunk/Source/WebCore/Configurations/WebCore.xcconfig	2022-02-28 23:26:38 UTC (rev 290618)
+++ trunk/Source/WebCore/Configurations/WebCore.xcconfig	2022-02-28 23:48:00 UTC (rev 290619)
@@ -144,8 +144,12 @@
 WK_SCENEKIT_LDFLAGS = $(WK_SCENEKIT_LDFLAGS_$(WK_PLATFORM_NAME));
 WK_SCENEKIT_LDFLAGS_macosx = -weak_framework SceneKit;
 
+WK_AVKIT_LDFLAGS = $(WK_AVKIT_LDFLAGS_$(WK_PLATFORM_NAME));
+WK_AVKIT_LDFLAGS_iphoneos = -weak_framework AVKit;
+WK_AVKIT_LDFLAGS_iphonesimulator =  -weak_framework AVKit;
+
 // FIXME: Reduce the number of allowable_clients <rdar://problem/31823969>
-OTHER_LDFLAGS = $(inherited) $(WK_RELOCATABLE_FRAMEWORK_LDFLAGS) -lsqlite3 -lobjc -allowable_client WebCoreTestSupport -allowable_client WebKitLegacy -force_load $(BUILT_PRODUCTS_DIR)/libPAL.a -framework CFNetwork -framework CoreAudio -framework CoreGraphics -framework CoreText -framework Foundation -framework IOSurface -framework ImageIO -framework Metal $(OTHER_LDFLAGS_PLATFORM_$(WK_COCOA_TOUCH)) $(OTHER_LDFLAGS_PLATFORM_$(WK_PLATFORM_NAME)) $(WK_ANGLE_LDFLAGS) $(WK_WEBGPU_LDFLAGS) $(WK_APPKIT_LDFLAGS) $(WK_APPSUPPORT_LDFLAGS) $(WK_AUDIO_UNIT_LDFLAGS) $(WK_CARBON_LDFLAGS) $(WK_CORE_UI_LDFLAGS) $(WK_DATA_DETECTORS_CORE_LDFLAGS) $(WK_GRAPHICS_SERVICES_LDFLAGS) $(WK_IOSURFACE_ACCELERATOR_LDFLAGS) $(WK_LIBWEBRTC_LDFLAGS) $(WK_MOBILE_CORE_SERVICES_LDFLAGS) $(WK_MOBILE_GESTALT_LDFLAGS) $(WK_NETWORK_EXTENSION_LD_FLAGS) $(WK_SYSTEM_CONFIGURATION_LDFLAGS) $(WK_CORE_IMAGE_LDFLAGS) $(WK_URL_FORMATTING_LDFLAGS) $(WK_SCENEKIT_LDFLAGS) $(SOURCE_VERSION_LDFLAGS);
+OTHER_LDFLAGS = $(inherited) $(WK_RELOCATABLE_FRAMEWORK_LDFLAGS) -lsqlite3 -lobjc -allowable_client WebCoreTestSupport -allowable_client WebKitLegacy -force_load $(BUILT_PRODUCTS_DIR)/libPAL.a -framework CFNetwork -framework CoreAudio -framework CoreGraphics -framework CoreText -framework Foundation -framework IOSurface -framework ImageIO -framework Metal $(OTHER_LDFLAGS_PLATFORM_$(WK_COCOA_TOUCH)) $(OTHER_LDFLAGS_PLATFORM_$(WK_PLATFORM_NAME)) $(WK_ANGLE_LDFLAGS) $(WK_WEBGPU_LDFLAGS) $(WK_APPKIT_LDFLAGS) $(WK_APPSUPPORT_LDFLAGS) $(WK_AUDIO_UNIT_LDFLAGS) $(WK_CARBON_LDFLAGS) $(WK_CORE_UI_LDFLAGS) $(WK_DATA_DETECTORS_CORE_LDFLAGS) $(WK_GRAPHICS_SERVICES_LDFLAGS) $(WK_IOSURFACE_ACCELERATOR_LDFLAGS) $(WK_LIBWEBRTC_LDFLAGS) $(WK_MOBILE_CORE_SERVICES_LDFLAGS) $(WK_MOBILE_GESTALT_LDFLAGS) $(WK_NETWORK_EXTENSION_LD_FLAGS) $(WK_SYSTEM_CONFIGURATION_LDFLAGS) $(WK_CORE_IMAGE_LDFLAGS) $(WK_URL_FORMATTING_LDFLAGS) $(WK_SCENEKIT_LDFLAGS) $(SOURCE_VERSION_LDFLAGS) $(WK_AVKIT_LDFLAGS);
 
 OTHER_LDFLAGS_PLATFORM_cocoatouch = -allowable_client WebKit -allowable_client iTunesU -allowable_client Casablanca -allowable_client Remote -allowable_client TVBooks -allowable_client DumpRenderTree -allowable_client WebKitTestRunner -allowable_client TestWebKitAPI;
 OTHER_LDFLAGS_PLATFORM_macosx = -sub_library libobjc -umbrella WebKit;

Modified: trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm (290618 => 290619)


--- trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm	2022-02-28 23:26:38 UTC (rev 290618)
+++ trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm	2022-02-28 23:48:00 UTC (rev 290619)
@@ -38,6 +38,7 @@
 #import "VideoFullscreenModel.h"
 #import "WebAVPlayerController.h"
 #import <AVFoundation/AVTime.h>
+#import <AVKit/AVPictureInPictureController.h>
 #import <UIKit/UIKit.h>
 #import <UIKit/UIWindow.h>
 #import <objc/message.h>
@@ -60,7 +61,6 @@
 #if HAVE(AVOBSERVATIONCONTROLLER)
 SOFT_LINK_CLASS_OPTIONAL(AVKit, AVObservationController)
 #endif
-SOFT_LINK_CLASS_OPTIONAL(AVKit, AVPictureInPictureController)
 SOFT_LINK_CLASS_OPTIONAL(AVKit, AVPlayerViewController)
 SOFT_LINK_CLASS_OPTIONAL(AVKit, __AVPlayerLayerView)
 
@@ -1643,7 +1643,7 @@
 #if ENABLE(VIDEO_PRESENTATION_MODE) && !PLATFORM(WATCHOS)
     if (isPictureInPictureSupported.has_value())
         return *isPictureInPictureSupported;
-    return [getAVPictureInPictureControllerClass() isPictureInPictureSupported];
+    return [AVPictureInPictureController isPictureInPictureSupported];
 #else
     return false;
 #endif
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to