Changeset 64029 in webkit


Ignore:
Timestamp:
Jul 25, 2010 11:03:36 PM (14 years ago)
Author:
Darin Adler
Message:

2010-07-25 Darin Adler <Darin Adler>

Reviewed by Maciej Stachowiak.

WebKitTestRunner needs to support layoutTestController.keepWebHistory
https://bugs.webkit.org/show_bug.cgi?id=42323

  • platform/mac-wk2/Skipped: Removed the tests that needed only keepWebHistory and computedStyleIncludingVisitedInfo. Moved the other tests in the keepWebHistory section of the file into the other appropriate lists.

2010-07-25 Darin Adler <Darin Adler>

Reviewed by Maciej Stachowiak.

WebKitTestRunner needs to support layoutTestController.keepWebHistory
https://bugs.webkit.org/show_bug.cgi?id=42323

Added keepWebHistory and computedStyleIncludingVisitedInfo.

Also fixed misspellings of the word "receive".

Also tweaked the names of some of the LayoutTestController members.

  • WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm: Added support for a type named "object" that is passed and returns as a JSValueRef.
  • WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl: Added keepWebHistory and computedStyleIncludingVisitedInfo. Also put setAcceptsEditing up nearer the top.
  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp: (WTR::InjectedBundle::_didReceiveMessage): Fixed mispellings of receive. (WTR::InjectedBundle::initialize): Ditto. (WTR::InjectedBundle::didReceiveMessage): Ditto. (WTR::InjectedBundle::reset): Reset the state of visited links between tests. Also eliminated the unused argument to the LayoutTestController create function. (WTR::InjectedBundle::setShouldTrackVisitedLinks): Added.
  • WebKitTestRunner/InjectedBundle/InjectedBundle.h: Ditto.
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: (WTR::InjectedBundlePage::shouldBeginEditing): Call shouldAllowEditing instead of acceptsEditing. (WTR::InjectedBundlePage::shouldEndEditing): Ditto. (WTR::InjectedBundlePage::shouldInsertNode): Ditto. (WTR::InjectedBundlePage::shouldInsertText): Ditto. (WTR::InjectedBundlePage::shouldDeleteRange): Ditto. (WTR::InjectedBundlePage::shouldChangeSelectedRange): Ditto. (WTR::InjectedBundlePage::shouldApplyStyle): Ditto.
  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp: (WTR::LayoutTestController::create): Removed uneeded argument. (WTR::LayoutTestController::LayoutTestController): Removed unneeded argument. Updated for rename of m_acceptsEditing to m_shouldAllowEditing. (WTR::LayoutTestController::numberOfActiveAnimations): Added some FIXMEs about the fact that this works on the main frame. (WTR::LayoutTestController::pauseAnimationAtTimeOnElementWithId): Ditto. (WTR::LayoutTestController::keepWebHistory): Added. (WTR::LayoutTestController::computedStyleIncludingVisitedInfo): Added. (WTR::JSObjectSetProperty): Added. Helper to make the function below cleaner. (WTR::LayoutTestController::makeWindowObject): Changed to use the overload of JSObjectSetProperty above.
  • WebKitTestRunner/InjectedBundle/LayoutTestController.h: Changes to match above.
  • WebKitTestRunner/TestController.cpp: (WTR::TestController::initialize): Fixed mispellings of receive. (WTR::TestController::_didReceiveMessageFromInjectedBundle): Ditto. (WTR::TestController::didReceiveMessageFromInjectedBundle): Ditto.
  • WebKitTestRunner/TestController.h: Ditto.
  • WebKitTestRunner/TestInvocation.cpp: (WTR::TestInvocation::didReceiveMessageFromInjectedBundle): Ditto.
  • WebKitTestRunner/TestInvocation.h: Ditto.

2010-07-25 Darin Adler <Darin Adler>

Reviewed by Maciej Stachowiak.

WebKitTestRunner needs to support layoutTestController.keepWebHistory
https://bugs.webkit.org/show_bug.cgi?id=42323

Added WKBundleSetShouldTrackVisitedLinks, WKBundleRemoveAllVisitedLinks,
and WKBundleFrameGetComputedStyleIncludingVisitedInfo.

Also fixed misspellings of the word "receive".

  • WebProcess/InjectedBundle/API/c/WKBundle.cpp: (WKBundleSetShouldTrackVisitedLinks): Added. (WKBundleRemoveAllVisitedLinks): Added.
  • WebProcess/InjectedBundle/API/c/WKBundle.h: Added functions and fixed mispellings of receive.
  • WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: (WKBundleFrameGetJavaScriptContext): Moved the code from here into WebFrame, to be consistent with the rest of the functions in this file. (WKBundleFrameGetComputedStyleIncludingVisitedInfo): Added.
  • WebProcess/InjectedBundle/API/c/WKBundleFrame.h: Added WKBundleFrameGetComputedStyleIncludingVisitedInfo and tried to rearrange the file to be more logically ordered and grouped.
  • WebProcess/InjectedBundle/InjectedBundle.cpp: (WebKit::InjectedBundle::setShouldTrackVisitedLinks): Added. (WebKit::InjectedBundle::removeAllVisitedLinks): Added. (WebKit::InjectedBundle::didReceiveMessage): Fixed mispellings of receive.
  • WebProcess/InjectedBundle/InjectedBundle.h: Ditto.
  • WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::jsContext): Added. Contains the code that used to be in WKBundleFrameGetJavaScriptContext. (WebKit::WebFrame::computedStyleIncludingVisitedInfo): Added.
  • WebProcess/WebPage/WebFrame.h: Ditto.
  • UIProcess/API/C/WKContext.h: Fixed misspellings of receive.
  • UIProcess/WebContext.cpp: (WebKit::WebContext::didReceiveMessageFromInjectedBundle): Ditto.
  • UIProcess/WebContext.h: Ditto.
  • UIProcess/WebContextInjectedBundleClient.cpp: (WebKit::WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle): Ditto.
  • UIProcess/WebContextInjectedBundleClient.h: Ditto.
  • UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::forwardMessageToWebContext): Ditto.
  • WebProcess/WebProcess.cpp: (WebKit::WebProcess::forwardMessageToInjectedBundle): Ditto.
Location:
trunk
Files:
30 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r64024 r64029  
     12010-07-25  Darin Adler  <darin@apple.com>
     2
     3        Reviewed by Maciej Stachowiak.
     4
     5        WebKitTestRunner needs to support layoutTestController.keepWebHistory
     6        https://bugs.webkit.org/show_bug.cgi?id=42323
     7
     8        * platform/mac-wk2/Skipped: Removed the tests that needed only keepWebHistory
     9        and computedStyleIncludingVisitedInfo. Moved the other tests in the
     10        keepWebHistory section of the file into the other appropriate lists.
     11
    1122010-07-25  Adam Barth  <abarth@webkit.org>
    213
  • trunk/LayoutTests/platform/mac-wk2/Skipped

    r64020 r64029  
    16381638fast/harness/show-modal-dialog.html
    16391639fast/history/history_reload.html
     1640fast/history/window-open.html
    16401641fast/loader/cancel-load-during-port-block-timer.html
    16411642fast/loader/crash-copying-backforwardlist.html
     
    16931694fast/loader/stateobjects/pushstate-object-types.html
    16941695fast/loader/subframe-navigate-during-main-frame-load.html
     1696http/tests/history/redirect-200-refresh-0-seconds.pl
    16951697http/tests/history/redirect-200-refresh-2-seconds.pl
    16961698http/tests/history/redirect-301.pl
     
    16981700http/tests/history/redirect-303.pl
    16991701http/tests/history/redirect-307.pl
     1702http/tests/history/redirect-js-document-location-0-seconds.html
     1703http/tests/history/redirect-js-document-location-2-seconds.html
     1704http/tests/history/redirect-js-document-location-before-load.html
     1705http/tests/history/redirect-js-form-submit-0-seconds.html
     1706http/tests/history/redirect-js-form-submit-2-seconds.html
     1707http/tests/history/redirect-js-form-submit-before-load.html
     1708http/tests/history/redirect-js-location-0-seconds.html
    17001709http/tests/history/redirect-js-location-2-seconds.html
     1710http/tests/history/redirect-js-location-assign-0-seconds.html
     1711http/tests/history/redirect-js-location-assign-2-seconds.html
     1712http/tests/history/redirect-js-location-assign-before-load.html
     1713http/tests/history/redirect-js-location-before-load.html
     1714http/tests/history/redirect-js-location-href-0-seconds.html
     1715http/tests/history/redirect-js-location-href-2-seconds.html
     1716http/tests/history/redirect-js-location-href-before-load.html
     1717http/tests/history/redirect-js-location-replace-0-seconds.html
     1718http/tests/history/redirect-js-location-replace-2-seconds.html
     1719http/tests/history/redirect-js-location-replace-before-load.html
     1720http/tests/history/redirect-meta-refresh-0-seconds.html
     1721http/tests/history/redirect-meta-refresh-2-seconds.html
    17011722http/tests/incremental/frame-focus-before-load.html
    17021723http/tests/navigation/anchor-basic.html
     
    17671788http/tests/navigation/window-open-adds-history-item2.html
    17681789
    1769 # WebKitTestRunner needs to support layoutTestController.keepWebHistory
    1770 # <https://bugs.webkit.org/show_bug.cgi?id=42323>
    1771 fast/history/multiple-classes-visited.html
    1772 fast/history/nested-visited-test.html
    1773 fast/history/self-is-visited.html
    1774 fast/history/sibling-visited-test.html
    1775 fast/history/window-open.html
    1776 http/tests/history/redirect-200-refresh-0-seconds.pl
    1777 http/tests/history/redirect-js-document-location-0-seconds.html
    1778 http/tests/history/redirect-js-document-location-2-seconds.html
    1779 http/tests/history/redirect-js-document-location-before-load.html
    1780 http/tests/history/redirect-js-form-submit-0-seconds.html
    1781 http/tests/history/redirect-js-form-submit-before-load.html
    1782 http/tests/history/redirect-js-location-0-seconds.html
    1783 http/tests/history/redirect-js-location-assign-0-seconds.html
    1784 http/tests/history/redirect-js-location-assign-2-seconds.html
    1785 http/tests/history/redirect-js-location-assign-before-load.html
    1786 http/tests/history/redirect-js-location-before-load.html
    1787 http/tests/history/redirect-js-location-href-0-seconds.html
    1788 http/tests/history/redirect-js-location-href-2-seconds.html
    1789 http/tests/history/redirect-js-location-href-before-load.html
    1790 http/tests/history/redirect-js-location-replace-0-seconds.html
    1791 http/tests/history/redirect-js-location-replace-2-seconds.html
    1792 http/tests/history/redirect-js-location-replace-before-load.html
    1793 http/tests/history/redirect-meta-refresh-0-seconds.html
    1794 http/tests/history/redirect-meta-refresh-2-seconds.html
    1795 http/tests/history/redirect-js-form-submit-2-seconds.html
    1796 
    17971790# WebKitTestRunner needs to support layoutTestController.dumpDOMAsWebArchive
    17981791# <https://bugs.webkit.org/show_bug.cgi?id=42324>
  • trunk/WebKit2/ChangeLog

    r64020 r64029  
     12010-07-25  Darin Adler  <darin@apple.com>
     2
     3        Reviewed by Maciej Stachowiak.
     4
     5        WebKitTestRunner needs to support layoutTestController.keepWebHistory
     6        https://bugs.webkit.org/show_bug.cgi?id=42323
     7
     8        Added WKBundleSetShouldTrackVisitedLinks, WKBundleRemoveAllVisitedLinks,
     9        and WKBundleFrameGetComputedStyleIncludingVisitedInfo.
     10
     11        Also fixed misspellings of the word "receive".
     12
     13        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
     14        (WKBundleSetShouldTrackVisitedLinks): Added.
     15        (WKBundleRemoveAllVisitedLinks): Added.
     16        * WebProcess/InjectedBundle/API/c/WKBundle.h: Added functions and
     17        fixed mispellings of receive.
     18
     19        * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
     20        (WKBundleFrameGetJavaScriptContext): Moved the code from here into WebFrame,
     21        to be consistent with the rest of the functions in this file.
     22        (WKBundleFrameGetComputedStyleIncludingVisitedInfo): Added.
     23        * WebProcess/InjectedBundle/API/c/WKBundleFrame.h: Added
     24        WKBundleFrameGetComputedStyleIncludingVisitedInfo and tried to rearrange the
     25        file to be more logically ordered and grouped.
     26
     27        * WebProcess/InjectedBundle/InjectedBundle.cpp:
     28        (WebKit::InjectedBundle::setShouldTrackVisitedLinks): Added.
     29        (WebKit::InjectedBundle::removeAllVisitedLinks): Added.
     30        (WebKit::InjectedBundle::didReceiveMessage): Fixed mispellings of receive.
     31        * WebProcess/InjectedBundle/InjectedBundle.h: Ditto.
     32
     33        * WebProcess/WebPage/WebFrame.cpp:
     34        (WebKit::WebFrame::jsContext): Added. Contains the code that used to be in
     35        WKBundleFrameGetJavaScriptContext.
     36        (WebKit::WebFrame::computedStyleIncludingVisitedInfo): Added.
     37        * WebProcess/WebPage/WebFrame.h: Ditto.
     38
     39        * UIProcess/API/C/WKContext.h: Fixed misspellings of receive.
     40        * UIProcess/WebContext.cpp:
     41        (WebKit::WebContext::didReceiveMessageFromInjectedBundle): Ditto.
     42        * UIProcess/WebContext.h: Ditto.
     43        * UIProcess/WebContextInjectedBundleClient.cpp:
     44        (WebKit::WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle): Ditto.
     45        * UIProcess/WebContextInjectedBundleClient.h: Ditto.
     46        * UIProcess/WebProcessProxy.cpp:
     47        (WebKit::WebProcessProxy::forwardMessageToWebContext): Ditto.
     48        * WebProcess/WebProcess.cpp:
     49        (WebKit::WebProcess::forwardMessageToInjectedBundle): Ditto.
     50
    1512010-07-25  Alexey Proskuryakov  <ap@apple.com>
    252
  • trunk/WebKit2/UIProcess/API/C/WKContext.h

    r61579 r64029  
    3434
    3535// Policy Client.
    36 typedef void (*WKContextDidRecieveMessageFromInjectedBundleCallback)(WKContextRef page, WKStringRef message, const void *clientInfo);
     36typedef void (*WKContextDidReceiveMessageFromInjectedBundleCallback)(WKContextRef page, WKStringRef message, const void *clientInfo);
    3737
    3838struct WKContextInjectedBundleClient {
    3939    int                                                                 version;
    4040    const void *                                                        clientInfo;
    41     WKContextDidRecieveMessageFromInjectedBundleCallback                didRecieveMessageFromInjectedBundle;
     41    WKContextDidReceiveMessageFromInjectedBundleCallback                didReceiveMessageFromInjectedBundle;
    4242};
    4343typedef struct WKContextInjectedBundleClient WKContextInjectedBundleClient;
  • trunk/WebKit2/UIProcess/WebContext.cpp

    r63621 r64029  
    150150// InjectedBundle client
    151151
    152 void WebContext::didRecieveMessageFromInjectedBundle(const WebCore::String& message)
     152void WebContext::didReceiveMessageFromInjectedBundle(const WebCore::String& message)
    153153{
    154     m_injectedBundleClient.didRecieveMessageFromInjectedBundle(this, message);
     154    m_injectedBundleClient.didReceiveMessageFromInjectedBundle(this, message);
    155155}
    156156
  • trunk/WebKit2/UIProcess/WebContext.h

    r63664 r64029  
    7777
    7878    // InjectedBundle client
    79     void didRecieveMessageFromInjectedBundle(const WebCore::String&);
     79    void didReceiveMessageFromInjectedBundle(const WebCore::String&);
    8080
    8181    void postMessageToInjectedBundle(WebCore::StringImpl*);
  • trunk/WebKit2/UIProcess/WebContextInjectedBundleClient.cpp

    r61579 r64029  
    4646}
    4747
    48 void WebContextInjectedBundleClient::didRecieveMessageFromInjectedBundle(WebContext* context, const String& message)
     48void WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle(WebContext* context, const String& message)
    4949{
    50     if (!m_client.didRecieveMessageFromInjectedBundle)
     50    if (!m_client.didReceiveMessageFromInjectedBundle)
    5151        return;
    5252
    53     m_client.didRecieveMessageFromInjectedBundle(toRef(context), toRef(message.impl()), m_client.clientInfo);
     53    m_client.didReceiveMessageFromInjectedBundle(toRef(context), toRef(message.impl()), m_client.clientInfo);
    5454}
    5555
  • trunk/WebKit2/UIProcess/WebContextInjectedBundleClient.h

    r61579 r64029  
    4242    void initialize(WKContextInjectedBundleClient*);
    4343
    44     void didRecieveMessageFromInjectedBundle(WebContext*, const WebCore::String&);
     44    void didReceiveMessageFromInjectedBundle(WebContext*, const WebCore::String&);
    4545
    4646private:
  • trunk/WebKit2/UIProcess/WebProcessProxy.cpp

    r63825 r64029  
    185185void WebProcessProxy::forwardMessageToWebContext(const String& message)
    186186{
    187     m_context->didRecieveMessageFromInjectedBundle(message);
     187    m_context->didReceiveMessageFromInjectedBundle(message);
    188188}
    189189
  • trunk/WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.cpp

    r61579 r64029  
    4242    toWK(bundleRef)->postMessage(toWK(messageRef));
    4343}
     44
     45void WKBundleSetShouldTrackVisitedLinks(WKBundleRef bundleRef, bool shouldTrackVisitedLinks)
     46{
     47    toWK(bundleRef)->setShouldTrackVisitedLinks(shouldTrackVisitedLinks);
     48}
     49
     50void WKBundleRemoveAllVisitedLinks(WKBundleRef bundleRef)
     51{
     52    toWK(bundleRef)->removeAllVisitedLinks();
     53}
  • trunk/WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.h

    r61689 r64029  
    3737typedef void (*WKBundleDidCreatePageCallback)(WKBundleRef bundle, WKBundlePageRef page, const void *clientInfo);
    3838typedef void (*WKBundleWillDestroyPageCallback)(WKBundleRef bundle, WKBundlePageRef page, const void *clientInfo);
    39 typedef void (*WKBundleDidRecieveMessageCallback)(WKBundleRef bundle, WKStringRef message, const void *clientInfo);
     39typedef void (*WKBundleDidReceiveMessageCallback)(WKBundleRef bundle, WKStringRef message, const void *clientInfo);
    4040
    4141struct WKBundleClient {
     
    4444    WKBundleDidCreatePageCallback                                       didCreatePage;
    4545    WKBundleWillDestroyPageCallback                                     willDestroyPage;
    46     WKBundleDidRecieveMessageCallback                                   didRecieveMessage;
     46    WKBundleDidReceiveMessageCallback                                   didReceiveMessage;
    4747};
    4848typedef struct WKBundleClient WKBundleClient;
     
    5252WK_EXPORT void WKBundlePostMessage(WKBundleRef bundle, WKStringRef message);
    5353
     54WK_EXPORT void WKBundleSetShouldTrackVisitedLinks(WKBundleRef bundle, bool shouldTrackVisitedLinks);
     55WK_EXPORT void WKBundleRemoveAllVisitedLinks(WKBundleRef bundle);
     56
    5457#ifdef __cplusplus
    5558}
  • trunk/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp

    r63949 r64029  
    2929#include "WKBundleAPICast.h"
    3030#include "WebFrame.h"
    31 #include <JavaScriptCore/APICast.h>
    3231#include <WebCore/Frame.h>
    3332
     
    6261JSGlobalContextRef WKBundleFrameGetJavaScriptContext(WKBundleFrameRef frameRef)
    6362{
    64     // FIXME: Is there a way to get this and know that it's a JSGlobalContextRef?
    65     // The const_cast here is a bit ugly.
    66     return const_cast<JSGlobalContextRef>(toRef(toWK(frameRef)->coreFrame()->script()->globalObject(mainThreadNormalWorld())->globalExec()));
     63    return toWK(frameRef)->jsContext();
    6764}
    6865
     
    7370    return toRef(string.impl());
    7471}
     72
     73JSValueRef WKBundleFrameGetComputedStyleIncludingVisitedInfo(WKBundleFrameRef frameRef, JSObjectRef element)
     74{
     75    return toWK(frameRef)->computedStyleIncludingVisitedInfo(element);
     76}
  • trunk/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleFrame.h

    r63949 r64029  
    4040
    4141WK_EXPORT bool WKBundleFrameIsMainFrame(WKBundleFrameRef frame);
     42WK_EXPORT WKArrayRef WKBundleFrameCopyChildFrames(WKBundleFrameRef frame);
     43
     44WK_EXPORT WKStringRef WKBundleFrameCopyName(WKBundleFrameRef frame);
     45WK_EXPORT WKURLRef WKBundleFrameGetURL(WKBundleFrameRef frame);
    4246
    4347WK_EXPORT JSGlobalContextRef WKBundleFrameGetJavaScriptContext(WKBundleFrameRef frame);
    44 
    45 WK_EXPORT WKURLRef WKBundleFrameGetURL(WKBundleFrameRef frame);
    46 
    47 WK_EXPORT WKArrayRef WKBundleFrameCopyChildFrames(WKBundleFrameRef frame);
     48WK_EXPORT JSValueRef WKBundleFrameGetComputedStyleIncludingVisitedInfo(WKBundleFrameRef frame, JSObjectRef element);
    4849
    4950WK_EXPORT unsigned WKBundleFrameGetNumberOfActiveAnimations(WKBundleFrameRef frame);
    50 
    5151WK_EXPORT bool WKBundleFramePauseAnimationOnElementWithId(WKBundleFrameRef frame, WKStringRef name, WKStringRef elementID, double time);
    52 
    53 WK_EXPORT WKStringRef WKBundleFrameCopyName(WKBundleFrameRef frame);
    5452
    5553#ifdef __cplusplus
  • trunk/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp

    r61719 r64029  
    3131#include "WebProcess.h"
    3232#include "WebProcessProxyMessageKinds.h"
     33#include <WebCore/PageGroup.h>
    3334
    3435using namespace WebCore;
     
    6061}
    6162
     63void InjectedBundle::setShouldTrackVisitedLinks(bool shouldTrackVisitedLinks)
     64{
     65    PageGroup::setShouldTrackVisitedLinks(shouldTrackVisitedLinks);
     66}
     67
     68void InjectedBundle::removeAllVisitedLinks()
     69{
     70    PageGroup::removeAllVisitedLinks();
     71}
     72
    6273void InjectedBundle::didCreatePage(WebPage* page)
    6374{
     
    7283}
    7384
    74 void InjectedBundle::didRecieveMessage(const WebCore::String& message)
     85void InjectedBundle::didReceiveMessage(const WebCore::String& message)
    7586{
    76     if (m_client.didRecieveMessage)
    77         m_client.didRecieveMessage(toRef(this), toRef(message.impl()), m_client.clientInfo);
     87    if (m_client.didReceiveMessage)
     88        m_client.didReceiveMessage(toRef(this), toRef(message.impl()), m_client.clientInfo);
    7889}
    7990
  • trunk/WebKit2/WebProcess/InjectedBundle/InjectedBundle.h

    r63825 r64029  
    6161    void initializeClient(WKBundleClient*);
    6262    void postMessage(WebCore::StringImpl*);
     63    void setShouldTrackVisitedLinks(bool);
     64    void removeAllVisitedLinks();
    6365
    6466    // Callback hooks
    6567    void didCreatePage(WebPage*);
    6668    void willDestroyPage(WebPage*);
    67     void didRecieveMessage(const WebCore::String&);
     69    void didReceiveMessage(const WebCore::String&);
    6870
    6971private:
  • trunk/WebKit2/WebProcess/WebPage/WebFrame.cpp

    r63949 r64029  
    2727
    2828#include "WebPage.h"
     29#include <JavaScriptCore/APICast.h>
     30#include <JavaScriptCore/JSLock.h>
    2931#include <WebCore/AnimationController.h>
     32#include <WebCore/CSSComputedStyleDeclaration.h>
    3033#include <WebCore/Frame.h>
    3134#include <WebCore/HTMLFrameOwnerElement.h>
     35#include <WebCore/JSCSSStyleDeclaration.h>
     36#include <WebCore/JSElement.h>
    3237#include <WebCore/PlatformString.h>
    3338
     
    3641#endif
    3742
     43using namespace JSC;
    3844using namespace WebCore;
    3945
     
    245251}
    246252
     253JSGlobalContextRef WebFrame::jsContext()
     254{
     255    // FIXME: Is there a way to get this and know that it's a JSGlobalContextRef?
     256    // The const_cast here is a bit ugly.
     257    return const_cast<JSGlobalContextRef>(toRef(m_coreFrame->script()->globalObject(mainThreadNormalWorld())->globalExec()));
     258}
     259
     260JSValueRef WebFrame::computedStyleIncludingVisitedInfo(JSObjectRef elementJSObject)
     261{
     262    if (!m_coreFrame)
     263        return 0;
     264
     265    JSDOMWindow* globalObject = m_coreFrame->script()->globalObject(mainThreadNormalWorld());
     266    ExecState* exec = globalObject->globalExec();
     267
     268    if (!toJS(elementJSObject)->inherits(&JSElement::s_info))
     269        return JSValueMakeUndefined(toRef(exec));
     270
     271    RefPtr<CSSComputedStyleDeclaration> style = computedStyle(static_cast<JSElement*>(toJS(elementJSObject))->impl(), true);
     272
     273    JSLock lock(SilenceAssertionsOnly);
     274    return toRef(exec, toJS(exec, globalObject, style.get()));
     275}
    247276
    248277} // namespace WebKit
  • trunk/WebKit2/WebProcess/WebPage/WebFrame.h

    r63949 r64029  
    2929#include "ImmutableArray.h"
    3030#include "WebFrameLoaderClient.h"
     31#include <JavaScriptCore/JSBase.h>
    3132#include <WebCore/FrameLoaderClient.h>
    3233#include <WebCore/FrameLoaderTypes.h>
     
    6970    WebCore::String url() const;
    7071    PassRefPtr<ImmutableArray> childFrames();
     72    JSValueRef computedStyleIncludingVisitedInfo(JSObjectRef element);
     73    JSGlobalContextRef jsContext();
    7174
    7275    unsigned numberOfActiveAnimations();
  • trunk/WebKit2/WebProcess/WebProcess.cpp

    r63825 r64029  
    107107        return;
    108108
    109     m_injectedBundle->didRecieveMessage(message);
     109    m_injectedBundle->didReceiveMessage(message);
    110110}
    111111
  • trunk/WebKitTools/ChangeLog

    r64020 r64029  
     12010-07-25  Darin Adler  <darin@apple.com>
     2
     3        Reviewed by Maciej Stachowiak.
     4
     5        WebKitTestRunner needs to support layoutTestController.keepWebHistory
     6        https://bugs.webkit.org/show_bug.cgi?id=42323
     7
     8        Added keepWebHistory and computedStyleIncludingVisitedInfo.
     9
     10        Also fixed misspellings of the word "receive".
     11
     12        Also tweaked the names of some of the LayoutTestController members.
     13
     14        * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
     15        Added support for a type named "object" that is passed and returns as
     16        a JSValueRef.
     17
     18        * WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
     19        Added keepWebHistory and computedStyleIncludingVisitedInfo. Also
     20        put setAcceptsEditing up nearer the top.
     21
     22        * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
     23        (WTR::InjectedBundle::_didReceiveMessage): Fixed mispellings of receive.
     24        (WTR::InjectedBundle::initialize): Ditto.
     25        (WTR::InjectedBundle::didReceiveMessage): Ditto.
     26        (WTR::InjectedBundle::reset): Reset the state of visited links between
     27        tests. Also eliminated the unused argument to the LayoutTestController
     28        create function.
     29        (WTR::InjectedBundle::setShouldTrackVisitedLinks): Added.
     30        * WebKitTestRunner/InjectedBundle/InjectedBundle.h: Ditto.
     31
     32        * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
     33        (WTR::InjectedBundlePage::shouldBeginEditing): Call shouldAllowEditing
     34        instead of acceptsEditing.
     35        (WTR::InjectedBundlePage::shouldEndEditing): Ditto.
     36        (WTR::InjectedBundlePage::shouldInsertNode): Ditto.
     37        (WTR::InjectedBundlePage::shouldInsertText): Ditto.
     38        (WTR::InjectedBundlePage::shouldDeleteRange): Ditto.
     39        (WTR::InjectedBundlePage::shouldChangeSelectedRange): Ditto.
     40        (WTR::InjectedBundlePage::shouldApplyStyle): Ditto.
     41
     42        * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
     43        (WTR::LayoutTestController::create): Removed uneeded argument.
     44        (WTR::LayoutTestController::LayoutTestController): Removed unneeded
     45        argument. Updated for rename of m_acceptsEditing to m_shouldAllowEditing.
     46        (WTR::LayoutTestController::numberOfActiveAnimations): Added some FIXMEs
     47        about the fact that this works on the main frame.
     48        (WTR::LayoutTestController::pauseAnimationAtTimeOnElementWithId): Ditto.
     49        (WTR::LayoutTestController::keepWebHistory): Added.
     50        (WTR::LayoutTestController::computedStyleIncludingVisitedInfo): Added.
     51        (WTR::JSObjectSetProperty): Added. Helper to make the function below
     52        cleaner.
     53        (WTR::LayoutTestController::makeWindowObject): Changed to use the
     54        overload of JSObjectSetProperty above.
     55
     56        * WebKitTestRunner/InjectedBundle/LayoutTestController.h: Changes to
     57        match above.
     58
     59        * WebKitTestRunner/TestController.cpp:
     60        (WTR::TestController::initialize): Fixed mispellings of receive.
     61        (WTR::TestController::_didReceiveMessageFromInjectedBundle): Ditto.
     62        (WTR::TestController::didReceiveMessageFromInjectedBundle): Ditto.
     63        * WebKitTestRunner/TestController.h: Ditto.
     64        * WebKitTestRunner/TestInvocation.cpp:
     65        (WTR::TestInvocation::didReceiveMessageFromInjectedBundle): Ditto.
     66        * WebKitTestRunner/TestInvocation.h: Ditto.
     67
    1682010-07-25  Alexey Proskuryakov  <ap@apple.com>
    269
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm

    r63693 r64029  
    344344
    345345    return unless defined $idlType;
    346     return if $idlType eq "boolean" or $$self{codeGenerator}->IsNonPointerType($idlType);
     346    return if $idlType eq "boolean";
     347    return if $idlType eq "object";
     348    return if $$self{codeGenerator}->IsNonPointerType($idlType);
    347349
    348350    $$headers{_className($idlType) . ".h"} = 1;
     
    386388
    387389    return "bool" if $idlType eq "boolean";
     390    return "JSValueRef" if $idlType eq "object";
    388391    return "JSRetainPtr<JSStringRef>" if $$self{codeGenerator}->IsStringType($idlType);
    389392    return "double" if $$self{codeGenerator}->IsNonPointerType($idlType);
     
    397400    my $idlType = $signature->type;
    398401
     402    return "JSValueToBoolean(context, $argumentName)" if $idlType eq "boolean";
     403    return "$argumentName" if $idlType eq "object";
    399404    return "JSRetainPtr<JSStringRef>(Adopt, JSValueToStringCopy(context, $argumentName, 0))" if $$self{codeGenerator}->IsStringType($idlType);
    400     return "JSValueToBoolean(context, $argumentName)" if $idlType eq "boolean";
    401405    return "JSValueToNumber(context, $argumentName, 0)" if $$self{codeGenerator}->IsNonPointerType($idlType);
    402406    return "to" . _implementationClassName($idlType) . "(context, $argumentName)";
     
    414418        "double" => 1,
    415419        "JSRetainPtr<JSStringRef>" => 1,
     420        "JSValueRef" => 1,
    416421    );
    417422
     
    438443    return "JSValueMakeUndefined(context)" if $returnIDLType eq "void";
    439444    return "JSValueMakeBoolean(context, ${expression})" if $returnIDLType eq "boolean";
     445    return "${expression}" if $returnIDLType eq "object";
    440446    return "JSValueMakeNumber(context, ${expression})" if $$self{codeGenerator}->IsNonPointerType($returnIDLType);
    441447    return "toJS(context, WTF::getPtr(${expression}))";
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl

    r63930 r64029  
    3838        void dumpStatusCallbacks();
    3939
     40        // Special options.
     41        void keepWebHistory();
     42        void setAcceptsEditing(in boolean value);
     43
     44        // Special DOM functions.
     45        object computedStyleIncludingVisitedInfo(in object element);
     46
    4047        // Repaint testing.
    4148        void testRepaint();
     
    4653        int numberOfActiveAnimations();
    4754        boolean pauseAnimationAtTimeOnElementWithId(in DOMString animationName, in double time, in DOMString elementId);
    48 
    49         void setAcceptsEditing(in boolean value);
    5055    };
    5156
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp

    r63187 r64029  
    5858}
    5959
    60 void InjectedBundle::_didRecieveMessage(WKBundleRef bundle, WKStringRef message, const void *clientInfo)
     60void InjectedBundle::_didReceiveMessage(WKBundleRef bundle, WKStringRef message, const void *clientInfo)
    6161{
    62     static_cast<InjectedBundle*>(const_cast<void*>(clientInfo))->didRecieveMessage(message);
     62    static_cast<InjectedBundle*>(const_cast<void*>(clientInfo))->didReceiveMessage(message);
    6363}
    6464
     
    7272        _didCreatePage,
    7373        _willDestroyPage,
    74         _didRecieveMessage
     74        _didReceiveMessage
    7575    };
    7676    WKBundleSetClient(m_bundle, &client);
     
    9999}
    100100
    101 void InjectedBundle::didRecieveMessage(WKStringRef message)
     101void InjectedBundle::didReceiveMessage(WKStringRef message)
    102102{
    103103    CFStringRef cfMessage = WKStringCopyCFString(0, message);
     
    117117{
    118118    m_outputStream.str("");
    119     m_layoutTestController = LayoutTestController::create(std::string(""));
     119    m_layoutTestController = LayoutTestController::create();
     120    WKBundleSetShouldTrackVisitedLinks(m_bundle, false);
     121    WKBundleRemoveAllVisitedLinks(m_bundle);
     122}
     123
     124void InjectedBundle::setShouldTrackVisitedLinks()
     125{
     126    WKBundleSetShouldTrackVisitedLinks(m_bundle, true);
    120127}
    121128
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/InjectedBundle.h

    r63061 r64029  
    5353    std::ostringstream& os() { return m_outputStream; }
    5454
     55    void setShouldTrackVisitedLinks();
     56
    5557private:
    5658    InjectedBundle();
     
    5961    static void _didCreatePage(WKBundleRef bundle, WKBundlePageRef page, const void* clientInfo);
    6062    static void _willDestroyPage(WKBundleRef bundle, WKBundlePageRef page, const void* clientInfo);
    61     static void _didRecieveMessage(WKBundleRef bundle, WKStringRef message, const void *clientInfo);
     63    static void _didReceiveMessage(WKBundleRef bundle, WKStringRef message, const void *clientInfo);
    6264
    6365    void didCreatePage(WKBundlePageRef page);
    6466    void willDestroyPage(WKBundlePageRef page);
    65     void didRecieveMessage(WKStringRef message);
     67    void didReceiveMessage(WKStringRef message);
    6668
    6769    void reset();
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp

    r64020 r64029  
    505505    if (InjectedBundle::shared().layoutTestController()->shouldDumpEditingCallbacks())
    506506        InjectedBundle::shared().os() << "EDITING DELEGATE: shouldBeginEditingInDOMRange:" << range << "\n";
    507     return InjectedBundle::shared().layoutTestController()->acceptsEditing();
     507    return InjectedBundle::shared().layoutTestController()->shouldAllowEditing();
    508508}
    509509
     
    512512    if (InjectedBundle::shared().layoutTestController()->shouldDumpEditingCallbacks())
    513513        InjectedBundle::shared().os() << "EDITING DELEGATE: shouldEndEditingInDOMRange:" << range << "\n";
    514     return InjectedBundle::shared().layoutTestController()->acceptsEditing();
     514    return InjectedBundle::shared().layoutTestController()->shouldAllowEditing();
    515515}
    516516
     
    525525    if (InjectedBundle::shared().layoutTestController()->shouldDumpEditingCallbacks())
    526526        InjectedBundle::shared().os() << "EDITING DELEGATE: shouldInsertNode:" << dumpPath(node) << " replacingDOMRange:" << rangeToReplace << " givenAction:" << insertactionstring[action] << "\n";
    527     return InjectedBundle::shared().layoutTestController()->acceptsEditing();
     527    return InjectedBundle::shared().layoutTestController()->shouldAllowEditing();
    528528}
    529529
     
    538538    if (InjectedBundle::shared().layoutTestController()->shouldDumpEditingCallbacks())
    539539        InjectedBundle::shared().os() << "EDITING DELEGATE: shouldInsertText:" << text << " replacingDOMRange:" << rangeToReplace << " givenAction:" << insertactionstring[action] << "\n";
    540     return InjectedBundle::shared().layoutTestController()->acceptsEditing();
     540    return InjectedBundle::shared().layoutTestController()->shouldAllowEditing();
    541541}
    542542
     
    545545    if (InjectedBundle::shared().layoutTestController()->shouldDumpEditingCallbacks())
    546546        InjectedBundle::shared().os() << "EDITING DELEGATE: shouldDeleteDOMRange:" << range << "\n";
    547     return InjectedBundle::shared().layoutTestController()->acceptsEditing();
     547    return InjectedBundle::shared().layoutTestController()->shouldAllowEditing();
    548548}
    549549
     
    561561    if (InjectedBundle::shared().layoutTestController()->shouldDumpEditingCallbacks())
    562562        InjectedBundle::shared().os() << "EDITING DELEGATE: shouldChangeSelectedDOMRange:" << fromRange << " toDOMRange:" << toRange << " affinity:" << affinitystring[affinity] << " stillSelecting:" << boolstring[stillSelecting] << "\n";
    563     return InjectedBundle::shared().layoutTestController()->acceptsEditing();
     563    return InjectedBundle::shared().layoutTestController()->shouldAllowEditing();
    564564}
    565565
     
    568568    if (InjectedBundle::shared().layoutTestController()->shouldDumpEditingCallbacks())
    569569        InjectedBundle::shared().os() << "EDITING DELEGATE: shouldApplyStyle:" << style << " toElementsInDOMRange:" << range << "\n";
    570     return InjectedBundle::shared().layoutTestController()->acceptsEditing();
     570    return InjectedBundle::shared().layoutTestController()->shouldAllowEditing();
    571571}
    572572
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/LayoutTestController.cpp

    r63930 r64029  
    3737namespace WTR {
    3838
    39 PassRefPtr<LayoutTestController> LayoutTestController::create(const std::string& testPathOrURL)
     39PassRefPtr<LayoutTestController> LayoutTestController::create()
    4040{
    41     return adoptRef(new LayoutTestController(testPathOrURL));
     41    return adoptRef(new LayoutTestController);
    4242}
    4343
    44 LayoutTestController::LayoutTestController(const std::string& testPathOrURL)
     44LayoutTestController::LayoutTestController()
    4545    : m_whatToDump(RenderTree)
    4646    , m_shouldDumpAllFrameScrollPositions(false)
    47     , m_acceptsEditing(true)
     47    , m_shouldAllowEditing(true)
    4848    , m_dumpEditingCallbacks(false)
    4949    , m_dumpStatusCallbacks(false)
     
    5151    , m_testRepaint(false)
    5252    , m_testRepaintSweepHorizontally(false)
    53     , m_testPathOrURL(testPathOrURL)
    5453{
    5554}
     
    113112unsigned LayoutTestController::numberOfActiveAnimations() const
    114113{
     114    // FIXME: Is it OK this works only for the main frame?
     115    // FIXME: If this is needed only for the main frame, then why is the function on WKBundleFrame instead of WKBundlePage?
    115116    WKBundleFrameRef mainFrame = WKBundlePageGetMainFrame(InjectedBundle::shared().page()->page());
    116117    return WKBundleFrameGetNumberOfActiveAnimations(mainFrame);
     
    119120bool LayoutTestController::pauseAnimationAtTimeOnElementWithId(JSStringRef animationName, double time, JSStringRef elementId)
    120121{
     122    // FIXME: Is it OK this works only for the main frame?
     123    // FIXME: If this is needed only for the main frame, then why is the function on WKBundleFrame instead of WKBundlePage?
     124
    121125    RetainPtr<CFStringRef> idCF(AdoptCF, JSStringCopyCFString(kCFAllocatorDefault, elementId));
    122126    WKRetainPtr<WKStringRef> idWK(AdoptWK, WKStringCreateWithCFString(idCF.get()));
     
    128132}
    129133
     134void LayoutTestController::keepWebHistory()
     135{
     136    InjectedBundle::shared().setShouldTrackVisitedLinks();
     137}
     138
     139JSValueRef LayoutTestController::computedStyleIncludingVisitedInfo(JSValueRef element)
     140{
     141    // FIXME: Is it OK this works only for the main frame?
     142    WKBundleFrameRef mainFrame = WKBundlePageGetMainFrame(InjectedBundle::shared().page()->page());
     143    JSContextRef context = WKBundleFrameGetJavaScriptContext(mainFrame);
     144    if (!JSValueIsObject(context, element))
     145        return JSValueMakeUndefined(context);
     146    JSValueRef value = WKBundleFrameGetComputedStyleIncludingVisitedInfo(mainFrame, const_cast<JSObjectRef>(element));
     147    if (!value)
     148        return JSValueMakeUndefined(context);
     149    return value;
     150}
     151
    130152// Object Creation
     153
     154static void JSObjectSetProperty(JSContextRef context, JSObjectRef object, const char* propertyName, JSWrappable* value, JSPropertyAttributes attributes, JSValueRef* exception)
     155{
     156    JSRetainPtr<JSStringRef> propertyNameString(Adopt, JSStringCreateWithUTF8CString(propertyName));
     157    JSObjectSetProperty(context, object, propertyNameString.get(), JSWrapper::wrap(context, value), attributes, exception);
     158}
    131159
    132160void LayoutTestController::makeWindowObject(JSContextRef context, JSObjectRef windowObject, JSValueRef* exception)
    133161{
    134     JSRetainPtr<JSStringRef> layoutTestContollerStr(Adopt, JSStringCreateWithUTF8CString("layoutTestController"));
    135     JSObjectSetProperty(context, windowObject, layoutTestContollerStr.get(), JSWrapper::wrap(context, this), kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete, exception);
     162    JSObjectSetProperty(context, windowObject, "layoutTestController", this, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete, exception);
    136163}
    137164
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/LayoutTestController.h

    r63930 r64029  
    3737class LayoutTestController : public JSWrappable {
    3838public:
    39     static PassRefPtr<LayoutTestController> create(const std::string& testPathOrURL);
     39    static PassRefPtr<LayoutTestController> create();
    4040    virtual ~LayoutTestController();
    4141
     
    5656    void dumpStatusCallbacks() { m_dumpStatusCallbacks = true; }
    5757
     58    // Special options.
     59    void keepWebHistory();
     60    void setAcceptsEditing(bool value) { m_shouldAllowEditing = value; }
     61
     62    // Special DOM functions.
     63    JSValueRef computedStyleIncludingVisitedInfo(JSValueRef);
     64
    5865    // Repaint testing.
    5966    void testRepaint() { m_testRepaint = true; }
     
    6471    unsigned numberOfActiveAnimations() const;
    6572    bool pauseAnimationAtTimeOnElementWithId(JSStringRef animationName, double time, JSStringRef elementId);
    66 
    67     void setAcceptsEditing(bool value) { m_acceptsEditing = value; }
    68     bool acceptsEditing() const { return m_acceptsEditing; }
    6973
    7074    enum WhatToDump { RenderTree, MainFrameText, AllFramesText };
     
    8185    void invalidateWaitToDumpWatchdog();
    8286
     87    bool shouldAllowEditing() const { return m_shouldAllowEditing; }
     88
    8389private:
    84     LayoutTestController(const std::string& testPathOrURL);
     90    LayoutTestController();
    8591
    8692    WhatToDump m_whatToDump;
    8793    bool m_shouldDumpAllFrameScrollPositions;
    88     bool m_acceptsEditing;
     94    bool m_shouldAllowEditing;
    8995    bool m_dumpEditingCallbacks;
    9096    bool m_dumpStatusCallbacks;
     
    9399    bool m_testRepaintSweepHorizontally;
    94100
    95     std::string m_testPathOrURL;
    96    
    97101    RetainPtr<CFRunLoopTimerRef> m_waitToDumpWatchdog;
    98102};
  • trunk/WebKitTools/WebKitTestRunner/TestController.cpp

    r63700 r64029  
    8383        0,
    8484        this,
    85         _didRecieveMessageFromInjectedBundle
     85        _didReceiveMessageFromInjectedBundle
    8686    };
    8787    WKContextSetInjectedBundleClient(m_context.get(), &injectedBundlePathClient);
     
    127127}
    128128
    129 void TestController::_didRecieveMessageFromInjectedBundle(WKContextRef context, WKStringRef message, const void *clientInfo)
     129void TestController::_didReceiveMessageFromInjectedBundle(WKContextRef context, WKStringRef message, const void *clientInfo)
    130130{
    131     static_cast<TestController*>(const_cast<void*>(clientInfo))->didRecieveMessageFromInjectedBundle(message);
     131    static_cast<TestController*>(const_cast<void*>(clientInfo))->didReceiveMessageFromInjectedBundle(message);
    132132}
    133133
    134 void TestController::didRecieveMessageFromInjectedBundle(WKStringRef message)
     134void TestController::didReceiveMessageFromInjectedBundle(WKStringRef message)
    135135{
    136     m_currentInvocation->didRecieveMessageFromInjectedBundle(message);
     136    m_currentInvocation->didReceiveMessageFromInjectedBundle(message);
    137137}
    138138
  • trunk/WebKitTools/WebKitTestRunner/TestController.h

    r63700 r64029  
    6868
    6969    // WKContextInjectedBundleClient
    70     static void _didRecieveMessageFromInjectedBundle(WKContextRef context, WKStringRef message, const void*);
    71     void didRecieveMessageFromInjectedBundle(WKStringRef message);
     70    static void _didReceiveMessageFromInjectedBundle(WKContextRef context, WKStringRef message, const void*);
     71    void didReceiveMessageFromInjectedBundle(WKStringRef message);
    7272
    7373    OwnPtr<TestInvocation> m_currentInvocation;
  • trunk/WebKitTools/WebKitTestRunner/TestInvocation.cpp

    r63664 r64029  
    140140}
    141141
    142 void TestInvocation::didRecieveMessageFromInjectedBundle(WKStringRef message)
     142void TestInvocation::didReceiveMessageFromInjectedBundle(WKStringRef message)
    143143{
    144144    RetainPtr<CFStringRef> cfMessage(AdoptCF, WKStringCopyCFString(0, message));
  • trunk/WebKitTools/WebKitTestRunner/TestInvocation.h

    r63664 r64029  
    3838
    3939    void invoke();
    40     void didRecieveMessageFromInjectedBundle(WKStringRef message);
     40    void didReceiveMessageFromInjectedBundle(WKStringRef message);
    4141
    4242private:
Note: See TracChangeset for help on using the changeset viewer.