Changeset 125615 in webkit


Ignore:
Timestamp:
Aug 14, 2012 3:34:01 PM (12 years ago)
Author:
abarth@webkit.org
Message:

Delete Frame::domWindow() and Frame::existingDOMWindow()
https://bugs.webkit.org/show_bug.cgi?id=93990

Reviewed by Eric Seidel.

Source/WebCore:

These functions just call through to document()->domWindow(). This
patch updates the callers so it's clearer what's going on.

  • bindings/js/JSDOMBinding.cpp:

(WebCore::shouldAllowAccessToFrame):
(WebCore::printErrorMessageForFrame):

  • bindings/js/JSDocumentCustom.cpp:

(WebCore::JSDocument::location):
(WebCore::JSDocument::setLocation):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • bindings/js/ScriptCachedFrameData.cpp:

(WebCore::ScriptCachedFrameData::restore):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::createWindowShell):

  • bindings/objc/DOMAbstractView.mm:

(core):

  • bindings/v8/NPV8Object.cpp:

(WebCore::toV8Context):

  • bindings/v8/ScriptController.cpp:

(WebCore::createScriptObject):
(WebCore::ScriptController::createScriptObjectForPluginElement):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::initContextIfNeeded):

  • bindings/v8/V8IsolatedContext.cpp:

(WebCore::V8IsolatedContext::V8IsolatedContext):

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::retrieveFrame):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::V8DOMWindow::indexedPropertyGetter):
(WebCore::V8DOMWindow::namedPropertyGetter):

  • bindings/v8/custom/V8DocumentLocationCustom.cpp:

(WebCore::V8Document::locationAccessorGetter):
(WebCore::V8Document::locationAccessorSetter):

  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:

(WebCore::V8HTMLDocument::GetNamedProperty):

  • bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:

(WebCore::V8HTMLFrameSetElement::namedPropertyGetter):

  • dom/Document.cpp:

(WebCore::printNavigationErrorMessage):

  • dom/ViewportArguments.cpp:

(WebCore::reportViewportWarning):

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::insertDictatedText):

  • editing/Editor.cpp:

(WebCore::Editor::pasteAsPlainText):
(WebCore::Editor::pasteAsFragment):
(WebCore::Editor::setComposition):

  • history/PageCache.cpp:

(WebCore::logCanCacheFrameDecision):
(WebCore::PageCache::canCachePageContainingThisFrame):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::validateInteractively):

  • html/HTMLFrameOwnerElement.cpp:

(WebCore::HTMLFrameOwnerElement::contentWindow):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::printWarningToConsole):

  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::storageId):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::checkLoadComplete):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::begin):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopLoading):
(WebCore::FrameLoader::didOpenURL):
(WebCore::FrameLoader::checkIfDisplayInsecureContent):
(WebCore::FrameLoader::checkIfRunInsecureContent):
(WebCore::FrameLoader::reportLocalLoadFailed):
(WebCore::FrameLoader::prepareForCachedPageRestore):
(WebCore::FrameLoader::open):
(WebCore::FrameLoader::fireBeforeUnloadEvent):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::didReceiveResponse):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::abort):
(WebCore::ApplicationCacheGroup::didReceiveResponse):
(WebCore::ApplicationCacheGroup::didFinishLoading):
(WebCore::ApplicationCacheGroup::didFail):
(WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
(WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::printAccessDeniedMessage):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::isCurrentlyDisplayedInFrame):
(WebCore::DOMWindow::self):
(WebCore::DOMWindow::opener):
(WebCore::DOMWindow::parent):
(WebCore::DOMWindow::top):
(WebCore::DOMWindow::createWindow):
(WebCore::DOMWindow::open):

  • page/DOMWindowProperty.cpp:

(WebCore::DOMWindowProperty::DOMWindowProperty):
(WebCore::DOMWindowProperty::reconnectFrameFromPageCache):

  • page/DragController.cpp:

(WebCore::DragController::dispatchTextInputEventFor):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTextInputEvent):

  • page/Frame.cpp:
  • page/Frame.h:

(Frame):

  • page/Location.cpp:

(WebCore::Location::replace):
(WebCore::Location::reload):
(WebCore::Location::setLocation):

  • storage/StorageEventDispatcher.cpp:

(WebCore::StorageEventDispatcher::dispatch):

  • svg/SVGDocumentExtensions.cpp:

(WebCore::reportMessage):

  • xml/XSLStyleSheetLibxslt.cpp:

(WebCore::XSLStyleSheet::parseString):

  • xml/XSLTProcessorLibxslt.cpp:

(WebCore::docLoaderFunc):

  • xml/XSLTProcessorQt.cpp:

(WebCore::XSLTMessageHandler::handleMessage):

Source/WebKit/blackberry:

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::toOriginString):
(WebCore::ChromeClientBlackBerry::runJavaScriptAlert):
(WebCore::ChromeClientBlackBerry::runJavaScriptConfirm):
(WebCore::ChromeClientBlackBerry::runJavaScriptPrompt):
(WebCore::ChromeClientBlackBerry::runBeforeUnloadConfirmPanel):
(WebCore::ChromeClientBlackBerry::requestWebGLPermission):

Source/WebKit/chromium:

  • src/StorageAreaProxy.cpp:

(WebCore::StorageAreaProxy::dispatchLocalStorageEvent):
(WebCore::StorageAreaProxy::dispatchSessionStorageEvent):

  • src/WebDOMMessageEvent.cpp:

(WebKit::WebDOMMessageEvent::initMessageEvent):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::performance):
(WebKit::WebFrameImpl::addMessageToConsole):
(WebKit::WebFrameImpl::unloadListenerCount):
(WebKit::WebFrameImpl::addEventListener):
(WebKit::WebFrameImpl::removeEventListener):
(WebKit::WebFrameImpl::dispatchEvent):
(WebKit::WebFrameImpl::dispatchMessageEventWithOriginCheck):
(WebKit::WebFrameImpl::deliverIntent):

  • src/WebPagePopupImpl.cpp:

(WebKit::WebPagePopupImpl::initPage):

Source/WebKit/efl:

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::pendingUnloadEventCount):

  • ewk/ewk_frame.cpp:

(ewk_frame_intent_deliver):

Source/WebKit/gtk:

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::getPendingUnloadEventCount):

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _pendingFrameUnloadEventCount]):
(-[WebFrame _cacheabilityDictionary]):

Source/WebKit/qt:

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::dispatchDidFinishDocumentLoad):

Source/WebKit/win:

  • WebFrame.cpp:

(WebFrame::DOMWindow):
(WebFrame::pendingFrameUnloadEventCount):

Source/WebKit2:

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::deliverIntent):
(WebKit::WebFrame::pendingUnloadCount):

Location:
trunk/Source
Files:
64 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r125614 r125615  
     12012-08-14  Adam Barth  <abarth@webkit.org>
     2
     3        Delete Frame::domWindow() and Frame::existingDOMWindow()
     4        https://bugs.webkit.org/show_bug.cgi?id=93990
     5
     6        Reviewed by Eric Seidel.
     7
     8        These functions just call through to document()->domWindow(). This
     9        patch updates the callers so it's clearer what's going on.
     10
     11        * bindings/js/JSDOMBinding.cpp:
     12        (WebCore::shouldAllowAccessToFrame):
     13        (WebCore::printErrorMessageForFrame):
     14        * bindings/js/JSDocumentCustom.cpp:
     15        (WebCore::JSDocument::location):
     16        (WebCore::JSDocument::setLocation):
     17        * bindings/js/JSEventListener.cpp:
     18        (WebCore::JSEventListener::handleEvent):
     19        * bindings/js/ScriptCachedFrameData.cpp:
     20        (WebCore::ScriptCachedFrameData::restore):
     21        * bindings/js/ScriptController.cpp:
     22        (WebCore::ScriptController::createWindowShell):
     23        * bindings/objc/DOMAbstractView.mm:
     24        (core):
     25        * bindings/v8/NPV8Object.cpp:
     26        (WebCore::toV8Context):
     27        * bindings/v8/ScriptController.cpp:
     28        (WebCore::createScriptObject):
     29        (WebCore::ScriptController::createScriptObjectForPluginElement):
     30        * bindings/v8/V8DOMWindowShell.cpp:
     31        (WebCore::V8DOMWindowShell::initContextIfNeeded):
     32        * bindings/v8/V8IsolatedContext.cpp:
     33        (WebCore::V8IsolatedContext::V8IsolatedContext):
     34        * bindings/v8/V8Proxy.cpp:
     35        (WebCore::V8Proxy::retrieveFrame):
     36        * bindings/v8/custom/V8DOMWindowCustom.cpp:
     37        (WebCore::V8DOMWindow::indexedPropertyGetter):
     38        (WebCore::V8DOMWindow::namedPropertyGetter):
     39        * bindings/v8/custom/V8DocumentLocationCustom.cpp:
     40        (WebCore::V8Document::locationAccessorGetter):
     41        (WebCore::V8Document::locationAccessorSetter):
     42        * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
     43        (WebCore::V8HTMLDocument::GetNamedProperty):
     44        * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
     45        (WebCore::V8HTMLFrameSetElement::namedPropertyGetter):
     46        * dom/Document.cpp:
     47        (WebCore::printNavigationErrorMessage):
     48        * dom/ViewportArguments.cpp:
     49        (WebCore::reportViewportWarning):
     50        * editing/AlternativeTextController.cpp:
     51        (WebCore::AlternativeTextController::insertDictatedText):
     52        * editing/Editor.cpp:
     53        (WebCore::Editor::pasteAsPlainText):
     54        (WebCore::Editor::pasteAsFragment):
     55        (WebCore::Editor::setComposition):
     56        * history/PageCache.cpp:
     57        (WebCore::logCanCacheFrameDecision):
     58        (WebCore::PageCache::canCachePageContainingThisFrame):
     59        * html/HTMLFormElement.cpp:
     60        (WebCore::HTMLFormElement::validateInteractively):
     61        * html/HTMLFrameOwnerElement.cpp:
     62        (WebCore::HTMLFrameOwnerElement::contentWindow):
     63        * html/canvas/WebGLRenderingContext.cpp:
     64        (WebCore):
     65        (WebCore::WebGLRenderingContext::printWarningToConsole):
     66        * inspector/InspectorDOMStorageAgent.cpp:
     67        (WebCore::InspectorDOMStorageAgent::storageId):
     68        * loader/DocumentLoader.cpp:
     69        (WebCore::DocumentLoader::checkLoadComplete):
     70        * loader/DocumentWriter.cpp:
     71        (WebCore::DocumentWriter::begin):
     72        * loader/FrameLoader.cpp:
     73        (WebCore::FrameLoader::stopLoading):
     74        (WebCore::FrameLoader::didOpenURL):
     75        (WebCore::FrameLoader::checkIfDisplayInsecureContent):
     76        (WebCore::FrameLoader::checkIfRunInsecureContent):
     77        (WebCore::FrameLoader::reportLocalLoadFailed):
     78        (WebCore::FrameLoader::prepareForCachedPageRestore):
     79        (WebCore::FrameLoader::open):
     80        (WebCore::FrameLoader::fireBeforeUnloadEvent):
     81        * loader/MainResourceLoader.cpp:
     82        (WebCore::MainResourceLoader::didReceiveResponse):
     83        * loader/appcache/ApplicationCacheGroup.cpp:
     84        (WebCore::ApplicationCacheGroup::abort):
     85        (WebCore::ApplicationCacheGroup::didReceiveResponse):
     86        (WebCore::ApplicationCacheGroup::didFinishLoading):
     87        (WebCore::ApplicationCacheGroup::didFail):
     88        (WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
     89        (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
     90        (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
     91        * loader/cache/CachedResourceLoader.cpp:
     92        (WebCore::CachedResourceLoader::printAccessDeniedMessage):
     93        * page/DOMWindow.cpp:
     94        (WebCore::DOMWindow::isCurrentlyDisplayedInFrame):
     95        (WebCore::DOMWindow::self):
     96        (WebCore::DOMWindow::opener):
     97        (WebCore::DOMWindow::parent):
     98        (WebCore::DOMWindow::top):
     99        (WebCore::DOMWindow::createWindow):
     100        (WebCore::DOMWindow::open):
     101        * page/DOMWindowProperty.cpp:
     102        (WebCore::DOMWindowProperty::DOMWindowProperty):
     103        (WebCore::DOMWindowProperty::reconnectFrameFromPageCache):
     104        * page/DragController.cpp:
     105        (WebCore::DragController::dispatchTextInputEventFor):
     106        * page/EventHandler.cpp:
     107        (WebCore::EventHandler::handleTextInputEvent):
     108        * page/Frame.cpp:
     109        * page/Frame.h:
     110        (Frame):
     111        * page/Location.cpp:
     112        (WebCore::Location::replace):
     113        (WebCore::Location::reload):
     114        (WebCore::Location::setLocation):
     115        * storage/StorageEventDispatcher.cpp:
     116        (WebCore::StorageEventDispatcher::dispatch):
     117        * svg/SVGDocumentExtensions.cpp:
     118        (WebCore::reportMessage):
     119        * xml/XSLStyleSheetLibxslt.cpp:
     120        (WebCore::XSLStyleSheet::parseString):
     121        * xml/XSLTProcessorLibxslt.cpp:
     122        (WebCore::docLoaderFunc):
     123        * xml/XSLTProcessorQt.cpp:
     124        (WebCore::XSLTMessageHandler::handleMessage):
     125
    11262012-08-14  Mike West  <mkwst@chromium.org>
    2127
  • trunk/Source/WebCore/WebCore.exp.in

    r125612 r125615  
    12981298__ZNK7WebCore5Frame31displayStringModifiedByEncodingERKN3WTF6StringE
    12991299__ZNK7WebCore5Frame8settingsEv
    1300 __ZNK7WebCore5Frame9domWindowEv
    13011300__ZNK7WebCore5Range11startOffsetERi
    13021301__ZNK7WebCore5Range12endContainerERi
  • trunk/Source/WebCore/bindings/js/JSDOMBinding.cpp

    r125484 r125615  
    225225    bool result = BindingSecurity::shouldAllowAccessToFrame(exec, frame, DoNotReportSecurityError);
    226226    // FIXME: The following line of code should move somewhere that it can be shared with immediatelyReportUnsafeAccessTo.
    227     message = frame->domWindow()->crossDomainAccessErrorMessage(activeDOMWindow(exec));
     227    message = frame->document()->domWindow()->crossDomainAccessErrorMessage(activeDOMWindow(exec));
    228228    return result;
    229229}
     
    233233    if (!frame)
    234234        return;
    235     frame->domWindow()->printErrorMessage(message);
     235    frame->document()->domWindow()->printErrorMessage(message);
    236236}
    237237
  • trunk/Source/WebCore/bindings/js/JSDOMWindowCustom.cpp

    r125152 r125615  
    100100static JSValue childFrameGetter(ExecState* exec, JSValue slotBase, PropertyName propertyName)
    101101{
    102     return toJS(exec, jsCast<JSDOMWindow*>(asObject(slotBase))->impl()->frame()->tree()->scopedChild(propertyNameToAtomicString(propertyName))->domWindow());
     102    return toJS(exec, jsCast<JSDOMWindow*>(asObject(slotBase))->impl()->frame()->tree()->scopedChild(propertyNameToAtomicString(propertyName))->document()->domWindow());
    103103}
    104104
    105105static JSValue indexGetter(ExecState* exec, JSValue slotBase, unsigned index)
    106106{
    107     return toJS(exec, jsCast<JSDOMWindow*>(asObject(slotBase))->impl()->frame()->tree()->scopedChild(index)->domWindow());
     107    return toJS(exec, jsCast<JSDOMWindow*>(asObject(slotBase))->impl()->frame()->tree()->scopedChild(index)->document()->domWindow());
    108108}
    109109
  • trunk/Source/WebCore/bindings/js/JSDocumentCustom.cpp

    r114098 r125615  
    5555        return jsNull();
    5656
    57     Location* location = frame->domWindow()->location();
     57    Location* location = frame->document()->domWindow()->location();
    5858    if (JSDOMWrapper* wrapper = getCachedWrapper(currentWorld(exec), location))
    5959        return wrapper;
     
    7474        return;
    7575
    76     if (Location* location = frame->domWindow()->location())
     76    if (Location* location = frame->document()->domWindow()->location())
    7777        location->setHref(ustringToString(locationString), activeDOMWindow(exec), firstDOMWindow(exec));
    7878}
  • trunk/Source/WebCore/bindings/js/JSEventListener.cpp

    r121381 r125615  
    8686        return;
    8787
    88     Frame* frame = 0;
    8988    if (scriptExecutionContext->isDocument()) {
    9089        JSDOMWindow* window = jsCast<JSDOMWindow*>(globalObject);
    91         frame = window->impl()->frame();
    92         if (!frame)
    93             return;
    94         // The window must still be active in its frame. See <https://bugs.webkit.org/show_bug.cgi?id=21921>.
    95         // FIXME: A better fix for this may be to change DOMWindow::frame() to not return a frame the detached window used to be in.
    96         if (frame->domWindow() != window->impl())
     90        if (!window->impl()->isCurrentlyDisplayedInFrame())
    9791            return;
    9892        // FIXME: Is this check needed for other contexts?
    99         ScriptController* script = frame->script();
     93        ScriptController* script = window->impl()->frame()->script();
    10094        if (!script->canExecuteScripts(AboutToExecuteScript) || script->isPaused())
    10195            return;
  • trunk/Source/WebCore/bindings/js/ScriptCachedFrameData.cpp

    r121381 r125615  
    8181            windowShell->setWindow(window->globalData(), window);
    8282        else {
    83             windowShell->setWindow(frame->domWindow());
     83            windowShell->setWindow(frame->document()->domWindow());
    8484
    8585            if (Page* page = frame->page()) {
  • trunk/Source/WebCore/bindings/js/ScriptController.cpp

    r125592 r125615  
    112112    ASSERT(!m_windowShells.contains(world));
    113113    Structure* structure = JSDOMWindowShell::createStructure(*world->globalData(), jsNull());
    114     Strong<JSDOMWindowShell> windowShell(*world->globalData(), JSDOMWindowShell::create(m_frame->domWindow(), structure, world));
     114    Strong<JSDOMWindowShell> windowShell(*world->globalData(), JSDOMWindowShell::create(m_frame->document()->domWindow(), structure, world));
    115115    Strong<JSDOMWindowShell> windowShell2(windowShell);
    116116    m_windowShells.add(world, windowShell);
  • trunk/Source/WebCore/bindings/objc/DOMAbstractView.mm

    r95901 r125615  
    5151    if (!_internal)
    5252        return nil;
    53     return kit(IMPL->domWindow()->document());
     53    return kit(IMPL->document());
    5454}
    5555
     
    7373    if (!wrapper->_internal)
    7474        return 0;
    75     return reinterpret_cast<WebCore::Frame*>(wrapper->_internal)->domWindow();
     75    return reinterpret_cast<WebCore::Frame*>(wrapper->_internal)->document()->domWindow();
    7676}
    7777
  • trunk/Source/WebCore/bindings/v8/NPV8Object.cpp

    r125495 r125615  
    6464{
    6565    V8NPObject* object = reinterpret_cast<V8NPObject*>(npObject);
    66     DOMWindow* domWindow = object->rootObject;
    67     if (!domWindow || !domWindow->frame() || domWindow != domWindow->frame()->domWindow())
     66    DOMWindow* window = object->rootObject;
     67    if (!window || !window->isCurrentlyDisplayedInFrame())
    6868        return v8::Local<v8::Context>();
    6969    return V8Proxy::mainWorldContext(object->rootObject->frame());
  • trunk/Source/WebCore/bindings/v8/ScriptController.cpp

    r125592 r125615  
    429429
    430430    v8::Context::Scope scope(v8Context);
    431     DOMWindow* window = frame->domWindow();
     431    DOMWindow* window = frame->document()->domWindow();
    432432    v8::Handle<v8::Value> global = toV8(window);
    433433    ASSERT(global->IsObject());
     
    469469    v8::Context::Scope scope(v8Context);
    470470
    471     DOMWindow* window = m_frame->domWindow();
     471    DOMWindow* window = m_frame->document()->domWindow();
    472472    v8::Handle<v8::Value> v8plugin = toV8(static_cast<HTMLEmbedElement*>(plugin));
    473473    if (!v8plugin->IsObject())
  • trunk/Source/WebCore/bindings/v8/V8DOMWindowShell.cpp

    r125482 r125615  
    335335    }
    336336
    337     if (!installDOMWindow(v8Context, m_frame->domWindow())) {
     337    if (!installDOMWindow(v8Context, m_frame->document()->domWindow())) {
    338338        disposeContextHandles();
    339339        return false;
  • trunk/Source/WebCore/bindings/v8/V8IsolatedContext.cpp

    r125242 r125615  
    9292
    9393    // FIXME: This will go away once we have a windowShell for the isolated world.
    94     proxy->windowShell()->installDOMWindow(m_context->get(), m_frame->domWindow());
     94    proxy->windowShell()->installDOMWindow(m_context->get(), m_frame->document()->domWindow());
    9595
    9696    // Using the default security token means that the canAccess is always
  • trunk/Source/WebCore/bindings/v8/V8Proxy.cpp

    r125495 r125615  
    368368{
    369369    DOMWindow* window = retrieveWindow(context);
    370     Frame* frame = window->frame();
    371     if (frame && frame->domWindow() == window)
    372         return frame;
     370    if (window->isCurrentlyDisplayedInFrame())
     371        return window->frame();
    373372    // We return 0 here because |context| is detached from the Frame.  If we
    374373    // did return |frame| we could get in trouble because the frame could be
  • trunk/Source/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp

    r125495 r125615  
    480480    Frame* child = frame->tree()->scopedChild(index);
    481481    if (child)
    482         return toV8(child->domWindow(), info.GetIsolate());
     482        return toV8(child->document()->domWindow(), info.GetIsolate());
    483483
    484484    return v8Undefined();
     
    503503    Frame* child = frame->tree()->scopedChild(propName);
    504504    if (child)
    505         return toV8(child->domWindow(), info.GetIsolate());
     505        return toV8(child->document()->domWindow(), info.GetIsolate());
    506506
    507507    // Search IDL functions defined in the prototype
  • trunk/Source/WebCore/bindings/v8/custom/V8DocumentLocationCustom.cpp

    r124835 r125615  
    4141        return v8::Null(info.GetIsolate());
    4242
    43     DOMWindow* window = document->frame()->domWindow();
     43    DOMWindow* window = document->domWindow();
    4444    return toV8(window->location(), info.GetIsolate());
    4545}
     
    6161        return;
    6262
    63     DOMWindow* window = document->frame()->domWindow();
     63    DOMWindow* window = document->domWindow();
    6464    if (Location* location = window->location())
    6565        location->setHref(toWebCoreString(value), active, first);
  • trunk/Source/WebCore/bindings/v8/custom/V8HTMLDocumentCustom.cpp

    r125495 r125615  
    9595        Frame* frame = 0;
    9696        if (node->hasTagName(HTMLNames::iframeTag) && (frame = static_cast<HTMLIFrameElement*>(node)->contentFrame()))
    97             return toV8(frame->domWindow(), isolate);
     97            return toV8(frame->document()->domWindow(), isolate);
    9898
    9999        return toV8(node, isolate);
  • trunk/Source/WebCore/bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp

    r125482 r125615  
    5151    HTMLFrameSetElement* imp = V8HTMLFrameSetElement::toNative(info.Holder());
    5252    Node* frameNode = imp->children()->namedItem(toWebCoreAtomicString(name));
    53     if (frameNode && frameNode->hasTagName(HTMLNames::frameTag)) {
    54         Document* doc = static_cast<HTMLFrameElement*>(frameNode)->contentDocument();
    55         if (!doc)
    56             return v8::Undefined();
    57         if (Frame* frame = doc->frame())
    58             return toV8(frame->domWindow(), info.GetIsolate());
    59     }
    60     return v8Undefined();
     53    if (!frameNode)
     54        return v8Undefined();
     55    if (!frameNode->hasTagName(HTMLNames::frameTag))
     56        return v8Undefined();
     57    Document* document = static_cast<HTMLFrameElement*>(frameNode)->contentDocument();
     58    if (!document)
     59        return v8Undefined();
     60    if (!document->frame())
     61        return v8Undefined();
     62    return toV8(document->domWindow(), info.GetIsolate());
    6163}
    6264
  • trunk/Source/WebCore/dom/Document.cpp

    r125592 r125615  
    386386
    387387    // FIXME: should we print to the console of the document performing the navigation instead?
    388     frame->domWindow()->printErrorMessage(message);
     388    frame->document()->domWindow()->printErrorMessage(message);
    389389}
    390390
  • trunk/Source/WebCore/dom/ViewportArguments.cpp

    r121661 r125615  
    364364        message.replace("%replacement2", replacement2);
    365365
    366     frame->domWindow()->console()->addMessage(HTMLMessageSource, LogMessageType, viewportErrorMessageLevel(errorCode), message, document->url().string(), parserLineNumber(document));
     366    document->domWindow()->console()->addMessage(HTMLMessageSource, LogMessageType, viewportErrorMessageLevel(errorCode), message, document->url().string(), parserLineNumber(document));
    367367}
    368368
  • trunk/Source/WebCore/editing/AlternativeTextController.cpp

    r121299 r125615  
    705705        view->resetDeferredRepaintDelay();
    706706
    707     RefPtr<TextEvent> event = TextEvent::createForDictation(m_frame->domWindow(), text, dictationAlternatives);
     707    RefPtr<TextEvent> event = TextEvent::createForDictation(m_frame->document()->domWindow(), text, dictationAlternatives);
    708708    event->setUnderlyingEvent(triggeringEvent);
    709709
  • trunk/Source/WebCore/editing/Editor.cpp

    r125247 r125615  
    347347        return;
    348348    ExceptionCode ec = 0;
    349     target->dispatchEvent(TextEvent::createForPlainTextPaste(m_frame->domWindow(), pastingText, smartReplace), ec);
     349    target->dispatchEvent(TextEvent::createForPlainTextPaste(m_frame->document()->domWindow(), pastingText, smartReplace), ec);
    350350}
    351351
     
    356356        return;
    357357    ExceptionCode ec = 0;
    358     target->dispatchEvent(TextEvent::createForFragmentPaste(m_frame->domWindow(), pastingFragment, smartReplace, matchStyle), ec);
     358    target->dispatchEvent(TextEvent::createForFragmentPaste(m_frame->document()->domWindow(), pastingFragment, smartReplace, matchStyle), ec);
    359359}
    360360
     
    13641364    Node* target = m_frame->document()->focusedNode();
    13651365    if (target) {
    1366         RefPtr<CompositionEvent> event = CompositionEvent::create(eventNames().compositionendEvent, m_frame->domWindow(), text);
     1366        RefPtr<CompositionEvent> event = CompositionEvent::create(eventNames().compositionendEvent, m_frame->document()->domWindow(), text);
    13671367        ExceptionCode ec = 0;
    13681368        target->dispatchEvent(event, ec);
     
    14271427            // function doesn't create a composition node when the text is empty.
    14281428            if (!text.isEmpty()) {
    1429                 target->dispatchEvent(CompositionEvent::create(eventNames().compositionstartEvent, m_frame->domWindow(), text));
    1430                 event = CompositionEvent::create(eventNames().compositionupdateEvent, m_frame->domWindow(), text);
     1429                target->dispatchEvent(CompositionEvent::create(eventNames().compositionstartEvent, m_frame->document()->domWindow(), text));
     1430                event = CompositionEvent::create(eventNames().compositionupdateEvent, m_frame->document()->domWindow(), text);
    14311431            }
    14321432        } else {
    14331433            if (!text.isEmpty())
    1434                 event = CompositionEvent::create(eventNames().compositionupdateEvent, m_frame->domWindow(), text);
     1434                event = CompositionEvent::create(eventNames().compositionupdateEvent, m_frame->document()->domWindow(), text);
    14351435            else
    1436               event = CompositionEvent::create(eventNames().compositionendEvent, m_frame->domWindow(), text);
     1436              event = CompositionEvent::create(eventNames().compositionendEvent, m_frame->document()->domWindow(), text);
    14371437        }
    14381438        ExceptionCode ec = 0;
  • trunk/Source/WebCore/history/PageCache.cpp

    r117112 r125615  
    138138        rejectReasons |= 1 << IsHttpsAndCacheControlled;
    139139    }
    140     if (frame->domWindow() && frame->domWindow()->hasEventListeners(eventNames().unloadEvent)) {
     140    if (frame->document()->domWindow() && frame->document()->domWindow()->hasEventListeners(eventNames().unloadEvent)) {
    141141        PCLOG("   -Frame has an unload event listener");
    142142        rejectReasons |= 1 << HasUnloadListener;
     
    344344        && (!frameLoader->subframeLoader()->containsPlugins() || frame->page()->settings()->pageCacheSupportsPlugins())
    345345        && (!document->url().protocolIs("https") || (!documentLoader->response().cacheControlContainsNoCache() && !documentLoader->response().cacheControlContainsNoStore()))
    346         && (!frame->domWindow() || !frame->domWindow()->hasEventListeners(eventNames().unloadEvent))
     346        && (!document->domWindow() || !document->domWindow()->hasEventListeners(eventNames().unloadEvent))
    347347#if ENABLE(SQL_DATABASE)
    348348        && !DatabaseContext::hasOpenDatabases(document)
  • trunk/Source/WebCore/html/HTMLFormElement.cpp

    r122584 r125615  
    253253    }
    254254    // Warn about all of unfocusable controls.
    255     if (Frame* frame = document()->frame()) {
     255    if (document()->frame()) {
    256256        for (unsigned i = 0; i < unhandledInvalidControls.size(); ++i) {
    257257            FormAssociatedElement* unhandledAssociatedElement = unhandledInvalidControls[i].get();
     
    261261            String message("An invalid form control with name='%name' is not focusable.");
    262262            message.replace("%name", unhandledAssociatedElement->name());
    263             frame->domWindow()->console()->addMessage(HTMLMessageSource, LogMessageType, ErrorMessageLevel, message, document()->url().string());
     263            document()->domWindow()->console()->addMessage(HTMLMessageSource, LogMessageType, ErrorMessageLevel, message, document()->url().string());
    264264        }
    265265    }
  • trunk/Source/WebCore/html/HTMLFrameOwnerElement.cpp

    r117242 r125615  
    7474DOMWindow* HTMLFrameOwnerElement::contentWindow() const
    7575{
    76     return m_contentFrame ? m_contentFrame->domWindow() : 0;
     76    return m_contentFrame ? m_contentFrame->document()->domWindow() : 0;
    7777}
    7878
  • trunk/Source/WebCore/html/canvas/WebGLRenderingContext.cpp

    r125580 r125615  
    51745174    if (!canvas())
    51755175        return;
     5176    // FIXME: This giant cascade of null checks seems a bit paranoid.
    51765177    Document* document = canvas()->document();
    51775178    if (!document)
     
    51805181    if (!frame)
    51815182        return;
    5182     DOMWindow* window = frame->domWindow();
     5183    DOMWindow* window = document->domWindow();
    51835184    if (!window)
    51845185        return;
  • trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.cpp

    r124332 r125615  
    157157    Frame* frame = storage->frame();
    158158    ExceptionCode ec = 0;
    159     bool isLocalStorage = (frame->domWindow()->localStorage(ec) == storage && !ec);
     159    bool isLocalStorage = (frame->document()->domWindow()->localStorage(ec) == storage && !ec);
    160160    return storageId(frame->document()->securityOrigin(), isLocalStorage);
    161161}
  • trunk/Source/WebCore/loader/DocumentLoader.cpp

    r124884 r125615  
    423423    ASSERT(this == frameLoader()->activeDocumentLoader());
    424424
    425     if (DOMWindow* window = m_frame->existingDOMWindow())
     425    if (DOMWindow* window = m_frame->document()->domWindow())
    426426        window->finishedLoading();
    427427}
  • trunk/Source/WebCore/loader/FrameLoader.cpp

    r125613 r125615  
    358358                if (currentFocusedNode)
    359359                    currentFocusedNode->aboutToUnload();
    360                 if (m_frame->domWindow() && m_pageDismissalEventBeingDispatched == NoDismissal) {
     360                if (m_frame->document()->domWindow() && m_pageDismissalEventBeingDispatched == NoDismissal) {
    361361                    if (unloadEventPolicy == UnloadEventPolicyUnloadAndPageHide) {
    362362                        m_pageDismissalEventBeingDispatched = PageHideDismissal;
    363                         m_frame->domWindow()->dispatchEvent(PageTransitionEvent::create(eventNames().pagehideEvent, m_frame->document()->inPageCache()), m_frame->document());
     363                        m_frame->document()->domWindow()->dispatchEvent(PageTransitionEvent::create(eventNames().pagehideEvent, m_frame->document()->inPageCache()), m_frame->document());
    364364                    }
    365365                    if (!m_frame->document()->inPageCache()) {
     
    374374                            ASSERT(timing->navigationStart());
    375375                            timing->markUnloadEventStart();
    376                             m_frame->domWindow()->dispatchEvent(unloadEvent, m_frame->domWindow()->document());
     376                            m_frame->document()->domWindow()->dispatchEvent(unloadEvent, m_frame->document());
    377377                            timing->markUnloadEventEnd();
    378378                        } else
    379                             m_frame->domWindow()->dispatchEvent(unloadEvent, m_frame->domWindow()->document());
     379                            m_frame->document()->domWindow()->dispatchEvent(unloadEvent, m_frame->document());
    380380                    }
    381381                }
     
    465465    // since it may cause clients to attempt to render the frame.
    466466    if (!m_stateMachine.creatingInitialEmptyDocument()) {
    467         if (DOMWindow* window = m_frame->existingDOMWindow()) {
     467        if (DOMWindow* window = m_frame->document()->domWindow()) {
    468468            window->setStatus(String());
    469469            window->setDefaultStatus(String());
     
    887887        m_frame->document()->url().string() + " displayed insecure content from " + url.string() + ".\n";
    888888       
    889     m_frame->domWindow()->console()->addMessage(HTMLMessageSource, LogMessageType, WarningMessageLevel, message);
     889    m_frame->document()->domWindow()->console()->addMessage(HTMLMessageSource, LogMessageType, WarningMessageLevel, message);
    890890
    891891    if (allowed)
     
    905905        m_frame->document()->url().string() + " ran insecure content from " + url.string() + ".\n";
    906906       
    907     m_frame->domWindow()->console()->addMessage(HTMLMessageSource, LogMessageType, WarningMessageLevel, message);
     907    m_frame->document()->domWindow()->console()->addMessage(HTMLMessageSource, LogMessageType, WarningMessageLevel, message);
    908908
    909909    if (allowed)
     
    13721372        return;
    13731373
    1374     frame->domWindow()->console()->addMessage(JSMessageSource, LogMessageType, ErrorMessageLevel, "Not allowed to load local resource: " + url);
     1374    frame->document()->domWindow()->console()->addMessage(JSMessageSource, LogMessageType, ErrorMessageLevel, "Not allowed to load local resource: " + url);
    13751375}
    13761376
     
    19031903    // Delete old status bar messages (if it _was_ activated on last URL).
    19041904    if (m_frame->script()->canExecuteScripts(NotAboutToExecuteScript)) {
    1905         if (DOMWindow* window = m_frame->existingDOMWindow()) {
     1905        if (DOMWindow* window = m_frame->document()->domWindow()) {
    19061906            window->setStatus(String());
    19071907            window->setDefaultStatus(String());
     
    26932693bool FrameLoader::fireBeforeUnloadEvent(Chrome* chrome)
    26942694{
    2695     DOMWindow* domWindow = m_frame->existingDOMWindow();
     2695    DOMWindow* domWindow = m_frame->document()->domWindow();
    26962696    if (!domWindow)
    26972697        return true;
  • trunk/Source/WebCore/loader/MainResourceLoader.cpp

    r125265 r125615  
    368368            InspectorInstrumentation::continueAfterXFrameOptionsDenied(m_frame.get(), documentLoader(), identifier(), r);
    369369            DEFINE_STATIC_LOCAL(String, consoleMessage, ("Refused to display document because display forbidden by X-Frame-Options.\n"));
    370             m_frame->domWindow()->console()->addMessage(JSMessageSource, LogMessageType, ErrorMessageLevel, consoleMessage);
     370            m_frame->document()->domWindow()->console()->addMessage(JSMessageSource, LogMessageType, ErrorMessageLevel, consoleMessage);
    371371
    372372            cancel();
  • trunk/Source/WebCore/loader/appcache/ApplicationCacheGroup.cpp

    r125570 r125615  
    470470        return;
    471471
    472     frame->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, TipMessageLevel, "Application Cache download process was aborted.");
     472    frame->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, TipMessageLevel, "Application Cache download process was aborted.");
    473473    cacheUpdateFailed();
    474474}
     
    564564    if (response.httpStatusCode() / 100 != 2 || response.url() != m_currentHandle->firstRequest().url()) {
    565565        if ((type & ApplicationCacheResource::Explicit) || (type & ApplicationCacheResource::Fallback)) {
    566             m_frame->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache update failed, because " + m_currentHandle->firstRequest().url().string() +
     566            m_frame->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache update failed, because " + m_currentHandle->firstRequest().url().string() +
    567567                ((response.httpStatusCode() / 100 != 2) ? " could not be fetched." : " was redirected."));
    568568            // Note that cacheUpdateFailed() can cause the cache group to be deleted.
     
    641641    if (m_originQuotaExceededPreviously && m_availableSpaceInQuota < m_cacheBeingUpdated->estimatedSizeInStorage()) {
    642642        m_currentResource = 0;
    643         m_frame->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache update failed, because size quota was exceeded.");
     643        m_frame->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache update failed, because size quota was exceeded.");
    644644        cacheUpdateFailed();
    645645        return;
     
    674674
    675675    if ((type & ApplicationCacheResource::Explicit) || (type & ApplicationCacheResource::Fallback)) {
    676         m_frame->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache update failed, because " + url.string() + " could not be fetched.");
     676        m_frame->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache update failed, because " + url.string() + " could not be fetched.");
    677677        // Note that cacheUpdateFailed() can cause the cache group to be deleted.
    678678        cacheUpdateFailed();
     
    703703
    704704    if (response.httpStatusCode() / 100 != 2) {
    705         m_frame->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache manifest could not be fetched.");
     705        m_frame->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache manifest could not be fetched.");
    706706        cacheUpdateFailed();
    707707        return;
     
    709709
    710710    if (response.url() != m_manifestHandle->firstRequest().url()) {
    711         m_frame->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache manifest could not be fetched, because a redirection was attempted.");
     711        m_frame->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache manifest could not be fetched, because a redirection was attempted.");
    712712        cacheUpdateFailed();
    713713        return;
     
    729729    if (!isUpgradeAttempt && !m_manifestResource) {
    730730        // The server returned 304 Not Modified even though we didn't send a conditional request.
    731         m_frame->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache manifest could not be fetched because of an unexpected 304 Not Modified server response.");
     731        m_frame->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache manifest could not be fetched because of an unexpected 304 Not Modified server response.");
    732732        cacheUpdateFailed();
    733733        return;
     
    755755    if (!parseManifest(m_manifestURL, m_manifestResource->data()->data(), m_manifestResource->data()->size(), manifest)) {
    756756        // At the time of this writing, lack of "CACHE MANIFEST" signature is the only reason for parseManifest to fail.
    757         m_frame->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache manifest could not be parsed. Does it start with CACHE MANIFEST?");
     757        m_frame->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache manifest could not be parsed. Does it start with CACHE MANIFEST?");
    758758        cacheUpdateFailed();
    759759        return;
     
    944944                // after recording this state.
    945945                m_originQuotaExceededPreviously = true;
    946                 m_frame->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache update failed, because size quota was exceeded.");
     946                m_frame->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, "Application Cache update failed, because size quota was exceeded.");
    947947            }
    948948
  • trunk/Source/WebCore/loader/cache/CachedResourceLoader.cpp

    r124884 r125615  
    617617
    618618    // FIXME: provide line number and source URL.
    619     frame()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, message);
     619    frame()->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, ErrorMessageLevel, message);
    620620}
    621621
  • trunk/Source/WebCore/page/DOMWindow.cpp

    r125613 r125615  
    595595bool DOMWindow::isCurrentlyDisplayedInFrame() const
    596596{
    597     return m_frame && m_frame->domWindow() == this;
     597    return m_frame && m_frame->document()->domWindow() == this;
    598598}
    599599
     
    12611261        return 0;
    12621262
    1263     return m_frame->domWindow();
     1263    return m_frame->document()->domWindow();
    12641264}
    12651265
     
    12731273        return 0;
    12741274
    1275     return opener->domWindow();
     1275    return opener->document()->domWindow();
    12761276}
    12771277
     
    12831283    Frame* parent = m_frame->tree()->parent();
    12841284    if (parent)
    1285         return parent->domWindow();
    1286 
    1287     return m_frame->domWindow();
     1285        return parent->document()->domWindow();
     1286
     1287    return m_frame->document()->domWindow();
    12881288}
    12891289
     
    12971297        return 0;
    12981298
    1299     return m_frame->tree()->top()->domWindow();
     1299    return m_frame->tree()->top()->document()->domWindow();
    13001300}
    13011301
     
    18241824    newFrame->page()->setOpenedByDOM();
    18251825
    1826     if (newFrame->domWindow()->isInsecureScriptAccess(activeWindow, completedURL))
     1826    if (newFrame->document()->domWindow()->isInsecureScriptAccess(activeWindow, completedURL))
    18271827        return newFrame;
    18281828
    18291829    if (function)
    1830         function(newFrame->domWindow(), functionContext);
     1830        function(newFrame->document()->domWindow(), functionContext);
    18311831
    18321832    if (created)
     
    18761876        KURL completedURL = firstFrame->document()->completeURL(urlString);
    18771877
    1878         if (targetFrame->domWindow()->isInsecureScriptAccess(activeWindow, completedURL))
    1879             return targetFrame->domWindow();
     1878        if (targetFrame->document()->domWindow()->isInsecureScriptAccess(activeWindow, completedURL))
     1879            return targetFrame->document()->domWindow();
    18801880
    18811881        if (urlString.isEmpty())
    1882             return targetFrame->domWindow();
     1882            return targetFrame->document()->domWindow();
    18831883
    18841884        // For whatever reason, Firefox uses the first window rather than the active window to
     
    18911891            lockHistory,
    18921892            false);
    1893         return targetFrame->domWindow();
     1893        return targetFrame->document()->domWindow();
    18941894    }
    18951895
     
    19051905
    19061906    Frame* result = createWindow(urlString, frameName, windowFeatures, activeWindow, firstFrame, m_frame);
    1907     return result ? result->domWindow() : 0;
     1907    return result ? result->document()->domWindow() : 0;
    19081908}
    19091909
  • trunk/Source/WebCore/page/DOMWindowProperty.cpp

    r119136 r125615  
    2929
    3030#include "DOMWindow.h"
     31#include "Document.h"
    3132#include "Frame.h"
    3233
     
    4142    // We should fix that.  <rdar://problem/11567132>
    4243    if (m_frame) {
    43         m_associatedDOMWindow = m_frame->domWindow();
     44        m_associatedDOMWindow = m_frame->document()->domWindow();
    4445        m_associatedDOMWindow->registerProperty(this);
    4546    }
     
    7172    ASSERT(frame);
    7273    ASSERT(!m_frame);
    73     ASSERT(frame->domWindow() == m_associatedDOMWindow);
     74    ASSERT(frame->document()->domWindow() == m_associatedDOMWindow);
    7475
    7576    m_frame = frame;
  • trunk/Source/WebCore/page/DragController.cpp

    r124588 r125615  
    424424    Node* target = innerFrame->editor()->findEventTargetFrom(m_page->dragCaretController()->caretPosition());
    425425    ExceptionCode ec = 0;
    426     return target->dispatchEvent(TextEvent::createForDrop(innerFrame->domWindow(), text), ec);
     426    return target->dispatchEvent(TextEvent::createForDrop(innerFrame->document()->domWindow(), text), ec);
    427427}
    428428
  • trunk/Source/WebCore/page/EventHandler.cpp

    r125389 r125615  
    32933293        view->resetDeferredRepaintDelay();
    32943294
    3295     RefPtr<TextEvent> event = TextEvent::create(m_frame->domWindow(), text, inputType);
     3295    RefPtr<TextEvent> event = TextEvent::create(m_frame->document()->domWindow(), text, inputType);
    32963296    event->setUnderlyingEvent(underlyingEvent);
    32973297
  • trunk/Source/WebCore/page/Frame.cpp

    r125592 r125615  
    681681}
    682682
    683 DOMWindow* Frame::domWindow() const
    684 {
    685     ASSERT(m_doc->domWindow());
    686     return m_doc->domWindow();
    687 }
    688 
    689683void Frame::willDetachPage()
    690684{
  • trunk/Source/WebCore/page/Frame.h

    r125592 r125615  
    129129        String layerTreeAsText(bool showDebugInfo = false) const;
    130130
    131         // FIXME: Callers should use document()->domWindow() directly.
    132         DOMWindow* domWindow() const;
    133         DOMWindow* existingDOMWindow() { return domWindow(); }
    134 
    135131        static Frame* frameForWidget(const Widget*);
    136132
  • trunk/Source/WebCore/page/Location.cpp

    r120005 r125615  
    242242        return;
    243243    // Note: We call DOMWindow::setLocation directly here because replace() always operates on the current frame.
    244     m_frame->domWindow()->setLocation(url, activeWindow, firstWindow, LockHistoryAndBackForwardList);
     244    m_frame->document()->domWindow()->setLocation(url, activeWindow, firstWindow, LockHistoryAndBackForwardList);
    245245}
    246246
     
    252252    // We allow one page to change the location of another. Why block attempts to reload?
    253253    // Other location operations simply block use of JavaScript URLs cross origin.
    254     DOMWindow* targetWindow = m_frame->domWindow();
     254    DOMWindow* targetWindow = m_frame->document()->domWindow();
    255255    if (!activeWindow->securityOrigin()->canAccess(targetWindow->securityOrigin())) {
    256256        targetWindow->printErrorMessage(targetWindow->crossDomainAccessErrorMessage(activeWindow));
     
    269269    if (!frame)
    270270        return;
    271     frame->domWindow()->setLocation(url, activeWindow, firstWindow);
     271    frame->document()->domWindow()->setLocation(url, activeWindow, firstWindow);
    272272}
    273273
  • trunk/Source/WebCore/storage/StorageEventDispatcher.cpp

    r118349 r125615  
    5858        for (unsigned i = 0; i < frames.size(); ++i) {
    5959            ExceptionCode ec = 0;
    60             Storage* storage = frames[i]->domWindow()->sessionStorage(ec);
     60            Storage* storage = frames[i]->document()->domWindow()->sessionStorage(ec);
    6161            if (!ec)
    6262                frames[i]->document()->enqueueWindowEvent(StorageEvent::create(eventNames().storageEvent, key, oldValue, newValue, sourceFrame->document()->url(), storage));
     
    7676        for (unsigned i = 0; i < frames.size(); ++i) {
    7777            ExceptionCode ec = 0;
    78             Storage* storage = frames[i]->domWindow()->localStorage(ec);
     78            Storage* storage = frames[i]->document()->domWindow()->localStorage(ec);
    7979            if (!ec)
    8080                frames[i]->document()->enqueueWindowEvent(StorageEvent::create(eventNames().storageEvent, key, oldValue, newValue, sourceFrame->document()->url(), storage));
  • trunk/Source/WebCore/svg/SVGDocumentExtensions.cpp

    r122278 r125615  
    197197static void reportMessage(Document* document, MessageLevel level, const String& message)
    198198{
    199     if (Frame* frame = document->frame())
    200         frame->domWindow()->console()->addMessage(JSMessageSource, LogMessageType, level, message, document->documentURI(), parserLineNumber(document));
     199    if (document->frame())
     200        document->domWindow()->console()->addMessage(JSMessageSource, LogMessageType, level, message, document->documentURI(), parserLineNumber(document));
    201201}
    202202
  • trunk/Source/WebCore/xml/XSLStyleSheetLibxslt.cpp

    r113922 r125615  
    146146
    147147    Console* console = 0;
    148     if (Frame* frame = ownerDocument()->frame())
    149         console = frame->domWindow()->console();
     148    if (ownerDocument()->frame())
     149        console = ownerDocument()->domWindow()->console();
    150150
    151151    XMLDocumentParserScope scope(cachedResourceLoader(), XSLTProcessor::genericErrorFunc, XSLTProcessor::parseErrorFunc, console);
  • trunk/Source/WebCore/xml/XSLTProcessorLibxslt.cpp

    r105524 r125615  
    139139
    140140        Console* console = 0;
    141         if (Frame* frame = globalProcessor->xslStylesheet()->ownerDocument()->frame())
    142             console = frame->domWindow()->console();
     141        if (globalProcessor->xslStylesheet()->ownerDocument()->frame())
     142            console = globalProcessor->xslStylesheet()->ownerDocument()->domWindow()->console();
    143143        xmlSetStructuredErrorFunc(console, XSLTProcessor::parseErrorFunc);
    144144        xmlSetGenericErrorFunc(console, XSLTProcessor::genericErrorFunc);
  • trunk/Source/WebCore/xml/XSLTProcessorQt.cpp

    r104803 r125615  
    8484    }
    8585
    86     Console* console = m_document->frame()->domWindow()->console();
    87     console->addMessage(XMLMessageSource, LogMessageType, level, description,
    88                         sourceLocation.uri().toString(), sourceLocation.line());
     86    Console* console = m_document->domWindow()->console();
     87    console->addMessage(XMLMessageSource, LogMessageType, level, description, sourceLocation.uri().toString(), sourceLocation.line());
    8988}
    9089
  • trunk/Source/WebKit/blackberry/ChangeLog

    r125611 r125615  
     12012-08-14  Adam Barth  <abarth@webkit.org>
     2
     3        Delete Frame::domWindow() and Frame::existingDOMWindow()
     4        https://bugs.webkit.org/show_bug.cgi?id=93990
     5
     6        Reviewed by Eric Seidel.
     7
     8        * WebCoreSupport/ChromeClientBlackBerry.cpp:
     9        (WebCore::toOriginString):
     10        (WebCore::ChromeClientBlackBerry::runJavaScriptAlert):
     11        (WebCore::ChromeClientBlackBerry::runJavaScriptConfirm):
     12        (WebCore::ChromeClientBlackBerry::runJavaScriptPrompt):
     13        (WebCore::ChromeClientBlackBerry::runBeforeUnloadConfirmPanel):
     14        (WebCore::ChromeClientBlackBerry::requestWebGLPermission):
     15
    1162012-08-14  Leo Yang  <leoyang@rim.com>
    217
  • trunk/Source/WebKit/blackberry/WebCoreSupport/ChromeClientBlackBerry.cpp

    r124285 r125615  
    7979namespace WebCore {
    8080
    81 static CString frameOrigin(Frame* frame)
    82 {
    83     DOMWindow* window = frame->domWindow();
    84     SecurityOrigin* origin = window->securityOrigin();
    85     CString latinOrigin = origin->toString().latin1();
    86     return latinOrigin;
     81static CString toOriginString(Frame* frame)
     82{
     83    return frame->document()->securityOrigin()->toString().latin1();
    8784}
    8885
     
    112109
    113110    TimerBase::fireTimersInNestedEventLoop();
    114     CString latinOrigin = frameOrigin(frame);
     111    CString latinOrigin = toOriginString(frame);
    115112    m_webPagePrivate->m_client->runJavaScriptAlert(message.characters(), message.length(), latinOrigin.data(), latinOrigin.length());
    116113}
     
    124121
    125122    TimerBase::fireTimersInNestedEventLoop();
    126     CString latinOrigin = frameOrigin(frame);
     123    CString latinOrigin = toOriginString(frame);
    127124    return m_webPagePrivate->m_client->runJavaScriptConfirm(message.characters(), message.length(), latinOrigin.data(), latinOrigin.length());
    128125}
     
    138135
    139136    TimerBase::fireTimersInNestedEventLoop();
    140     CString latinOrigin = frameOrigin(frame);
     137    CString latinOrigin = toOriginString(frame);
    141138    WebString clientResult;
    142139    if (m_webPagePrivate->m_client->runJavaScriptPrompt(message.characters(), message.length(), defaultValue.characters(), defaultValue.length(), latinOrigin.data(), latinOrigin.length(), clientResult)) {
     
    387384
    388385    TimerBase::fireTimersInNestedEventLoop();
    389     CString latinOrigin = frameOrigin(frame);
     386    CString latinOrigin = toOriginString(frame);
    390387    return m_webPagePrivate->m_client->runBeforeUnloadConfirmPanel(message.characters(), message.length(), latinOrigin.data(), latinOrigin.length());
    391388}
     
    769766{
    770767    if (frame) {
    771         CString latinOrigin = frameOrigin(frame);
     768        CString latinOrigin = toOriginString(frame);
    772769        m_webPagePrivate->m_client->requestWebGLPermission(latinOrigin.data());
    773770    }
  • trunk/Source/WebKit/chromium/ChangeLog

    r125581 r125615  
     12012-08-14  Adam Barth  <abarth@webkit.org>
     2
     3        Delete Frame::domWindow() and Frame::existingDOMWindow()
     4        https://bugs.webkit.org/show_bug.cgi?id=93990
     5
     6        Reviewed by Eric Seidel.
     7
     8        * src/StorageAreaProxy.cpp:
     9        (WebCore::StorageAreaProxy::dispatchLocalStorageEvent):
     10        (WebCore::StorageAreaProxy::dispatchSessionStorageEvent):
     11        * src/WebDOMMessageEvent.cpp:
     12        (WebKit::WebDOMMessageEvent::initMessageEvent):
     13        * src/WebFrameImpl.cpp:
     14        (WebKit::WebFrameImpl::performance):
     15        (WebKit::WebFrameImpl::addMessageToConsole):
     16        (WebKit::WebFrameImpl::unloadListenerCount):
     17        (WebKit::WebFrameImpl::addEventListener):
     18        (WebKit::WebFrameImpl::removeEventListener):
     19        (WebKit::WebFrameImpl::dispatchEvent):
     20        (WebKit::WebFrameImpl::dispatchMessageEventWithOriginCheck):
     21        (WebKit::WebFrameImpl::deliverIntent):
     22        * src/WebPagePopupImpl.cpp:
     23        (WebKit::WebPagePopupImpl::initPage):
     24
    1252012-08-14  Iain Merrick  <husky@chromium.org>
    226
  • trunk/Source/WebKit/chromium/src/StorageAreaProxy.cpp

    r124332 r125615  
    132132    for (HashSet<Page*>::const_iterator it = pages.begin(); it != pages.end(); ++it) {
    133133        for (Frame* frame = (*it)->mainFrame(); frame; frame = frame->tree()->traverseNext()) {
    134             Storage* storage = frame->domWindow()->optionalLocalStorage();
     134            Storage* storage = frame->document()->domWindow()->optionalLocalStorage();
    135135            if (storage && frame->document()->securityOrigin()->equal(securityOrigin) && !isEventSource(storage, sourceAreaInstance))
    136136                frame->document()->enqueueWindowEvent(StorageEvent::create(eventNames().storageEvent, key, oldValue, newValue, pageURL, storage));
     
    161161
    162162    for (Frame* frame = page->mainFrame(); frame; frame = frame->tree()->traverseNext()) {
    163         Storage* storage = frame->domWindow()->optionalSessionStorage();
     163        Storage* storage = frame->document()->domWindow()->optionalSessionStorage();
    164164        if (storage && frame->document()->securityOrigin()->equal(securityOrigin) && !isEventSource(storage, sourceAreaInstance))
    165165            frame->document()->enqueueWindowEvent(StorageEvent::create(eventNames().storageEvent, key, oldValue, newValue, pageURL, storage));
  • trunk/Source/WebKit/chromium/src/WebDOMMessageEvent.cpp

    r102496 r125615  
    3333
    3434#include "DOMWindow.h"
     35#include "Document.h"
    3536#include "MessageEvent.h"
    3637#include "MessagePort.h"
     
    5657    DOMWindow* window = 0;
    5758    if (sourceFrame)
    58         window = static_cast<const WebFrameImpl*>(sourceFrame)->frame()->domWindow();
     59        window = static_cast<const WebFrameImpl*>(sourceFrame)->frame()->document()->domWindow();
    5960    OwnPtr<MessagePortArray> ports;
    6061    unwrap<MessageEvent>()->initMessageEvent(type, canBubble, cancelable, messageData, origin, lastEventId, window, ports.release());
  • trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp

    r125385 r125615  
    810810WebPerformance WebFrameImpl::performance() const
    811811{
    812     if (!m_frame || !m_frame->domWindow())
     812    if (!m_frame)
    813813        return WebPerformance();
    814814
    815     return WebPerformance(m_frame->domWindow()->performance());
     815    return WebPerformance(m_frame->document()->domWindow()->performance());
    816816}
    817817
     
    888888    }
    889889
    890     frame()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, webCoreMessageLevel, message.text);
     890    frame()->document()->domWindow()->console()->addMessage(OtherMessageSource, LogMessageType, webCoreMessageLevel, message.text);
    891891}
    892892
     
    11811181unsigned WebFrameImpl::unloadListenerCount() const
    11821182{
    1183     return frame()->domWindow()->pendingUnloadEventListeners();
     1183    return frame()->document()->domWindow()->pendingUnloadEventListeners();
    11841184}
    11851185
     
    19571957void WebFrameImpl::addEventListener(const WebString& eventType, WebDOMEventListener* listener, bool useCapture)
    19581958{
    1959     DOMWindow* window = m_frame->domWindow();
    1960 
    1961     EventListenerWrapper* listenerWrapper =
    1962         listener->createEventListenerWrapper(eventType, useCapture, window);
    1963 
    1964     m_frame->domWindow()->addEventListener(eventType, adoptRef(listenerWrapper), useCapture);
     1959    DOMWindow* window = m_frame->document()->domWindow();
     1960    EventListenerWrapper* listenerWrapper = listener->createEventListenerWrapper(eventType, useCapture, window);
     1961    window->addEventListener(eventType, adoptRef(listenerWrapper), useCapture);
    19651962}
    19661963
    19671964void WebFrameImpl::removeEventListener(const WebString& eventType, WebDOMEventListener* listener, bool useCapture)
    19681965{
    1969     DOMWindow* window = m_frame->domWindow();
    1970 
    1971     EventListenerWrapper* listenerWrapper =
    1972         listener->getEventListenerWrapper(eventType, useCapture, window);
     1966    DOMWindow* window = m_frame->document()->domWindow();
     1967    EventListenerWrapper* listenerWrapper = listener->getEventListenerWrapper(eventType, useCapture, window);
    19731968    window->removeEventListener(eventType, listenerWrapper, useCapture);
    19741969}
     
    19771972{
    19781973    ASSERT(!event.isNull());
    1979     return m_frame->domWindow()->dispatchEvent(event);
     1974    return m_frame->document()->domWindow()->dispatchEvent(event);
    19801975}
    19811976
     
    19841979    ASSERT(!event.isNull());
    19851980    // Pass an empty call stack, since we don't have the one from the other process.
    1986     m_frame->domWindow()->dispatchMessageEventWithOriginCheck(intendedTargetOrigin.get(), event, 0);
     1981    m_frame->document()->domWindow()->dispatchMessageEventWithOriginCheck(intendedTargetOrigin.get(), event, 0);
    19871982}
    19881983
     
    21912186        }
    21922187    }
    2193     OwnPtr<MessagePortArray> portArray = WebCore::MessagePort::entanglePorts(*(m_frame->domWindow()->scriptExecutionContext()), channels.release());
     2188    OwnPtr<MessagePortArray> portArray = WebCore::MessagePort::entanglePorts(*(m_frame->document()), channels.release());
    21942189
    21952190    RefPtr<DeliveredIntent> deliveredIntent = DeliveredIntent::create(m_frame, client.release(), intent.action(), intent.type(), intentData, portArray.release(), webcoreIntent->extras());
    21962191
    2197     DOMWindowIntents::from(m_frame->domWindow())->deliver(deliveredIntent.release());
     2192    DOMWindowIntents::from(m_frame->document()->domWindow())->deliver(deliveredIntent.release());
    21982193#endif
    21992194}
  • trunk/Source/WebKit/chromium/src/WebPagePopupImpl.cpp

    r125169 r125615  
    199199    writer->end();
    200200
    201     ASSERT(frame->existingDOMWindow());
    202     DOMWindowPagePopup::install(frame->existingDOMWindow(), m_popupClient);
     201    DOMWindowPagePopup::install(frame->document()->domWindow(), m_popupClient);
    203202    return true;
    204203}
  • trunk/Source/WebKit/efl/ChangeLog

    r125500 r125615  
     12012-08-14  Adam Barth  <abarth@webkit.org>
     2
     3        Delete Frame::domWindow() and Frame::existingDOMWindow()
     4        https://bugs.webkit.org/show_bug.cgi?id=93990
     5
     6        Reviewed by Eric Seidel.
     7
     8        * WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
     9        (DumpRenderTreeSupportEfl::pendingUnloadEventCount):
     10        * ewk/ewk_frame.cpp:
     11        (ewk_frame_intent_deliver):
     12
    1132012-08-13  Tom Sepez  <tsepez@chromium.org>
    214
  • trunk/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.cpp

    r123711 r125615  
    226226{
    227227    if (WebCore::Frame* frame = EWKPrivate::coreFrame(ewkFrame))
    228         return frame->domWindow()->pendingUnloadEventListeners();
     228        return frame->document()->domWindow()->pendingUnloadEventListeners();
    229229
    230230    return 0;
  • trunk/Source/WebKit/efl/ewk/ewk_frame.cpp

    r124945 r125615  
    767767            (*channels)[i] = origChannels->at(i).release();
    768768    }
    769     OwnPtr<WebCore::MessagePortArray> ports = WebCore::MessagePort::entanglePorts(*(smartData->frame->domWindow()->scriptExecutionContext()), channels.release());
     769    OwnPtr<WebCore::MessagePortArray> ports = WebCore::MessagePort::entanglePorts(*(smartData->frame->document()), channels.release());
    770770
    771771    OwnPtr<WebCore::DeliveredIntentClient> dummyClient;
    772772    RefPtr<WebCore::DeliveredIntent> deliveredIntent = WebCore::DeliveredIntent::create(smartData->frame, dummyClient.release(), intent->action(), intent->type(), intent->data(), ports.release(), intent->extras());
    773773
    774     WebCore::DOMWindowIntents::from(smartData->frame->domWindow())->deliver(deliveredIntent.release());
     774    WebCore::DOMWindowIntents::from(smartData->frame->document()->domWindow())->deliver(deliveredIntent.release());
    775775#endif
    776776}
  • trunk/Source/WebKit/gtk/ChangeLog

    r125500 r125615  
     12012-08-14  Adam Barth  <abarth@webkit.org>
     2
     3        Delete Frame::domWindow() and Frame::existingDOMWindow()
     4        https://bugs.webkit.org/show_bug.cgi?id=93990
     5
     6        Reviewed by Eric Seidel.
     7
     8        * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
     9        (DumpRenderTreeSupportGtk::getPendingUnloadEventCount):
     10
    1112012-08-13  Tom Sepez  <tsepez@chromium.org>
    212
  • trunk/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp

    r123711 r125615  
    280280    g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
    281281
    282     return core(frame)->domWindow()->pendingUnloadEventListeners();
     282    return core(frame)->document()->domWindow()->pendingUnloadEventListeners();
    283283}
    284284
  • trunk/Source/WebKit/mac/ChangeLog

    r125601 r125615  
     12012-08-14  Adam Barth  <abarth@webkit.org>
     2
     3        Delete Frame::domWindow() and Frame::existingDOMWindow()
     4        https://bugs.webkit.org/show_bug.cgi?id=93990
     5
     6        Reviewed by Eric Seidel.
     7
     8        * WebView/WebFrame.mm:
     9        (-[WebFrame _pendingFrameUnloadEventCount]):
     10        (-[WebFrame _cacheabilityDictionary]):
     11
    1122012-08-14  Tom Sepez  <tsepez@chromium.org>
    213
  • trunk/Source/WebKit/mac/WebView/WebFrame.mm

    r121381 r125615  
    907907- (unsigned)_pendingFrameUnloadEventCount
    908908{
    909     return _private->coreFrame->domWindow()->pendingUnloadEventListeners();
     909    return _private->coreFrame->document()->domWindow()->pendingUnloadEventListeners();
    910910}
    911911
     
    10681068        [result setObject:[NSNumber numberWithBool:YES] forKey:WebFrameHasPlugins];
    10691069   
    1070     if (DOMWindow* domWindow = _private->coreFrame->domWindow()) {
     1070    if (DOMWindow* domWindow = _private->coreFrame->document()->domWindow()) {
    10711071        if (domWindow->hasEventListeners(eventNames().unloadEvent))
    10721072            [result setObject:[NSNumber numberWithBool:YES] forKey:WebFrameHasUnloadListener];
  • trunk/Source/WebKit/qt/ChangeLog

    r125603 r125615  
     12012-08-14  Adam Barth  <abarth@webkit.org>
     2
     3        Delete Frame::domWindow() and Frame::existingDOMWindow()
     4        https://bugs.webkit.org/show_bug.cgi?id=93990
     5
     6        Reviewed by Eric Seidel.
     7
     8        * WebCoreSupport/FrameLoaderClientQt.cpp:
     9        (WebCore::FrameLoaderClientQt::dispatchDidFinishDocumentLoad):
     10
    1112012-08-14  Lauro Neto  <lauro.neto@openbossa.org>
    212
  • trunk/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp

    r125500 r125615  
    504504
    505505    if (QWebPagePrivate::drtRun) {
    506         int unloadEventCount = m_frame->domWindow()->pendingUnloadEventListeners();
     506        int unloadEventCount = m_frame->document()->domWindow()->pendingUnloadEventListeners();
    507507        if (unloadEventCount)
    508508            printf("%s - has %u onunload handler(s)\n", qPrintable(drtDescriptionSuitableForTestResult(m_frame)), unloadEventCount);
  • trunk/Source/WebKit/win/ChangeLog

    r125500 r125615  
     12012-08-14  Adam Barth  <abarth@webkit.org>
     2
     3        Delete Frame::domWindow() and Frame::existingDOMWindow()
     4        https://bugs.webkit.org/show_bug.cgi?id=93990
     5
     6        Reviewed by Eric Seidel.
     7
     8        * WebFrame.cpp:
     9        (WebFrame::DOMWindow):
     10        (WebFrame::pendingFrameUnloadEventCount):
     11
    1122012-08-13  Tom Sepez  <tsepez@chromium.org>
    213
  • trunk/Source/WebKit/win/WebFrame.cpp

    r123718 r125615  
    479479
    480480    if (Frame* coreFrame = core(this)) {
    481         if (WebCore::DOMWindow* coreWindow = coreFrame->domWindow())
     481        if (WebCore::DOMWindow* coreWindow = coreFrame->document()->domWindow())
    482482            *window = ::DOMWindow::createInstance(coreWindow);
    483483    }
     
    990990        return E_FAIL;
    991991
    992     *result = coreFrame->domWindow()->pendingUnloadEventListeners();
     992    *result = coreFrame->document()->domWindow()->pendingUnloadEventListeners();
    993993    return S_OK;
    994994}
  • trunk/Source/WebKit2/ChangeLog

    r125603 r125615  
     12012-08-14  Adam Barth  <abarth@webkit.org>
     2
     3        Delete Frame::domWindow() and Frame::existingDOMWindow()
     4        https://bugs.webkit.org/show_bug.cgi?id=93990
     5
     6        Reviewed by Eric Seidel.
     7
     8        * WebProcess/WebPage/WebFrame.cpp:
     9        (WebKit::WebFrame::deliverIntent):
     10        (WebKit::WebFrame::pendingUnloadCount):
     11
    1122012-08-14  Lauro Neto  <lauro.neto@openbossa.org>
    213
  • trunk/Source/WebKit2/WebProcess/WebPage/WebFrame.cpp

    r121381 r125615  
    252252                                                                      SerializedScriptValue::adopt(dataCopy), dummyPorts.release(),
    253253                                                                      intentData.extras);
    254     WebCore::DOMWindowIntents::from(m_coreFrame->domWindow())->deliver(deliveredIntent.release());
     254    WebCore::DOMWindowIntents::from(m_coreFrame->document()->domWindow())->deliver(deliveredIntent.release());
    255255}
    256256#endif
     
    494494        return 0;
    495495
    496     return m_coreFrame->domWindow()->pendingUnloadEventListeners();
     496    return m_coreFrame->document()->domWindow()->pendingUnloadEventListeners();
    497497}
    498498
Note: See TracChangeset for help on using the changeset viewer.