Changeset 166879 in webkit


Ignore:
Timestamp:
Apr 7, 2014 12:44:06 PM (10 years ago)
Author:
mitz@apple.com
Message:

Introduce API::InjectedBundle::PageUIClient
https://bugs.webkit.org/show_bug.cgi?id=131310

Reviewed by Anders Carlsson.

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files.
  • WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp: Added #include that

became necessary.

  • WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h: Added.

(API::InjectedBundle::PageUIClient::~PageUIClient):
(API::InjectedBundle::PageUIClient::willAddMessageToConsole):
(API::InjectedBundle::PageUIClient::willSetStatusbarText):
(API::InjectedBundle::PageUIClient::willRunJavaScriptAlert):
(API::InjectedBundle::PageUIClient::willRunJavaScriptConfirm):
(API::InjectedBundle::PageUIClient::willRunJavaScriptPrompt):
(API::InjectedBundle::PageUIClient::mouseDidMoveOverElement):
(API::InjectedBundle::PageUIClient::pageDidScroll):
(API::InjectedBundle::PageUIClient::shouldGenerateFileForUpload):
(API::InjectedBundle::PageUIClient::generateFileForUpload):
(API::InjectedBundle::PageUIClient::statusBarIsVisible):
(API::InjectedBundle::PageUIClient::menuBarIsVisible):
(API::InjectedBundle::PageUIClient::toolbarsAreVisible):
(API::InjectedBundle::PageUIClient::didReachApplicationCacheOriginQuota):
(API::InjectedBundle::PageUIClient::didExceedDatabaseQuota):
(API::InjectedBundle::PageUIClient::plugInStartLabelTitle):
(API::InjectedBundle::PageUIClient::plugInStartLabelSubtitle):
(API::InjectedBundle::PageUIClient::plugInExtraStyleSheet):
(API::InjectedBundle::PageUIClient::plugInExtraScript):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageSetUIClient): Changed to create an InjectedBundlePageUIClient and set it on
the WebPage.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:

(WebKit::InjectedBundlePageUIClient::InjectedBundlePageUIClient): Added constructor from
WKBundlePageUIClient.
(WebKit::toUIElementVisibility): Added helper to convert from C SPI enum to internal enum.
(WebKit::InjectedBundlePageUIClient::statusBarIsVisible): Changed to use the above.
(WebKit::InjectedBundlePageUIClient::menuBarIsVisible): Ditto.
(WebKit::InjectedBundlePageUIClient::toolbarsAreVisible): Ditto.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Added inheritance from

API::InjectedBundle::PageUIClient, marked overrides as such.

  • WebProcess/Storage/StorageAreaMap.cpp: Added #include that became necessary.
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::toolbarsVisible): Updated to use new internal enum.
(WebKit::WebChromeClient::statusbarVisible): Ditto.
(WebKit::WebChromeClient::menubarVisible): Ditto.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialized m_uiClient member.
(WebKit::WebPage::setInjectedBundleUIClient): Added. Updates m_uiClient.
(WebKit::WebPage::close): Updated for change in m_uiClient.
(WebKit::WebPage::pageDidScroll): Ditto.
(WebKit::WebPage::initializeInjectedBundleUIClient): Deleted.

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::injectedBundleUIClient): Updated return type.

  • WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm: Added #include that became

necessary.

Location:
trunk/Source/WebKit2
Files:
1 added
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r166861 r166879  
     12014-04-07  Dan Bernstein  <mitz@apple.com>
     2
     3        Introduce API::InjectedBundle::PageUIClient
     4        https://bugs.webkit.org/show_bug.cgi?id=131310
     5
     6        Reviewed by Anders Carlsson.
     7
     8        * WebKit2.xcodeproj/project.pbxproj: Added references to new files.
     9
     10        * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp: Added #include that
     11        became necessary.
     12
     13        * WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h: Added.
     14        (API::InjectedBundle::PageUIClient::~PageUIClient):
     15        (API::InjectedBundle::PageUIClient::willAddMessageToConsole):
     16        (API::InjectedBundle::PageUIClient::willSetStatusbarText):
     17        (API::InjectedBundle::PageUIClient::willRunJavaScriptAlert):
     18        (API::InjectedBundle::PageUIClient::willRunJavaScriptConfirm):
     19        (API::InjectedBundle::PageUIClient::willRunJavaScriptPrompt):
     20        (API::InjectedBundle::PageUIClient::mouseDidMoveOverElement):
     21        (API::InjectedBundle::PageUIClient::pageDidScroll):
     22        (API::InjectedBundle::PageUIClient::shouldGenerateFileForUpload):
     23        (API::InjectedBundle::PageUIClient::generateFileForUpload):
     24        (API::InjectedBundle::PageUIClient::statusBarIsVisible):
     25        (API::InjectedBundle::PageUIClient::menuBarIsVisible):
     26        (API::InjectedBundle::PageUIClient::toolbarsAreVisible):
     27        (API::InjectedBundle::PageUIClient::didReachApplicationCacheOriginQuota):
     28        (API::InjectedBundle::PageUIClient::didExceedDatabaseQuota):
     29        (API::InjectedBundle::PageUIClient::plugInStartLabelTitle):
     30        (API::InjectedBundle::PageUIClient::plugInStartLabelSubtitle):
     31        (API::InjectedBundle::PageUIClient::plugInExtraStyleSheet):
     32        (API::InjectedBundle::PageUIClient::plugInExtraScript):
     33
     34        * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
     35        (WKBundlePageSetUIClient): Changed to create an InjectedBundlePageUIClient and set it on
     36        the WebPage.
     37
     38        * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
     39        (WebKit::InjectedBundlePageUIClient::InjectedBundlePageUIClient): Added constructor from
     40        WKBundlePageUIClient.
     41        (WebKit::toUIElementVisibility): Added helper to convert from C SPI enum to internal enum.
     42        (WebKit::InjectedBundlePageUIClient::statusBarIsVisible): Changed to use the above.
     43        (WebKit::InjectedBundlePageUIClient::menuBarIsVisible): Ditto.
     44        (WebKit::InjectedBundlePageUIClient::toolbarsAreVisible): Ditto.
     45        * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Added inheritance from
     46        API::InjectedBundle::PageUIClient, marked overrides as such.
     47
     48        * WebProcess/Storage/StorageAreaMap.cpp: Added #include that became necessary.
     49        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
     50        (WebKit::WebChromeClient::toolbarsVisible): Updated to use new internal enum.
     51        (WebKit::WebChromeClient::statusbarVisible): Ditto.
     52        (WebKit::WebChromeClient::menubarVisible): Ditto.
     53
     54        * WebProcess/WebPage/WebPage.cpp:
     55        (WebKit::WebPage::WebPage): Initialized m_uiClient member.
     56        (WebKit::WebPage::setInjectedBundleUIClient): Added. Updates m_uiClient.
     57        (WebKit::WebPage::close): Updated for change in m_uiClient.
     58        (WebKit::WebPage::pageDidScroll): Ditto.
     59        (WebKit::WebPage::initializeInjectedBundleUIClient): Deleted.
     60        * WebProcess/WebPage/WebPage.h:
     61        (WebKit::WebPage::injectedBundleUIClient): Updated return type.
     62
     63        * WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm: Added #include that became
     64        necessary.
     65
    1662014-04-06  Dan Bernstein  <mitz@apple.com>
    267
  • trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj

    r166861 r166879  
    663663                3766F9F0189A1248003CF19B /* WebCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1AA1C79A100E7FC50078DEBC /* WebCore.framework */; };
    664664                3766F9F1189A1254003CF19B /* libicucore.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = BC87DFA91018101400564216 /* libicucore.dylib */; };
     665                3769079A18F31CB2001DFF04 /* APIInjectedBundlePageUIClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 3769079818F31CB2001DFF04 /* APIInjectedBundlePageUIClient.h */; };
    665666                37694525184FC6B600CDE21F /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BCF5068412431861005955AE /* Security.framework */; };
    666667                377EAD4517E2C51A002D193D /* WKDeclarationSpecifiers.h in Headers */ = {isa = PBXBuildFile; fileRef = 377EAD4417E2C51A002D193D /* WKDeclarationSpecifiers.h */; settings = {ATTRIBUTES = (Public, ); }; };
     
    24792480                37608820150414F700FC82C7 /* WKRenderObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKRenderObject.cpp; sourceTree = "<group>"; };
    24802481                37608821150414F700FC82C7 /* WKRenderObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKRenderObject.h; sourceTree = "<group>"; };
     2482                3769079818F31CB2001DFF04 /* APIInjectedBundlePageUIClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = APIInjectedBundlePageUIClient.h; path = API/APIInjectedBundlePageUIClient.h; sourceTree = "<group>"; };
    24812483                377EAD4417E2C51A002D193D /* WKDeclarationSpecifiers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKDeclarationSpecifiers.h; sourceTree = "<group>"; };
    24822484                377EAD4617E2C77B002D193D /* WKUserContentInjectedFrames.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKUserContentInjectedFrames.h; sourceTree = "<group>"; };
     
    57555757                                BC4BEE96120A091700FBA0C7 /* DOM */,
    57565758                                BC204EE411C83E9C008F3375 /* mac */,
     5759                                3769079818F31CB2001DFF04 /* APIInjectedBundlePageUIClient.h */,
    57575760                                BC204EE011C83E98008F3375 /* InjectedBundle.cpp */,
    57585761                                BC204EE111C83E98008F3375 /* InjectedBundle.h */,
     
    72757278                                BCF69FA91176D1CB00471A52 /* WKNavigationDataRef.h in Headers */,
    72767279                                318BE17914743E6F00A8FBB2 /* WKNotification.h in Headers */,
     7280                                3769079A18F31CB2001DFF04 /* APIInjectedBundlePageUIClient.h in Headers */,
    72777281                                318BE17114743DB100A8FBB2 /* WKNotificationManager.h in Headers */,
    72787282                                31A2EC74148D59CA00810D71 /* WKNotificationPermissionRequest.h in Headers */,
  • trunk/Source/WebKit2/WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp

    r166262 r166879  
    3333#include "WebPage.h"
    3434#include "WebPageProxyMessages.h"
     35#include <WebCore/Document.h>
    3536#include <WebCore/Frame.h>
    3637#include <WebCore/FrameLoader.h>
  • trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp

    r166661 r166879  
    3434#include "InjectedBundleBackForwardList.h"
    3535#include "InjectedBundleNodeHandle.h"
     36#include "InjectedBundlePageUIClient.h"
    3637#include "PageBanner.h"
    3738#include "WKAPICast.h"
     
    99100void WKBundlePageSetUIClient(WKBundlePageRef pageRef, WKBundlePageUIClientBase* wkClient)
    100101{
    101     toImpl(pageRef)->initializeInjectedBundleUIClient(wkClient);
     102    toImpl(pageRef)->setInjectedBundleUIClient(std::make_unique<InjectedBundlePageUIClient>(wkClient));
    102103}
    103104
  • trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp

    r160608 r166879  
    3737namespace WebKit {
    3838
     39InjectedBundlePageUIClient::InjectedBundlePageUIClient(const WKBundlePageUIClientBase* client)
     40{
     41    initialize(client);
     42}
     43
    3944void InjectedBundlePageUIClient::willAddMessageToConsole(WebPage* page, const String& message, int32_t lineNumber)
    4045{
     
    103108}
    104109
    105 WKBundlePageUIElementVisibility InjectedBundlePageUIClient::statusBarIsVisible(WebPage* page)
     110static API::InjectedBundle::PageUIClient::UIElementVisibility toUIElementVisibility(WKBundlePageUIElementVisibility visibility)
     111{
     112    switch (visibility) {
     113    case WKBundlePageUIElementVisibilityUnknown:
     114        return API::InjectedBundle::PageUIClient::UIElementVisibility::Unknown;
     115    case WKBundlePageUIElementVisible:
     116        return API::InjectedBundle::PageUIClient::UIElementVisibility::Visible;
     117    case WKBundlePageUIElementHidden:
     118        return API::InjectedBundle::PageUIClient::UIElementVisibility::Hidden;
     119    }
     120
     121    ASSERT_NOT_REACHED();
     122    return API::InjectedBundle::PageUIClient::UIElementVisibility::Unknown;
     123}
     124
     125API::InjectedBundle::PageUIClient::UIElementVisibility InjectedBundlePageUIClient::statusBarIsVisible(WebPage* page)
    106126{
    107127    if (!m_client.statusBarIsVisible)
    108         return WKBundlePageUIElementVisibilityUnknown;
     128        return API::InjectedBundle::PageUIClient::UIElementVisibility::Unknown;
    109129   
    110     return m_client.statusBarIsVisible(toAPI(page), m_client.base.clientInfo);
    111 }
    112 
    113 WKBundlePageUIElementVisibility InjectedBundlePageUIClient::menuBarIsVisible(WebPage* page)
     130    return toUIElementVisibility(m_client.statusBarIsVisible(toAPI(page), m_client.base.clientInfo));
     131}
     132
     133API::InjectedBundle::PageUIClient::UIElementVisibility InjectedBundlePageUIClient::menuBarIsVisible(WebPage* page)
    114134{
    115135    if (!m_client.menuBarIsVisible)
    116         return WKBundlePageUIElementVisibilityUnknown;
     136        return API::InjectedBundle::PageUIClient::UIElementVisibility::Unknown;
    117137   
    118     return m_client.menuBarIsVisible(toAPI(page), m_client.base.clientInfo);
    119 }
    120 
    121 WKBundlePageUIElementVisibility InjectedBundlePageUIClient::toolbarsAreVisible(WebPage* page)
     138    return toUIElementVisibility(m_client.menuBarIsVisible(toAPI(page), m_client.base.clientInfo));
     139}
     140
     141API::InjectedBundle::PageUIClient::UIElementVisibility InjectedBundlePageUIClient::toolbarsAreVisible(WebPage* page)
    122142{
    123143    if (!m_client.toolbarsAreVisible)
    124         return WKBundlePageUIElementVisibilityUnknown;
     144        return API::InjectedBundle::PageUIClient::UIElementVisibility::Unknown;
    125145   
    126     return m_client.toolbarsAreVisible(toAPI(page), m_client.base.clientInfo);
     146    return toUIElementVisibility(m_client.toolbarsAreVisible(toAPI(page), m_client.base.clientInfo));
    127147}
    128148
  • trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageUIClient.h

    r159994 r166879  
    2828
    2929#include "APIClient.h"
     30#include "APIInjectedBundlePageUIClient.h"
    3031#include "WKBundlePage.h"
    3132#include "WebEvent.h"
     
    5354class WebSecurityOrigin;
    5455
    55 class InjectedBundlePageUIClient : public API::Client<WKBundlePageUIClientBase> {
     56class InjectedBundlePageUIClient : public API::Client<WKBundlePageUIClientBase>, public API::InjectedBundle::PageUIClient {
    5657public:
    57     void willAddMessageToConsole(WebPage*, const String& message, int32_t lineNumber);
    58     void willSetStatusbarText(WebPage*, const String&);
    59     void willRunJavaScriptAlert(WebPage*, const String&, WebFrame*);
    60     void willRunJavaScriptConfirm(WebPage*, const String&, WebFrame*);
    61     void willRunJavaScriptPrompt(WebPage*, const String&, const String&, WebFrame*);
    62     void mouseDidMoveOverElement(WebPage*, const WebCore::HitTestResult&, WebEvent::Modifiers, RefPtr<API::Object>& userData);
    63     void pageDidScroll(WebPage*);
     58    explicit InjectedBundlePageUIClient(const WKBundlePageUIClientBase*);
    6459
    65     String shouldGenerateFileForUpload(WebPage*, const String& originalFilePath);
    66     String generateFileForUpload(WebPage*, const String& originalFilePath);
     60    void willAddMessageToConsole(WebPage*, const String& message, int32_t lineNumber) override;
     61    void willSetStatusbarText(WebPage*, const String&) override;
     62    void willRunJavaScriptAlert(WebPage*, const String&, WebFrame*) override;
     63    void willRunJavaScriptConfirm(WebPage*, const String&, WebFrame*) override;
     64    void willRunJavaScriptPrompt(WebPage*, const String&, const String&, WebFrame*) override;
     65    void mouseDidMoveOverElement(WebPage*, const WebCore::HitTestResult&, WebEvent::Modifiers, RefPtr<API::Object>& userData) override;
     66    void pageDidScroll(WebPage*) override;
     67
     68    String shouldGenerateFileForUpload(WebPage*, const String& originalFilePath) override;
     69    String generateFileForUpload(WebPage*, const String& originalFilePath) override;
    6770   
    68     WKBundlePageUIElementVisibility statusBarIsVisible(WebPage*);
    69     WKBundlePageUIElementVisibility menuBarIsVisible(WebPage*);
    70     WKBundlePageUIElementVisibility toolbarsAreVisible(WebPage*);
     71    UIElementVisibility statusBarIsVisible(WebPage*) override;
     72    UIElementVisibility menuBarIsVisible(WebPage*) override;
     73    UIElementVisibility toolbarsAreVisible(WebPage*) override;
    7174
    72     void didReachApplicationCacheOriginQuota(WebPage*, WebSecurityOrigin*, int64_t totalBytesNeeded);
    73     uint64_t didExceedDatabaseQuota(WebPage*, WebSecurityOrigin*, const String& databaseName, const String& databaseDisplayName, uint64_t currentQuotaBytes, uint64_t currentOriginUsageBytes, uint64_t currentDatabaseUsageBytes, uint64_t expectedUsageBytes);
     75    void didReachApplicationCacheOriginQuota(WebPage*, WebSecurityOrigin*, int64_t totalBytesNeeded) override;
     76    uint64_t didExceedDatabaseQuota(WebPage*, WebSecurityOrigin*, const String& databaseName, const String& databaseDisplayName, uint64_t currentQuotaBytes, uint64_t currentOriginUsageBytes, uint64_t currentDatabaseUsageBytes, uint64_t expectedUsageBytes) override;
    7477
    75     String plugInStartLabelTitle(const String& mimeType) const;
    76     String plugInStartLabelSubtitle(const String& mimeType) const;
    77     String plugInExtraStyleSheet() const;
    78     String plugInExtraScript() const;
    79 
     78    String plugInStartLabelTitle(const String& mimeType) const override;
     79    String plugInStartLabelSubtitle(const String& mimeType) const override;
     80    String plugInExtraStyleSheet() const override;
     81    String plugInExtraScript() const override;
    8082};
    8183
  • trunk/Source/WebKit2/WebProcess/Storage/StorageAreaMap.cpp

    r160464 r166879  
    3636#include "WebProcess.h"
    3737#include <WebCore/DOMWindow.h>
     38#include <WebCore/Document.h>
    3839#include <WebCore/MainFrame.h>
    3940#include <WebCore/Page.h>
  • trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp

    r166779 r166879  
    242242bool WebChromeClient::toolbarsVisible()
    243243{
    244     WKBundlePageUIElementVisibility toolbarsVisibility = m_page->injectedBundleUIClient().toolbarsAreVisible(m_page);
    245     if (toolbarsVisibility != WKBundlePageUIElementVisibilityUnknown)
    246         return toolbarsVisibility == WKBundlePageUIElementVisible;
     244    API::InjectedBundle::PageUIClient::UIElementVisibility toolbarsVisibility = m_page->injectedBundleUIClient().toolbarsAreVisible(m_page);
     245    if (toolbarsVisibility != API::InjectedBundle::PageUIClient::UIElementVisibility::Unknown)
     246        return toolbarsVisibility == API::InjectedBundle::PageUIClient::UIElementVisibility::Visible;
    247247   
    248248    bool toolbarsAreVisible = true;
     
    260260bool WebChromeClient::statusbarVisible()
    261261{
    262     WKBundlePageUIElementVisibility statusbarVisibility = m_page->injectedBundleUIClient().statusBarIsVisible(m_page);
    263     if (statusbarVisibility != WKBundlePageUIElementVisibilityUnknown)
    264         return statusbarVisibility == WKBundlePageUIElementVisible;
     262    API::InjectedBundle::PageUIClient::UIElementVisibility statusbarVisibility = m_page->injectedBundleUIClient().statusBarIsVisible(m_page);
     263    if (statusbarVisibility != API::InjectedBundle::PageUIClient::UIElementVisibility::Unknown)
     264        return statusbarVisibility == API::InjectedBundle::PageUIClient::UIElementVisibility::Visible;
    265265
    266266    bool statusBarIsVisible = true;
     
    289289bool WebChromeClient::menubarVisible()
    290290{
    291     WKBundlePageUIElementVisibility menubarVisibility = m_page->injectedBundleUIClient().menuBarIsVisible(m_page);
    292     if (menubarVisibility != WKBundlePageUIElementVisibilityUnknown)
    293         return menubarVisibility == WKBundlePageUIElementVisible;
     291    API::InjectedBundle::PageUIClient::UIElementVisibility menubarVisibility = m_page->injectedBundleUIClient().menuBarIsVisible(m_page);
     292    if (menubarVisibility != API::InjectedBundle::PageUIClient::UIElementVisibility::Unknown)
     293        return menubarVisibility == API::InjectedBundle::PageUIClient::UIElementVisibility::Visible;
    294294   
    295295    bool menuBarIsVisible = true;
  • trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp

    r166818 r166879  
    264264    , m_setCanStartMediaTimer(RunLoop::main(), this, &WebPage::setCanStartMediaTimerFired)
    265265    , m_sendDidUpdateViewStateTimer(RunLoop::main(), this, &WebPage::didUpdateViewStateTimerFired)
     266    , m_uiClient(std::make_unique<API::InjectedBundle::PageUIClient>())
    266267    , m_findController(this)
    267268#if ENABLE(INPUT_TYPE_COLOR)
     
    563564}
    564565
    565 void WebPage::initializeInjectedBundleUIClient(WKBundlePageUIClientBase* client)
    566 {
    567     m_uiClient.initialize(client);
     566void WebPage::setInjectedBundleUIClient(std::unique_ptr<API::InjectedBundle::PageUIClient> uiClient)
     567{
     568    if (!uiClient) {
     569        m_uiClient = std::make_unique<API::InjectedBundle::PageUIClient>();
     570        return;
     571    }
     572
     573    m_uiClient = std::move(uiClient);
    568574}
    569575
     
    878884    m_policyClient.initialize(0);
    879885    m_resourceLoadClient.initialize(0);
    880     m_uiClient.initialize(0);
     886    m_uiClient = std::make_unique<API::InjectedBundle::PageUIClient>();
    881887#if ENABLE(FULLSCREEN_API)
    882888    m_fullScreenClient.initialize(0);
     
    16091615void WebPage::pageDidScroll()
    16101616{
    1611     m_uiClient.pageDidScroll(this);
     1617    m_uiClient->pageDidScroll(this);
    16121618
    16131619    send(Messages::WebPageProxy::PageDidScroll());
  • trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h

    r166861 r166879  
    2727#define WebPage_h
    2828
     29#include "APIInjectedBundlePageUIClient.h"
    2930#include "APIObject.h"
    3031#include "DrawingArea.h"
     
    3940#include "InjectedBundlePagePolicyClient.h"
    4041#include "InjectedBundlePageResourceLoadClient.h"
    41 #include "InjectedBundlePageUIClient.h"
    4242#include "MessageReceiver.h"
    4343#include "MessageSender.h"
     
    116116
    117117namespace WebCore {
     118    class DocumentLoader;
    118119    class GraphicsContext;
    119120    class Frame;
     
    284285    void initializeInjectedBundlePolicyClient(WKBundlePagePolicyClientBase*);
    285286    void initializeInjectedBundleResourceLoadClient(WKBundlePageResourceLoadClientBase*);
    286     void initializeInjectedBundleUIClient(WKBundlePageUIClientBase*);
     287    void setInjectedBundleUIClient(std::unique_ptr<API::InjectedBundle::PageUIClient>);
    287288#if ENABLE(FULLSCREEN_API)
    288289    void initializeInjectedBundleFullScreenClient(WKBundlePageFullScreenClientBase*);
     
    298299    InjectedBundlePagePolicyClient& injectedBundlePolicyClient() { return m_policyClient; }
    299300    InjectedBundlePageResourceLoadClient& injectedBundleResourceLoadClient() { return m_resourceLoadClient; }
    300     InjectedBundlePageUIClient& injectedBundleUIClient() { return m_uiClient; }
     301    API::InjectedBundle::PageUIClient& injectedBundleUIClient() { return *m_uiClient.get(); }
    301302    InjectedBundlePageDiagnosticLoggingClient& injectedBundleDiagnosticLoggingClient() { return m_logDiagnosticMessageClient; }
    302303#if ENABLE(FULLSCREEN_API)
     
    10771078    InjectedBundlePagePolicyClient m_policyClient;
    10781079    InjectedBundlePageResourceLoadClient m_resourceLoadClient;
    1079     InjectedBundlePageUIClient m_uiClient;
     1080    std::unique_ptr<API::InjectedBundle::PageUIClient> m_uiClient;
    10801081#if ENABLE(FULLSCREEN_API)
    10811082    InjectedBundlePageFullScreenClient m_fullScreenClient;
  • trunk/Source/WebKit2/WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm

    r165014 r166879  
    3636#import "WKStringCF.h"
    3737#import <WebCore/AXObjectCache.h>
     38#import <WebCore/Document.h>
    3839#import <WebCore/FrameView.h>
    3940#import <WebCore/MainFrame.h>
Note: See TracChangeset for help on using the changeset viewer.