[webkit-changes] [WebKit/WebKit] 29b1ce: Simplify use of WKWebViewContentProviderRegistry o...

Alex Christensen noreply at github.com
Thu Mar 21 12:42:18 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 29b1ce3d4b3f123118c251175d50cdf2dbce9453
      https://github.com/WebKit/WebKit/commit/29b1ce3d4b3f123118c251175d50cdf2dbce9453
  Author: Alex Christensen <achristensen at apple.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
    M Source/WebKit/UIProcess/API/Cocoa/WKWebViewConfiguration.mm
    M Source/WebKit/UIProcess/API/Cocoa/WKWebViewConfigurationInternal.h
    M Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h
    M Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm
    M Source/WebKit/UIProcess/Cocoa/WKWebViewContentProviderRegistry.h
    M Source/WebKit/UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxy.h
    M Source/WebKit/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit/WebProcess/WebPage/WebPage.h
    M Source/WebKit/WebProcess/WebPage/WebPage.messages.in

  Log Message:
  -----------
  Simplify use of WKWebViewContentProviderRegistry on iOS
https://bugs.webkit.org/show_bug.cgi?id=271397
rdar://125177028

Reviewed by Tim Horton.

WKWebViewContentProviderRegistry is a small and simple class that allows a
WKWebView to get an ObjC class from a MIME type based on its preferences.
It does not need to be a member of WKWebViewConfiguration.
It does not need to know about its pages.
It does not need to add MIME types with the WebPage::AddMIMETypeWithCustomContentProvider
message because all the MIME types are sent in WebPageCreationParameters's
mimeTypesWithCustomContentProviders.

* Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]):
(-[WKWebView dealloc]):
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration setLimitsNavigationsToAppBoundDomains:]):
(-[WKWebViewConfiguration _contentProviderRegistry]): Deleted.
(-[WKWebViewConfiguration _setContentProviderRegistry:]): Deleted.
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewConfigurationInternal.h:
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h:
* Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _contentProviderRegistry]):
(-[WKWebView _setHasCustomContentView:loadedMIMEType:]):
(-[WKWebView _isDisplayingPDF]):
* Source/WebKit/UIProcess/Cocoa/WKWebViewContentProviderRegistry.h:
* Source/WebKit/UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm:
(-[WKWebViewContentProviderRegistry registerProvider:forMIMEType:]):
(-[WKWebViewContentProviderRegistry addPage:]): Deleted.
(-[WKWebViewContentProviderRegistry removePage:]): Deleted.
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::addMIMETypeWithCustomContentProvider): Deleted.
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::addMIMETypeWithCustomContentProvider): Deleted.
* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Source/WebKit/WebProcess/WebPage/WebPage.messages.in:

Canonical link: https://commits.webkit.org/276486@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list