From dcc8cf2e65d1aa555cce12431a16547e66b469ee Mon Sep 17 00:00:00 2001 From: Steve Block Date: Tue, 27 Apr 2010 16:31:00 +0100 Subject: Merge webkit.org at r58033 : Initial merge by git Change-Id: If006c38561af287c50cd578d251629b51e4d8cd1 --- WebKit/chromium/src/WebDocument.cpp | 77 ++++++++++++++----------------------- 1 file changed, 29 insertions(+), 48 deletions(-) (limited to 'WebKit/chromium/src/WebDocument.cpp') diff --git a/WebKit/chromium/src/WebDocument.cpp b/WebKit/chromium/src/WebDocument.cpp index 2a91e22..21e2bb8 100644 --- a/WebKit/chromium/src/WebDocument.cpp +++ b/WebKit/chromium/src/WebDocument.cpp @@ -32,7 +32,6 @@ #include "WebDocument.h" #include "Document.h" -#include "DocumentLoader.h" #include "Element.h" #include "HTMLAllCollection.h" #include "HTMLBodyElement.h" @@ -44,6 +43,7 @@ #include "WebElement.h" #include "WebFrameImpl.h" #include "WebNodeCollection.h" +#include "WebNodeList.h" #include "WebURL.h" #include @@ -52,22 +52,6 @@ using namespace WebCore; namespace WebKit { -WebDocument::WebDocument(const PassRefPtr& elem) - : WebNode(elem) -{ -} - -WebDocument& WebDocument::operator=(const PassRefPtr& elem) -{ - WebNode::assign(elem.releaseRef()); - return *this; -} - -WebDocument::operator PassRefPtr() const -{ - return PassRefPtr(static_cast(m_private)); -} - WebFrame* WebDocument::frame() const { return WebFrameImpl::fromFrame(constUnwrap()->frame()); @@ -78,11 +62,21 @@ bool WebDocument::isHTMLDocument() const return constUnwrap()->isHTMLDocument(); } +bool WebDocument::isPluginDocument() const +{ + return constUnwrap()->isPluginDocument(); +} + WebURL WebDocument::baseURL() const { return constUnwrap()->baseURL(); } +WebURL WebDocument::firstPartyForCookies() const +{ + return constUnwrap()->firstPartyForCookies(); +} + WebElement WebDocument::documentElement() const { return WebElement(constUnwrap()->documentElement()); @@ -118,38 +112,25 @@ WebElement WebDocument::getElementById(const WebString& id) const return WebElement(constUnwrap()->getElementById(id)); } -WebString WebDocument::applicationID() const +WebNode WebDocument::focusedNode() const +{ + return WebNode(constUnwrap()->focusedNode()); +} + +WebDocument::WebDocument(const PassRefPtr& elem) + : WebNode(elem) +{ +} + +WebDocument& WebDocument::operator=(const PassRefPtr& elem) +{ + m_private = elem; + return *this; +} + +WebDocument::operator PassRefPtr() const { - const char* kChromeApplicationHeader = "x-chrome-application"; - - // First check if the document's response included a header indicating the - // application it should go with. - const Document* document = constUnwrap(); - Frame* frame = document->frame(); - if (!frame) - return WebString(); - - DocumentLoader* loader = frame->loader()->documentLoader(); - if (!loader) - return WebString(); - - WebString headerValue = - loader->response().httpHeaderField(kChromeApplicationHeader); - if (!headerValue.isEmpty()) - return headerValue; - - // Otherwise, fall back to looking for the meta tag. - RefPtr metaTags = - const_cast(document)->getElementsByTagName("meta"); - for (unsigned i = 0; i < metaTags->length(); ++i) { - Element* element = static_cast(metaTags->item(i)); - if (element->getAttribute("http-equiv").lower() == - kChromeApplicationHeader) { - return element->getAttribute("value"); - } - } - - return WebString(); + return static_cast(m_private.get()); } } // namespace WebKit -- cgit v1.1