Changeset 211161 in webkit


Ignore:
Timestamp:
Jan 25, 2017 1:00:11 PM (7 years ago)
Author:
achristensen@apple.com
Message:

[WebRTC] Introduce libwebrtc abstraction for WK1/WK2 implementations
https://bugs.webkit.org/show_bug.cgi?id=167294

Source/WebCore:

Patch by Youenn Fablet <youennf@gmail.com> on 2017-01-25
Reviewed by Alex Christensen.

Introducing LibWebRTCMacros.h which should be included before any libwebrtc header.

Introducing LibWebRTCProvider as the abstraction allowing to suport WK1 and WK2 libwebrtc-based WebRTC endpoints.
It will create a libwebrtc peerconnection object differently in WK1 and WK2 as networking will be done differently.

LibWebRTCUtils contains routines used by WK1 and WK2 RTC providers to create the libwebrtc peerconnection object
and implement the necessary functionalities for it.

Updating PageConfiguration accordingly.

  • WebCore.xcodeproj/project.pbxproj:
  • page/Page.cpp:

(WebCore::Page::Page):

  • page/Page.h:

(WebCore::Page::libWebRTCProvider):

  • page/PageConfiguration.cpp:

(WebCore::PageConfiguration::PageConfiguration):

  • page/PageConfiguration.h:
  • platform/mediastream/libwebrtc/LibWebRTCMacros.h: Added.
  • platform/mediastream/libwebrtc/LibWebRTCProvider.h: Added.
  • platform/mediastream/libwebrtc/LibWebRTCUtils.cpp: Added.

(WebCore::staticFactoryAndThreads):
(WebCore::ThreadMessageData::ThreadMessageData):
(WebCore::PeerConnectionFactoryAndThreads::OnMessage):
(WebCore::callOnWebRTCNetworkThread):
(WebCore::initializePeerConnectionFactoryAndThreads):
(WebCore::initializeLibWebRTCInternalsWithSocketServer):
(WebCore::peerConnectionFactory):
(WebCore::createPeerConnection):

  • platform/mediastream/libwebrtc/LibWebRTCUtils.h: Added.
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::dataChanged):

Source/WebKit/mac:

Patch by Youenn Fablet <youennf@gmail.com> on 2017-01-24
Reviewed by Alex Christensen.

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):

Source/WebKit/win:

Patch by Youenn Fablet <youennf@gmail.com> on 2017-01-24
Reviewed by Alex Christensen.

  • WebView.cpp:

(WebView::initWithFrame):

Source/WebKit2:

Patch by Youenn Fablet <youennf@gmail.com> on 2017-01-25
Reviewed by Alex Christensen.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::m_userInterfaceLayoutDirection):

Location:
trunk/Source
Files:
5 added
16 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/CMakeLists.txt

    r211027 r211161  
    8989    "${WEBCORE_DIR}/platform/graphics/transforms"
    9090    "${WEBCORE_DIR}/platform/mediastream"
     91    "${WEBCORE_DIR}/platform/mediastream/libwebrtc"
    9192    "${WEBCORE_DIR}/platform/mock"
    9293    "${WEBCORE_DIR}/platform/mock/mediasource"
  • trunk/Source/WebCore/ChangeLog

    r211158 r211161  
     12017-01-25  Youenn Fablet  <youennf@gmail.com>
     2
     3        [WebRTC] Introduce libwebrtc abstraction for WK1/WK2 implementations
     4        https://bugs.webkit.org/show_bug.cgi?id=167294
     5
     6        Reviewed by Alex Christensen.
     7
     8        Introducing LibWebRTCMacros.h which should be included before any libwebrtc header.
     9
     10        Introducing LibWebRTCProvider as the abstraction allowing to suport WK1 and WK2 libwebrtc-based WebRTC endpoints.
     11        It  will create a libwebrtc peerconnection object differently in WK1 and WK2 as networking will be done differently.
     12
     13        LibWebRTCUtils contains routines used by WK1 and WK2 RTC providers to create the libwebrtc peerconnection object
     14        and implement the necessary functionalities for it.
     15
     16        Updating PageConfiguration accordingly.
     17
     18        * WebCore.xcodeproj/project.pbxproj:
     19        * page/Page.cpp:
     20        (WebCore::Page::Page):
     21        * page/Page.h:
     22        (WebCore::Page::libWebRTCProvider):
     23        * page/PageConfiguration.cpp:
     24        (WebCore::PageConfiguration::PageConfiguration):
     25        * page/PageConfiguration.h:
     26        * platform/mediastream/libwebrtc/LibWebRTCMacros.h: Added.
     27        * platform/mediastream/libwebrtc/LibWebRTCProvider.h: Added.
     28        * platform/mediastream/libwebrtc/LibWebRTCUtils.cpp: Added.
     29        (WebCore::staticFactoryAndThreads):
     30        (WebCore::ThreadMessageData::ThreadMessageData):
     31        (WebCore::PeerConnectionFactoryAndThreads::OnMessage):
     32        (WebCore::callOnWebRTCNetworkThread):
     33        (WebCore::initializePeerConnectionFactoryAndThreads):
     34        (WebCore::initializeLibWebRTCInternalsWithSocketServer):
     35        (WebCore::peerConnectionFactory):
     36        (WebCore::createPeerConnection):
     37        * platform/mediastream/libwebrtc/LibWebRTCUtils.h: Added.
     38        * svg/graphics/SVGImage.cpp:
     39        (WebCore::SVGImage::dataChanged):
     40
    1412017-01-25  Wenson Hsieh  <wenson_hsieh@apple.com>
    242
  • trunk/Source/WebCore/PlatformWin.cmake

    r211027 r211161  
    244244    platform/graphics/win
    245245
     246    platform/mediastream/libwebrtc
     247
    246248    platform/text/transcoder
    247249
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r211133 r211161  
    15351535                4150F9F212B6E0E70008C860 /* SliderThumbElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4150F9F012B6E0E70008C860 /* SliderThumbElement.cpp */; };
    15361536                415670471DBE1533009AC3BB /* PeerConnectionStates.h in Headers */ = {isa = PBXBuildFile; fileRef = 415670461DBE1524009AC3BB /* PeerConnectionStates.h */; };
     1537                415747471E3869A400E914D8 /* LibWebRTCMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 415747431E38699E00E914D8 /* LibWebRTCMacros.h */; settings = {ATTRIBUTES = (Private, ); }; };
     1538                415747481E3869A700E914D8 /* LibWebRTCProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 415747441E38699E00E914D8 /* LibWebRTCProvider.h */; settings = {ATTRIBUTES = (Private, ); }; };
     1539                415747491E3869AA00E914D8 /* LibWebRTCUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 415747451E38699E00E914D8 /* LibWebRTCUtils.cpp */; };
     1540                4157474A1E3869AD00E914D8 /* LibWebRTCUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 415747461E38699E00E914D8 /* LibWebRTCUtils.h */; settings = {ATTRIBUTES = (Private, ); }; };
    15371541                4157AF8012F1FB0400A8C6F5 /* MediaControlsApple.h in Headers */ = {isa = PBXBuildFile; fileRef = 4157AF7E12F1FB0400A8C6F5 /* MediaControlsApple.h */; };
    15381542                4157AF8112F1FB0400A8C6F5 /* MediaControlsApple.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4157AF7F12F1FB0400A8C6F5 /* MediaControlsApple.cpp */; };
     
    87058709                4150F9F012B6E0E70008C860 /* SliderThumbElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SliderThumbElement.cpp; sourceTree = "<group>"; };
    87068710                415670461DBE1524009AC3BB /* PeerConnectionStates.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PeerConnectionStates.h; sourceTree = "<group>"; };
     8711                415747431E38699E00E914D8 /* LibWebRTCMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LibWebRTCMacros.h; path = libwebrtc/LibWebRTCMacros.h; sourceTree = "<group>"; };
     8712                415747441E38699E00E914D8 /* LibWebRTCProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LibWebRTCProvider.h; path = libwebrtc/LibWebRTCProvider.h; sourceTree = "<group>"; };
     8713                415747451E38699E00E914D8 /* LibWebRTCUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LibWebRTCUtils.cpp; path = libwebrtc/LibWebRTCUtils.cpp; sourceTree = "<group>"; };
     8714                415747461E38699E00E914D8 /* LibWebRTCUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LibWebRTCUtils.h; path = libwebrtc/LibWebRTCUtils.h; sourceTree = "<group>"; };
    87078715                4157AF7E12F1FB0400A8C6F5 /* MediaControlsApple.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaControlsApple.h; sourceTree = "<group>"; };
    87088716                4157AF7F12F1FB0400A8C6F5 /* MediaControlsApple.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaControlsApple.cpp; sourceTree = "<group>"; };
     
    1521115219                        isa = PBXGroup;
    1521215220                        children = (
     15221                                415747421E38698000E914D8 /* libwebrtc */,
    1521315222                                0729B14D17CFCCA0004F1D60 /* mac */,
    1521415223                                07D6A4F61BF2307D00174146 /* AudioTrackPrivateMediaStream.h */,
     
    1662116630                        );
    1662216631                        path = shadow;
     16632                        sourceTree = "<group>";
     16633                };
     16634                415747421E38698000E914D8 /* libwebrtc */ = {
     16635                        isa = PBXGroup;
     16636                        children = (
     16637                                415747431E38699E00E914D8 /* LibWebRTCMacros.h */,
     16638                                415747441E38699E00E914D8 /* LibWebRTCProvider.h */,
     16639                                415747451E38699E00E914D8 /* LibWebRTCUtils.cpp */,
     16640                                415747461E38699E00E914D8 /* LibWebRTCUtils.h */,
     16641                        );
     16642                        name = libwebrtc;
    1662316643                        sourceTree = "<group>";
    1662416644                };
     
    2572025740                                A8136D380973A8E700D74463 /* FormDataList.h in Headers */,
    2572125741                                7EE6846712D26E3800E79415 /* FormDataStreamCFNet.h in Headers */,
     25742                                4157474A1E3869AD00E914D8 /* LibWebRTCUtils.h in Headers */,
    2572225743                                514C764E0CE9234E007EF3CD /* FormDataStreamMac.h in Headers */,
    2572325744                                9B50B1DE17CD4C0F0087F63C /* FormNamedItem.h in Headers */,
     
    2580125822                                2D8287F716E4A0380086BD00 /* HitTestLocation.h in Headers */,
    2580225823                                930908910AF7EDE40081DF01 /* HitTestRequest.h in Headers */,
     25824                                415747471E3869A400E914D8 /* LibWebRTCMacros.h in Headers */,
    2580325825                                9307F1D80AF2D59000DBA31A /* HitTestResult.h in Headers */,
    2580425826                                BC3BC29C0E91AB0F00835588 /* HostWindow.h in Headers */,
     
    2746127483                                F55B3DD01251F12D003EF269 /* ResetInputType.h in Headers */,
    2746227484                                7EE6846A12D26E3800E79415 /* ResourceError.h in Headers */,
     27485                                415747481E3869A700E914D8 /* LibWebRTCProvider.h in Headers */,
    2746327486                                934F713C0D5A6F1900018D69 /* ResourceErrorBase.h in Headers */,
    2746427487                                514C76790CE923A1007EF3CD /* ResourceHandle.h in Headers */,
     
    3130131324                                97B1F02E13B025CA00F5103F /* SharedBufferChunkReader.cpp in Sources */,
    3130231325                                1A4A95520B4EDCFF002D8C3C /* SharedBufferCocoa.mm in Sources */,
     31326                                415747491E3869AA00E914D8 /* LibWebRTCUtils.cpp in Sources */,
    3130331327                                163E88F7118A39D200ED9231 /* SimpleFontDataCoreText.cpp in Sources */,
    3130431328                                E48944A2180B57D800F165D8 /* SimpleLineLayout.cpp in Sources */,
  • trunk/Source/WebCore/inspector/InspectorOverlay.cpp

    r210492 r211161  
    3838#include "InspectorClient.h"
    3939#include "InspectorOverlayPage.h"
     40#include "LibWebRTCProvider.h"
    4041#include "MainFrame.h"
    4142#include "Node.h"
     
    860861        return m_overlayPage.get();
    861862
    862     PageConfiguration pageConfiguration(createEmptyEditorClient(), SocketProvider::create());
     863    PageConfiguration pageConfiguration(
     864        createEmptyEditorClient(),
     865        SocketProvider::create(),
     866        makeUniqueRef<LibWebRTCProvider>()
     867    );
    863868    fillWithEmptyClients(pageConfiguration);
    864869    m_overlayPage = std::make_unique<Page>(WTFMove(pageConfiguration));
  • trunk/Source/WebCore/page/Page.cpp

    r211114 r211161  
    5656#include "InspectorController.h"
    5757#include "InspectorInstrumentation.h"
     58#include "LibWebRTCProvider.h"
    5859#include "Logging.h"
    5960#include "MainFrame.h"
     
    202203    , m_diagnosticLoggingClient(WTFMove(pageConfiguration.diagnosticLoggingClient))
    203204    , m_webGLStateTracker(WTFMove(pageConfiguration.webGLStateTracker))
     205    , m_libWebRTCProvider(WTFMove(pageConfiguration.libWebRTCProvider))
    204206    , m_openedByDOM(false)
    205207    , m_tabKeyCyclesThroughElements(true)
  • trunk/Source/WebCore/page/Page.h

    r211052 r211161  
    9898class InspectorClient;
    9999class InspectorController;
     100class LibWebRTCProvider;
    100101class MainFrame;
    101102class MediaCanStartListener;
     
    110111class PluginInfoProvider;
    111112class PluginViewBase;
    112 #if ENABLE(POINTER_LOCK)
    113113class PointerLockController;
    114 #endif
    115114class ProgressTracker;
    116115class ProgressTrackerClient;
     
    224223    PointerLockController& pointerLockController() const { return *m_pointerLockController; }
    225224#endif
     225    LibWebRTCProvider& libWebRTCProvider() { return m_libWebRTCProvider.get(); }
    226226
    227227    ValidationMessageClient* validationMessageClient() const { return m_validationMessageClient.get(); }
     
    632632    std::unique_ptr<WebGLStateTracker> m_webGLStateTracker;
    633633
     634    UniqueRef<LibWebRTCProvider> m_libWebRTCProvider;
     635
    634636    int m_nestedRunLoopCount { 0 };
    635637    std::function<void()> m_unnestCallback;
  • trunk/Source/WebCore/page/PageConfiguration.cpp

    r210753 r211161  
    2121 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    2222 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
    23  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
     23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    2424 */
    2525
     
    3232#include "DiagnosticLoggingClient.h"
    3333#include "EditorClient.h"
     34#include "LibWebRTCProvider.h"
    3435#include "PluginInfoProvider.h"
    3536#include "SocketProvider.h"
     
    4243namespace WebCore {
    4344
    44 PageConfiguration::PageConfiguration(UniqueRef<EditorClient>&& editorClient, Ref<SocketProvider>&& socketProvider)
     45PageConfiguration::PageConfiguration(UniqueRef<EditorClient>&& editorClient, Ref<SocketProvider>&& socketProvider, UniqueRef<LibWebRTCProvider>&& libWebRTCProvider)
    4546    : editorClient(WTFMove(editorClient))
    4647    , socketProvider(WTFMove(socketProvider))
     48    , libWebRTCProvider(WTFMove(libWebRTCProvider))
    4749{
    4850}
  • trunk/Source/WebCore/page/PageConfiguration.h

    r210753 r211161  
    2121 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    2222 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
    23  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
     23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    2424 */
    2525
     
    3636class BackForwardClient;
    3737class ChromeClient;
     38class ContextMenuClient;
    3839class DatabaseProvider;
    3940class DiagnosticLoggingClient;
     
    4243class FrameLoaderClient;
    4344class InspectorClient;
     45class LibWebRTCProvider;
    4446class PaymentCoordinatorClient;
    4547class PlugInClient;
     
    5355class WebGLStateTracker;
    5456
    55 #if ENABLE(CONTEXT_MENUS)
    56 class ContextMenuClient;
    57 #endif
    58 
    5957class PageConfiguration {
    6058    WTF_MAKE_NONCOPYABLE(PageConfiguration); WTF_MAKE_FAST_ALLOCATED;
    6159public:
    62     WEBCORE_EXPORT PageConfiguration(UniqueRef<EditorClient>&&, Ref<SocketProvider>&&);
     60    WEBCORE_EXPORT PageConfiguration(UniqueRef<EditorClient>&&, Ref<SocketProvider>&&, UniqueRef<LibWebRTCProvider>&&);
    6361    WEBCORE_EXPORT ~PageConfiguration();
    6462
     
    7573    PaymentCoordinatorClient* paymentCoordinatorClient { nullptr };
    7674#endif
     75
     76    UniqueRef<LibWebRTCProvider> libWebRTCProvider;
    7777
    7878    PlugInClient* plugInClient { nullptr };
  • trunk/Source/WebCore/svg/graphics/SVGImage.cpp

    r210492 r211161  
    4141#include "IntRect.h"
    4242#include "JSDOMWindowBase.h"
     43#include "LibWebRTCProvider.h"
    4344#include "MainFrame.h"
    4445#include "Page.h"
     
    415416
    416417    if (allDataReceived) {
    417         PageConfiguration pageConfiguration(createEmptyEditorClient(), SocketProvider::create());
     418        PageConfiguration pageConfiguration(
     419            createEmptyEditorClient(),
     420            SocketProvider::create(),
     421            makeUniqueRef<LibWebRTCProvider>()
     422        );
    418423        fillWithEmptyClients(pageConfiguration);
    419424        m_chromeClient = std::make_unique<SVGImageChromeClient>(this);
  • trunk/Source/WebKit/mac/ChangeLog

    r211158 r211161  
     12017-01-24  Youenn Fablet  <youennf@gmail.com>
     2
     3        [WebRTC] Introduce libwebrtc abstraction for WK1/WK2 implementations
     4        https://bugs.webkit.org/show_bug.cgi?id=167294
     5
     6        Reviewed by Alex Christensen.
     7
     8        * WebView/WebView.mm:
     9        (-[WebView _commonInitializationWithFrameName:groupName:]):
     10
    1112017-01-25  Wenson Hsieh  <wenson_hsieh@apple.com>
    212
  • trunk/Source/WebKit/mac/WebView/WebView.mm

    r211135 r211161  
    158158#import <WebCore/JSNodeList.h>
    159159#import <WebCore/JSNotification.h>
     160#import <WebCore/LibWebRTCProvider.h>
    160161#import <WebCore/LocalizedStrings.h>
    161162#import <WebCore/LogInitialization.h>
     
    13431344    _private->group->addWebView(self);
    13441345
    1345     PageConfiguration pageConfiguration(makeUniqueRef<WebEditorClient>(self), SocketProvider::create());
     1346    PageConfiguration pageConfiguration(
     1347        makeUniqueRef<WebEditorClient>(self),
     1348        SocketProvider::create(),
     1349        makeUniqueRef<WebCore::LibWebRTCProvider>()
     1350    );
    13461351#if !PLATFORM(IOS)
    13471352    pageConfiguration.chromeClient = new WebChromeClient(self);
     
    15981603    _private->group->addWebView(self);
    15991604
    1600     PageConfiguration pageConfiguration(makeUniqueRef<WebEditorClient>(self), SocketProvider::create());
     1605    PageConfiguration pageConfiguration(
     1606        makeUniqueRef<WebEditorClient>(self),
     1607        SocketProvider::create(),
     1608        makeUniqueRef<WebCore::LibWebRTCProvider>()
     1609    );
    16011610    pageConfiguration.chromeClient = new WebChromeClientIOS(self);
    16021611#if ENABLE(DRAG_SUPPORT)
  • trunk/Source/WebKit/win/ChangeLog

    r211042 r211161  
     12017-01-24  Youenn Fablet  <youennf@gmail.com>
     2
     3        [WebRTC] Introduce libwebrtc abstraction for WK1/WK2 implementations
     4        https://bugs.webkit.org/show_bug.cgi?id=167294
     5
     6        Reviewed by Alex Christensen.
     7
     8        * WebView.cpp:
     9        (WebView::initWithFrame):
     10
    1112017-01-23  Chris Dumez  <cdumez@apple.com>
    212
  • trunk/Source/WebKit/win/WebView.cpp

    r211033 r211161  
    123123#include <WebCore/JSElement.h>
    124124#include <WebCore/KeyboardEvent.h>
     125#include <WebCore/LibWebRTCProvider.h>
    125126#include <WebCore/LogInitialization.h>
    126127#include <WebCore/Logging.h>
     
    31003101    m_inspectorClient = new WebInspectorClient(this);
    31013102
    3102     PageConfiguration configuration(makeUniqueRef<WebEditorClient>(this), SocketProvider::create());
     3103    PageConfiguration configuration(
     3104        makeUniqueRef<WebEditorClient>(this),
     3105        SocketProvider::create(),
     3106        makeUniqueRef<LibWebRTCProvider>()
     3107    );
    31033108    configuration.backForwardClient = BackForwardList::create();
    31043109    configuration.chromeClient = new WebChromeClient(this);
  • trunk/Source/WebKit2/ChangeLog

    r211160 r211161  
     12017-01-25  Youenn Fablet  <youennf@gmail.com>
     2
     3        [WebRTC] Introduce libwebrtc abstraction for WK1/WK2 implementations
     4        https://bugs.webkit.org/show_bug.cgi?id=167294
     5
     6        Reviewed by Alex Christensen.
     7
     8        * WebProcess/WebPage/WebPage.cpp:
     9        (WebKit::m_userInterfaceLayoutDirection):
     10
    1112017-01-25  Andy Estes  <aestes@apple.com>
    212
  • trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp

    r211095 r211161  
    148148#include <WebCore/JSDOMWindow.h>
    149149#include <WebCore/KeyboardEvent.h>
     150#include <WebCore/LibWebRTCProvider.h>
    150151#include <WebCore/MIMETypeRegistry.h>
    151152#include <WebCore/MainFrame.h>
     
    374375#endif
    375376
    376     PageConfiguration pageConfiguration(makeUniqueRef<WebEditorClient>(this), WebSocketProvider::create());
     377    PageConfiguration pageConfiguration(
     378        makeUniqueRef<WebEditorClient>(this),
     379        WebSocketProvider::create(),
     380        makeUniqueRef<WebCore::LibWebRTCProvider>()
     381    );
    377382    pageConfiguration.chromeClient = new WebChromeClient(*this);
    378383#if ENABLE(CONTEXT_MENUS)
Note: See TracChangeset for help on using the changeset viewer.