⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 249155 in webkit


Ignore:
Timestamp:
Aug 27, 2019, 11:22:12 AM (7 years ago)
Author:
Chris Dumez
Message:

Introduce subclasses to RemoteObjectRegistry for the UIProcess and the WebProcess
​https://bugs.webkit.org/show_bug.cgi?id=201153

Reviewed by Alex Christensen.

This better factoring improves code clarity.

  • PlatformMac.cmake:
  • Shared/API/Cocoa/RemoteObjectRegistry.h:

(WebKit::RemoteObjectRegistry::~RemoteObjectRegistry):
(WebKit::RemoteObjectRegistry::takeBackgroundActivityToken):

  • Shared/API/Cocoa/RemoteObjectRegistry.mm:

(WebKit::RemoteObjectRegistry::RemoteObjectRegistry):
(WebKit::RemoteObjectRegistry::sendInvocation):
(WebKit::RemoteObjectRegistry::sendReplyBlock):
(WebKit::RemoteObjectRegistry::sendUnusedReply):

  • Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:

(-[_WKRemoteObjectRegistry _initWithWebPage:]):
(-[_WKRemoteObjectRegistry _initWithWebPageProxy:]):

  • SourcesCocoa.txt:
  • UIProcess/Cocoa/UIRemoteObjectRegistry.cpp: Added.

(WebKit::UIRemoteObjectRegistry::takeBackgroundActivityToken):
(WebKit::UIRemoteObjectRegistry::UIRemoteObjectRegistry):
(WebKit::UIRemoteObjectRegistry::sendInvocation):
(WebKit::UIRemoteObjectRegistry::messageSender):

  • UIProcess/Cocoa/UIRemoteObjectRegistry.h: Added.
  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/Cocoa/WebPageCocoa.mm:

(WebKit::WebPage::setRemoteObjectRegistry):
(WebKit::WebPage::remoteObjectRegistry):

  • WebProcess/WebPage/Cocoa/WebRemoteObjectRegistry.cpp: Added.

(WebKit::WebRemoteObjectRegistry::WebRemoteObjectRegistry):
(WebKit::WebRemoteObjectRegistry::~WebRemoteObjectRegistry):
(WebKit::WebRemoteObjectRegistry::close):
(WebKit::WebRemoteObjectRegistry::messageSender):

  • WebProcess/WebPage/Cocoa/WebRemoteObjectRegistry.h: Added.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::close):

  • WebProcess/WebPage/WebPage.h:
Location:
trunk/Source/WebKit
Files:
4 added
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r249147 r249155  
     12019-08-27  Chris Dumez  <cdumez@apple.com>
     2
     3        Introduce subclasses to RemoteObjectRegistry for the UIProcess and the WebProcess
     4        https://bugs.webkit.org/show_bug.cgi?id=201153
     5
     6        Reviewed by Alex Christensen.
     7
     8        This better factoring improves code clarity.
     9
     10        * PlatformMac.cmake:
     11        * Shared/API/Cocoa/RemoteObjectRegistry.h:
     12        (WebKit::RemoteObjectRegistry::~RemoteObjectRegistry):
     13        (WebKit::RemoteObjectRegistry::takeBackgroundActivityToken):
     14        * Shared/API/Cocoa/RemoteObjectRegistry.mm:
     15        (WebKit::RemoteObjectRegistry::RemoteObjectRegistry):
     16        (WebKit::RemoteObjectRegistry::sendInvocation):
     17        (WebKit::RemoteObjectRegistry::sendReplyBlock):
     18        (WebKit::RemoteObjectRegistry::sendUnusedReply):
     19        * Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
     20        (-[_WKRemoteObjectRegistry _initWithWebPage:]):
     21        (-[_WKRemoteObjectRegistry _initWithWebPageProxy:]):
     22        * SourcesCocoa.txt:
     23        * UIProcess/Cocoa/UIRemoteObjectRegistry.cpp: Added.
     24        (WebKit::UIRemoteObjectRegistry::takeBackgroundActivityToken):
     25        (WebKit::UIRemoteObjectRegistry::UIRemoteObjectRegistry):
     26        (WebKit::UIRemoteObjectRegistry::sendInvocation):
     27        (WebKit::UIRemoteObjectRegistry::messageSender):
     28        * UIProcess/Cocoa/UIRemoteObjectRegistry.h: Added.
     29        * WebKit.xcodeproj/project.pbxproj:
     30        * WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
     31        (WebKit::WebPage::setRemoteObjectRegistry):
     32        (WebKit::WebPage::remoteObjectRegistry):
     33        * WebProcess/WebPage/Cocoa/WebRemoteObjectRegistry.cpp: Added.
     34        (WebKit::WebRemoteObjectRegistry::WebRemoteObjectRegistry):
     35        (WebKit::WebRemoteObjectRegistry::~WebRemoteObjectRegistry):
     36        (WebKit::WebRemoteObjectRegistry::close):
     37        (WebKit::WebRemoteObjectRegistry::messageSender):
     38        * WebProcess/WebPage/Cocoa/WebRemoteObjectRegistry.h: Added.
     39        * WebProcess/WebPage/WebPage.cpp:
     40        (WebKit::WebPage::close):
     41        * WebProcess/WebPage/WebPage.h:
     42
    1432019-08-26  Jer Noble  <jer.noble@apple.com>
    244
  • trunk/Source/WebKit/PlatformMac.cmake

    r246126 r249155  
    253253    UIProcess/Cocoa/SessionStateCoding.mm
    254254    UIProcess/Cocoa/UIDelegate.mm
     255    UIProcess/Cocoa/UIRemoteObjectRegistry.cpp
    255256    UIProcess/Cocoa/VersionChecks.mm
    256257    UIProcess/Cocoa/WKFullKeyboardAccessWatcher.mm
    … …  
    363364
    364365    WebProcess/WebPage/Cocoa/WebPageCocoa.mm
     366    WebProcess/WebPage/Cocoa/WebRemoteObjectRegistry.cpp
    365367
    366368    WebProcess/WebPage/mac/PageBannerMac.mm
  • trunk/Source/WebKit/Shared/API/Cocoa/RemoteObjectRegistry.h

    r245796 r249155  
    11/*
    2  * Copyright (C) 2013 Apple Inc. All rights reserved.
     2 * Copyright (C) 2013-2019 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
    … …  
    2828#include "MessageReceiver.h"
    2929#include "ProcessThrottler.h"
    30 #include <WebCore/PageIdentifier.h>
    31 #include <wtf/Function.h>
     30#include <wtf/HashMap.h>
    3231#include <wtf/WeakObjCPtr.h>
    3332#include <wtf/WeakPtr.h>
    … …  
    4342class RemoteObjectInvocation;
    4443class UserData;
    45 class WebPage;
    46 class WebPageProxy;
    4744
    48 class RemoteObjectRegistry final : public CanMakeWeakPtr<RemoteObjectRegistry>, public IPC::MessageReceiver {
     45class RemoteObjectRegistry : public CanMakeWeakPtr<RemoteObjectRegistry>, public IPC::MessageReceiver {
    4946    WTF_MAKE_FAST_ALLOCATED;
    5047public:
    51     RemoteObjectRegistry(_WKRemoteObjectRegistry *, WebPage&);
    52     RemoteObjectRegistry(_WKRemoteObjectRegistry *, WebPageProxy&);
     48    virtual ~RemoteObjectRegistry();
    5349
    54     ~RemoteObjectRegistry();
    55 
    56     void sendInvocation(const RemoteObjectInvocation&);
     50    virtual void sendInvocation(const RemoteObjectInvocation&);
    5751    void sendReplyBlock(uint64_t replyID, const UserData& blockInvocation);
    5852    void sendUnusedReply(uint64_t replyID);
    5953
    60     void close();
     54protected:
     55    explicit RemoteObjectRegistry(_WKRemoteObjectRegistry *);
     56   
     57private:
     58    virtual ProcessThrottler::BackgroundActivityToken takeBackgroundActivityToken() { return nullptr; }
     59    virtual IPC::MessageSender& messageSender() = 0;
    6160
    62 private:
    6361    // IPC::MessageReceiver
    6462    void didReceiveMessage(IPC::Connection&, IPC::Decoder&) override;
    … …  
    7068
    7169    WeakObjCPtr<_WKRemoteObjectRegistry> m_remoteObjectRegistry;
    72     IPC::MessageSender& m_messageSender;
    73     Function<ProcessThrottler::BackgroundActivityToken()> m_takeBackgroundActivityToken;
    74     Function<void()> m_launchInitialProcessIfNecessary;
    7570    HashMap<uint64_t, ProcessThrottler::BackgroundActivityToken> m_pendingReplies;
    76     bool m_isRegisteredAsMessageReceiver { false };
    77     WebCore::PageIdentifier m_messageReceiverID;
    7871};
    7972
  • trunk/Source/WebKit/Shared/API/Cocoa/RemoteObjectRegistry.mm

    r244139 r249155  
    11/*
    2  * Copyright (C) 2013 Apple Inc. All rights reserved.
     2 * Copyright (C) 2013-2019 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
    … …  
    2828
    2929#import "MessageSender.h"
    30 #import "ProcessThrottler.h"
    3130#import "RemoteObjectInvocation.h"
    3231#import "RemoteObjectRegistryMessages.h"
    3332#import "UserData.h"
    34 #import "WebPage.h"
    35 #import "WebPageProxy.h"
    36 #import "WebProcess.h"
    37 #import "WebProcessProxy.h"
    3833#import "_WKRemoteObjectRegistryInternal.h"
    3934
    4035namespace WebKit {
    4136
    42 RemoteObjectRegistry::RemoteObjectRegistry(_WKRemoteObjectRegistry *remoteObjectRegistry, WebPage& page)
     37RemoteObjectRegistry::RemoteObjectRegistry(_WKRemoteObjectRegistry *remoteObjectRegistry)
    4338    : m_remoteObjectRegistry(remoteObjectRegistry)
    44     , m_messageSender(page)
    45     , m_takeBackgroundActivityToken([] { return ProcessThrottler::BackgroundActivityToken(); })
    46     , m_isRegisteredAsMessageReceiver(true)
    47     , m_messageReceiverID(page.pageID())
    48 {
    49     WebProcess::singleton().addMessageReceiver(Messages::RemoteObjectRegistry::messageReceiverName(), m_messageReceiverID, *this);
    50     page.setRemoteObjectRegistry(*this);
    51 }
    52 
    53 RemoteObjectRegistry::RemoteObjectRegistry(_WKRemoteObjectRegistry *remoteObjectRegistry, WebPageProxy& page)
    54     : m_remoteObjectRegistry(remoteObjectRegistry)
    55     , m_messageSender(page)
    56     , m_takeBackgroundActivityToken([&page] { return page.process().throttler().backgroundActivityToken(); })
    57     , m_launchInitialProcessIfNecessary([&page] { page.launchInitialProcessIfNecessary(); })
    5839{
    5940}
    … …  
    6142RemoteObjectRegistry::~RemoteObjectRegistry()
    6243{
    63     close();
    64 }
    65 
    66 void RemoteObjectRegistry::close()
    67 {
    68     if (m_isRegisteredAsMessageReceiver) {
    69         WebProcess::singleton().removeMessageReceiver(Messages::RemoteObjectRegistry::messageReceiverName(), m_messageReceiverID);
    70         m_isRegisteredAsMessageReceiver = false;
    71     }
    7244}
    7345
    7446void RemoteObjectRegistry::sendInvocation(const RemoteObjectInvocation& invocation)
    7547{
    76     // For backward-compatibility, support invoking injected bundle methods before having done any load in the WebView.
    77     if (m_launchInitialProcessIfNecessary)
    78         m_launchInitialProcessIfNecessary();
    7948
    8049    if (auto* replyInfo = invocation.replyInfo()) {
    8150        ASSERT(!m_pendingReplies.contains(replyInfo->replyID));
    82         m_pendingReplies.add(replyInfo->replyID, m_takeBackgroundActivityToken());
     51        m_pendingReplies.add(replyInfo->replyID, takeBackgroundActivityToken());
    8352    }
    8453
    85     m_messageSender.send(Messages::RemoteObjectRegistry::InvokeMethod(invocation));
     54    messageSender().send(Messages::RemoteObjectRegistry::InvokeMethod(invocation));
    8655}
    8756
    8857void RemoteObjectRegistry::sendReplyBlock(uint64_t replyID, const UserData& blockInvocation)
    8958{
    90     m_messageSender.send(Messages::RemoteObjectRegistry::CallReplyBlock(replyID, blockInvocation));
     59    messageSender().send(Messages::RemoteObjectRegistry::CallReplyBlock(replyID, blockInvocation));
    9160}
    9261
    9362void RemoteObjectRegistry::sendUnusedReply(uint64_t replyID)
    9463{
    95     m_messageSender.send(Messages::RemoteObjectRegistry::ReleaseUnusedReplyBlock(replyID));
     64    messageSender().send(Messages::RemoteObjectRegistry::ReleaseUnusedReplyBlock(replyID));
    9665}
    9766
    … …  
    11685    [m_remoteObjectRegistry _releaseReplyWithID:replyID];
    11786}
     87
    11888} // namespace WebKit
  • trunk/Source/WebKit/Shared/API/Cocoa/_WKRemoteObjectRegistry.mm

    r248846 r249155  
    3131#import "Connection.h"
    3232#import "RemoteObjectInvocation.h"
    33 #import "RemoteObjectRegistry.h"
     33#import "UIRemoteObjectRegistry.h"
    3434#import "UserData.h"
    3535#import "WKConnectionRef.h"
    … …  
    3838#import "WKSharedAPICast.h"
    3939#import "WebPage.h"
     40#import "WebRemoteObjectRegistry.h"
    4041#import "_WKRemoteObjectInterface.h"
    4142#import <objc/runtime.h>
    … …  
    110111        return nil;
    111112
    112     _remoteObjectRegistry = makeUnique<WebKit::RemoteObjectRegistry>(self, page);
     113    _remoteObjectRegistry = makeUnique<WebKit::WebRemoteObjectRegistry>(self, page);
    113114
    114115    return self;
    … …  
    120121        return nil;
    121122
    122     _remoteObjectRegistry = makeUnique<WebKit::RemoteObjectRegistry>(self, page);
     123    _remoteObjectRegistry = makeUnique<WebKit::UIRemoteObjectRegistry>(self, page);
    123124
    124125    return self;
  • trunk/Source/WebKit/SourcesCocoa.txt

    r249096 r249155  
    357357UIProcess/Cocoa/TextCheckingController.mm
    358358UIProcess/Cocoa/UIDelegate.mm
     359UIProcess/Cocoa/UIRemoteObjectRegistry.cpp
    359360UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp
    360361UIProcess/Cocoa/VersionChecks.mm
    … …  
    580581WebProcess/WebPage/Cocoa/TextCheckingControllerProxy.mm
    581582WebProcess/WebPage/Cocoa/WebPageCocoa.mm
     583WebProcess/WebPage/Cocoa/WebRemoteObjectRegistry.cpp
    582584
    583585WebProcess/WebPage/ios/FindControllerIOS.mm
  • trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj

    r249096 r249155  
    903903                460F488F1F996F7100CF4B87 /* WebSWContextManagerConnectionMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 460F488D1F996F6C00CF4B87 /* WebSWContextManagerConnectionMessageReceiver.cpp */; };
    904904                460F48901F996F7100CF4B87 /* WebSWContextManagerConnectionMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 460F488E1F996F6C00CF4B87 /* WebSWContextManagerConnectionMessages.h */; };
     905                461CCCA5231485A700B659B9 /* UIRemoteObjectRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = 463236852314833F00A48FA7 /* UIRemoteObjectRegistry.h */; };
     906                461CCCA6231485AA00B659B9 /* WebRemoteObjectRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = 46323683231481EF00A48FA7 /* WebRemoteObjectRegistry.h */; };
    905907                463FD4801EB9459600A2982C /* WKProcessTerminationReason.h in Headers */ = {isa = PBXBuildFile; fileRef = 463FD47F1EB9458400A2982C /* WKProcessTerminationReason.h */; settings = {ATTRIBUTES = (Private, ); }; };
    906908                463FD4821EB94EC000A2982C /* ProcessTerminationReason.h in Headers */ = {isa = PBXBuildFile; fileRef = 463FD4811EB94EAD00A2982C /* ProcessTerminationReason.h */; };
    … …  
    31963198                460F488E1F996F6C00CF4B87 /* WebSWContextManagerConnectionMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebSWContextManagerConnectionMessages.h; path = DerivedSources/WebKit2/WebSWContextManagerConnectionMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };
    31973199                462107D71F38DBD300DD7810 /* PingLoad.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PingLoad.cpp; sourceTree = "<group>"; };
     3200                46323683231481EF00A48FA7 /* WebRemoteObjectRegistry.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebRemoteObjectRegistry.h; sourceTree = "<group>"; };
     3201                463236842314825C00A48FA7 /* WebRemoteObjectRegistry.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = WebRemoteObjectRegistry.cpp; sourceTree = "<group>"; };
     3202                463236852314833F00A48FA7 /* UIRemoteObjectRegistry.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UIRemoteObjectRegistry.h; sourceTree = "<group>"; };
     3203                463236862314833F00A48FA7 /* UIRemoteObjectRegistry.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = UIRemoteObjectRegistry.cpp; sourceTree = "<group>"; };
    31983204                463FD47F1EB9458400A2982C /* WKProcessTerminationReason.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKProcessTerminationReason.h; sourceTree = "<group>"; };
    31993205                463FD4811EB94EAD00A2982C /* ProcessTerminationReason.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProcessTerminationReason.h; sourceTree = "<group>"; };
    … …  
    55575563                                1AFE436418B6C081009C7A48 /* UIDelegate.h */,
    55585564                                1AFE436318B6C081009C7A48 /* UIDelegate.mm */,
     5565                                463236862314833F00A48FA7 /* UIRemoteObjectRegistry.cpp */,
     5566                                463236852314833F00A48FA7 /* UIRemoteObjectRegistry.h */,
    55595567                                E4E8648E1B1673FB00C82F40 /* VersionChecks.h */,
    55605568                                E4E8648F1B1673FB00C82F40 /* VersionChecks.mm */,
    … …  
    57995807                                2D9CD5EC21FA503F0029ACFA /* TextCheckingControllerProxy.mm */,
    58005808                                2DC4CF7A1D2DE24B00ECCC94 /* WebPageCocoa.mm */,
     5809                                463236842314825C00A48FA7 /* WebRemoteObjectRegistry.cpp */,
     5810                                46323683231481EF00A48FA7 /* WebRemoteObjectRegistry.h */,
    58015811                        );
    58025812                        path = Cocoa;
    … …  
    97639773                                CEE4AE2B1A5DCF430002F49B /* UIKitSPI.h in Headers */,
    97649774                                513FFB8D201459B0002596EA /* UIMessagePortChannelProvider.h in Headers */,
     9775                                461CCCA5231485A700B659B9 /* UIRemoteObjectRegistry.h in Headers */,
    97659776                                5C4B9D8B210A8CCF008F14D1 /* UndoOrRedo.h in Headers */,
    97669777                                1A64245E12DE29A100CAAE2C /* UpdateInfo.h in Headers */,
    … …  
    99599970                                1A1E093418861D3800D2DC49 /* WebProgressTrackerClient.h in Headers */,
    99609971                                512F589D12A8838800629530 /* WebProtectionSpace.h in Headers */,
     9972                                461CCCA6231485AA00B659B9 /* WebRemoteObjectRegistry.h in Headers */,
    99619973                                37948404150C350600E52CE9 /* WebRenderLayer.h in Headers */,
    99629974                                3760881F150413E900FC82C7 /* WebRenderObject.h in Headers */,
  • trunk/Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm

    r247416 r249155  
    3030#import "LoadParameters.h"
    3131#import "PluginView.h"
    32 #import "RemoteObjectRegistry.h"
    3332#import "WKAccessibilityWebPageObjectBase.h"
    3433#import "WebPageProxyMessages.h"
    3534#import "WebPaymentCoordinator.h"
     35#import "WebRemoteObjectRegistry.h"
    3636#import <WebCore/DictionaryLookup.h>
    3737#import <WebCore/Editor.h>
    … …  
    218218}
    219219
    220 void WebPage::setRemoteObjectRegistry(RemoteObjectRegistry& registry)
     220void WebPage::setRemoteObjectRegistry(WebRemoteObjectRegistry* registry)
    221221{
    222222    m_remoteObjectRegistry = makeWeakPtr(registry);
     223}
     224
     225WebRemoteObjectRegistry* WebPage::remoteObjectRegistry()
     226{
     227    return m_remoteObjectRegistry.get();
    223228}
    224229
  • trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp

    r249138 r249155  
    259259#include "PlaybackSessionManager.h"
    260260#include "RemoteLayerTreeTransaction.h"
    261 #include "RemoteObjectRegistry.h"
    262261#include "RemoteObjectRegistryMessages.h"
    263262#include "TextCheckingControllerProxy.h"
    … …  
    266265#include "VideoFullscreenManager.h"
    267266#include "WKStringCF.h"
     267#include "WebRemoteObjectRegistry.h"
    268268#include <WebCore/LegacyWebArchive.h>
    269269#include <WebCore/UTIRegistry.h>
    … …  
    14331433    if (m_remoteObjectRegistry)
    14341434        m_remoteObjectRegistry->close();
     1435    ASSERT(!m_remoteObjectRegistry);
    14351436#endif
    14361437#if ENABLE(ASYNC_SCROLLING)
  • trunk/Source/WebKit/WebProcess/WebPage/WebPage.h

    r249093 r249155  
    218218class PageBanner;
    219219class PluginView;
    220 class RemoteObjectRegistry;
    221220class RemoteWebInspectorUI;
    222221class TextCheckingControllerProxy;
    … …  
    248247class WebPaymentCoordinator;
    249248class WebPopupMenu;
     249class WebRemoteObjectRegistry;
    250250class WebTouchEvent;
    251251class WebURLSchemeHandlerProxy;
    … …  
    11991199#endif
    12001200
    1201     void setRemoteObjectRegistry(RemoteObjectRegistry&);
     1201#if PLATFORM(COCOA)
     1202    void setRemoteObjectRegistry(WebRemoteObjectRegistry*);
     1203    WebRemoteObjectRegistry* remoteObjectRegistry();
     1204#endif
    12021205
    12031206    void updateIntrinsicContentSizeIfNeeded(const WebCore::IntSize&);
    … …  
    19531956    bool m_firstFlushAfterCommit { false };
    19541957#if PLATFORM(COCOA)
    1955     WeakPtr<RemoteObjectRegistry> m_remoteObjectRegistry;
     1958    WeakPtr<WebRemoteObjectRegistry> m_remoteObjectRegistry;
    19561959#endif
    19571960    WebCore::IntSize m_lastSentIntrinsicContentSize;
Note: See TracChangeset for help on using the changeset viewer.