[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

paroga at webkit.org paroga at webkit.org
Wed Dec 22 13:34:14 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit d3f2eb4e9f08147b2ee8160cf9d94dfbb8643039
Author: paroga at webkit.org <paroga at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Sep 20 18:07:51 2010 +0000

    2010-09-20  Patrick Gansterer  <paroga at paroga.com>
    
            Reviewed by Adam Roben.
    
            Add FrameLoaderClientWinCE
            https://bugs.webkit.org/show_bug.cgi?id=45682
    
            * WebCoreSupport/FrameLoaderClientWinCE.cpp: Added.
            * WebCoreSupport/FrameLoaderClientWinCE.h: Added.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67863 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/wince/ChangeLog b/WebKit/wince/ChangeLog
index ce377b4..fba4def 100644
--- a/WebKit/wince/ChangeLog
+++ b/WebKit/wince/ChangeLog
@@ -1,3 +1,13 @@
+2010-09-20  Patrick Gansterer  <paroga at paroga.com>
+
+        Reviewed by Adam Roben.
+
+        Add FrameLoaderClientWinCE
+        https://bugs.webkit.org/show_bug.cgi?id=45682
+
+        * WebCoreSupport/FrameLoaderClientWinCE.cpp: Added.
+        * WebCoreSupport/FrameLoaderClientWinCE.h: Added.
+
 2010-09-16  Patrick Gansterer  <paroga at paroga.com>
 
         Reviewed by Adam Roben.
diff --git a/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.cpp b/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.cpp
new file mode 100644
index 0000000..b11df84
--- /dev/null
+++ b/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.cpp
@@ -0,0 +1,627 @@
+/*
+ * Copyright (C) 2010 Patrick Gansterer <paroga at paroga.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "FrameLoaderClientWinCE.h"
+
+#include "DocumentLoader.h"
+#include "FrameLoader.h"
+#include "FrameNetworkingContextWinCE.h"
+#include "FrameView.h"
+#include "HTMLFormElement.h"
+#include "MIMETypeRegistry.h"
+#include "NotImplemented.h"
+#include "PluginDatabase.h"
+#include "RenderPart.h"
+#include "WebView.h"
+
+using namespace WebCore;
+
+namespace WebKit {
+
+FrameLoaderClientWinCE::FrameLoaderClientWinCE(WebView* view)
+    : m_webView(view)
+    , m_pluginView(0)
+{
+    ASSERT(m_webView);
+}
+
+FrameLoaderClientWinCE::~FrameLoaderClientWinCE()
+{
+}
+
+String FrameLoaderClientWinCE::userAgent(const KURL&)
+{
+    return "WebKitWinCE";
+}
+
+PassRefPtr<DocumentLoader> FrameLoaderClientWinCE::createDocumentLoader(const WebCore::ResourceRequest& request, const SubstituteData& substituteData)
+{
+    return DocumentLoader::create(request, substituteData);
+}
+
+void FrameLoaderClientWinCE::committedLoad(DocumentLoader* loader, const char* data, int length)
+{
+    if (m_pluginView) {
+        if (!m_hasSentResponseToPlugin) {
+            m_pluginView->didReceiveResponse(loader->response());
+            m_hasSentResponseToPlugin = true;
+        }
+        m_pluginView->didReceiveData(data, length);
+    } else
+        loader->commitData(data, length);
+}
+
+bool FrameLoaderClientWinCE::shouldUseCredentialStorage(DocumentLoader*, unsigned long)
+{
+    notImplemented();
+    return false;
+}
+
+void FrameLoaderClientWinCE::dispatchDidReceiveAuthenticationChallenge(DocumentLoader*, unsigned long, const AuthenticationChallenge&)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidCancelAuthenticationChallenge(DocumentLoader*, unsigned long, const AuthenticationChallenge&)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchWillSendRequest(DocumentLoader*, unsigned long, WebCore::ResourceRequest&, const WebCore::ResourceResponse&)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::assignIdentifierToInitialRequest(unsigned long, DocumentLoader*, const WebCore::ResourceRequest&)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::postProgressStartedNotification()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::postProgressEstimateChangedNotification()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::postProgressFinishedNotification()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::frameLoaderDestroyed()
+{
+    m_webView = 0;
+    m_frame = 0;
+    delete this;
+}
+
+void FrameLoaderClientWinCE::dispatchDidReceiveResponse(DocumentLoader*, unsigned long, const ResourceResponse& response)
+{
+    m_response = response;
+}
+
+void FrameLoaderClientWinCE::dispatchDecidePolicyForMIMEType(FramePolicyFunction policyFunction, const String& mimeType, const WebCore::ResourceRequest&)
+{
+    if (canShowMIMEType(mimeType))
+        (m_frame->loader()->policyChecker()->*policyFunction)(PolicyUse);
+    else
+        (m_frame->loader()->policyChecker()->*policyFunction)(PolicyDownload);
+}
+
+void FrameLoaderClientWinCE::dispatchDecidePolicyForNewWindowAction(FramePolicyFunction policyFunction, const NavigationAction&, const WebCore::ResourceRequest&, PassRefPtr<FormState>, const String&)
+{
+    (m_frame->loader()->policyChecker()->*policyFunction)(PolicyUse);
+}
+
+void FrameLoaderClientWinCE::dispatchDecidePolicyForNavigationAction(FramePolicyFunction policyFunction, const NavigationAction&, const WebCore::ResourceRequest&, PassRefPtr<FormState>)
+{
+    (m_frame->loader()->policyChecker()->*policyFunction)(PolicyUse);
+}
+
+void FrameLoaderClientWinCE::dispatchWillSubmitForm(FramePolicyFunction policyFunction, PassRefPtr<FormState>)
+{
+    (m_frame->loader()->policyChecker()->*policyFunction)(PolicyUse);
+}
+
+PassRefPtr<Widget> FrameLoaderClientWinCE::createPlugin(const IntSize&, HTMLPlugInElement*, const KURL&, const Vector<String>&, const Vector<String>&, const String&, bool)
+{
+    return 0;
+}
+
+PassRefPtr<Frame> FrameLoaderClientWinCE::createFrame(const KURL& url, const String& name, HTMLFrameOwnerElement* ownerElement,
+                                                 const String& referrer, bool allowsScrolling, int marginWidth, int marginHeight)
+{
+    return m_webView->createFrame(url, name, ownerElement, referrer, allowsScrolling, marginWidth, marginHeight);
+}
+
+void FrameLoaderClientWinCE::didTransferChildFrameToNewDocument()
+{
+}
+
+void FrameLoaderClientWinCE::redirectDataToPlugin(Widget* pluginWidget)
+{
+    ASSERT(!m_pluginView);
+    m_pluginView = static_cast<PluginView*>(pluginWidget);
+    m_hasSentResponseToPlugin = false;
+}
+
+PassRefPtr<Widget> FrameLoaderClientWinCE::createJavaAppletWidget(const IntSize&, HTMLAppletElement*, const KURL&, const Vector<String>&, const Vector<String>&)
+{
+    notImplemented();
+    return 0;
+}
+
+ObjectContentType FrameLoaderClientWinCE::objectContentType(const KURL& url, const String& mimeType)
+{
+    return FrameLoader::defaultObjectContentType(url, mimeType);
+}
+
+String FrameLoaderClientWinCE::overrideMediaType() const
+{
+    notImplemented();
+    return String();
+}
+
+void FrameLoaderClientWinCE::dispatchDidClearWindowObjectInWorld(DOMWrapperWorld*)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::documentElementAvailable()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::didPerformFirstNavigation() const
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::registerForIconNotification(bool)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::setMainFrameDocumentReady(bool)
+{
+    notImplemented();
+}
+
+bool FrameLoaderClientWinCE::hasWebView() const
+{
+    return true;
+}
+
+void FrameLoaderClientWinCE::dispatchDidFinishLoad()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::frameLoadCompleted()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::saveViewStateToItem(HistoryItem*)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::restoreViewState()
+{
+    notImplemented();
+}
+
+bool FrameLoaderClientWinCE::shouldGoToHistoryItem(HistoryItem* item) const
+{
+    return item;
+}
+
+void FrameLoaderClientWinCE::dispatchDidAddBackForwardItem(HistoryItem*) const
+{
+}
+
+void FrameLoaderClientWinCE::dispatchDidRemoveBackForwardItem(HistoryItem*) const
+{
+}
+
+void FrameLoaderClientWinCE::dispatchDidChangeBackForwardIndex() const
+{
+}
+
+void FrameLoaderClientWinCE::didDisplayInsecureContent()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::didRunInsecureContent(SecurityOrigin*)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::makeRepresentation(DocumentLoader*)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::forceLayout()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::forceLayoutForNonHTML()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::setCopiesOnScroll()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::detachedFromParent2()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::detachedFromParent3()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidHandleOnloadEvents()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidReceiveServerRedirectForProvisionalLoad()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidCancelClientRedirect()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchWillPerformClientRedirect(const KURL&, double, double)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidChangeLocationWithinPage()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidPushStateWithinPage()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidReplaceStateWithinPage()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidPopStateWithinPage()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchWillClose()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidReceiveIcon()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidStartProvisionalLoad()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidReceiveTitle(const String&)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidChangeIcons()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidCommitLoad()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidFinishDocumentLoad()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidFirstLayout()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidFirstVisuallyNonEmptyLayout()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchShow()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::cancelPolicyCheck()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidLoadMainResource(DocumentLoader*)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::revertToProvisionalState(DocumentLoader*)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::willChangeTitle(DocumentLoader*)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::didChangeTitle(DocumentLoader* documentLoader)
+{
+    setTitle(documentLoader->title(), documentLoader->url());
+}
+
+bool FrameLoaderClientWinCE::canHandleRequest(const WebCore::ResourceRequest&) const
+{
+    notImplemented();
+    return true;
+}
+
+bool FrameLoaderClientWinCE::canShowMIMEType(const String& type) const
+{
+    return (MIMETypeRegistry::isSupportedImageMIMEType(type)
+            || MIMETypeRegistry::isSupportedNonImageMIMEType(type)
+            || MIMETypeRegistry::isSupportedMediaMIMEType(type)
+            || PluginDatabase::installedPlugins()->isMIMETypeRegistered(type));
+}
+
+bool FrameLoaderClientWinCE::representationExistsForURLScheme(const String&) const
+{
+    notImplemented();
+    return false;
+}
+
+String FrameLoaderClientWinCE::generatedMIMETypeForURLScheme(const String&) const
+{
+    notImplemented();
+    return String();
+}
+
+void FrameLoaderClientWinCE::finishedLoading(DocumentLoader* documentLoader)
+{
+    if (!m_pluginView) {
+        FrameLoader* loader = documentLoader->frameLoader();
+        loader->writer()->setEncoding(m_response.textEncodingName(), false);
+        return;
+    }
+
+    m_pluginView->didFinishLoading();
+    m_pluginView = 0;
+    m_hasSentResponseToPlugin = false;
+}
+
+void FrameLoaderClientWinCE::provisionalLoadStarted()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::didFinishLoad()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::prepareForDataSourceReplacement()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::setTitle(const String&, const KURL&)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidReceiveContentLength(DocumentLoader*, unsigned long, int)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidFinishLoading(DocumentLoader*, unsigned long)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::dispatchDidFailLoading(DocumentLoader*, unsigned long, const ResourceError&)
+{
+    notImplemented();
+}
+
+bool FrameLoaderClientWinCE::dispatchDidLoadResourceFromMemoryCache(DocumentLoader*, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, int)
+{
+    notImplemented();
+    return false;
+}
+
+void FrameLoaderClientWinCE::dispatchDidFailProvisionalLoad(const ResourceError& error)
+{
+    dispatchDidFailLoad(error);
+}
+
+void FrameLoaderClientWinCE::dispatchDidFailLoad(const ResourceError&)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::download(ResourceHandle*, const WebCore::ResourceRequest&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&)
+{
+    notImplemented();
+}
+
+ResourceError FrameLoaderClientWinCE::cancelledError(const WebCore::ResourceRequest&)
+{
+    return ResourceError();
+}
+
+ResourceError FrameLoaderClientWinCE::blockedError(const WebCore::ResourceRequest&)
+{
+    return ResourceError();
+}
+
+ResourceError FrameLoaderClientWinCE::cannotShowURLError(const WebCore::ResourceRequest&)
+{
+    return ResourceError();
+}
+
+ResourceError FrameLoaderClientWinCE::interruptForPolicyChangeError(const WebCore::ResourceRequest&)
+{
+    return ResourceError();
+}
+
+ResourceError FrameLoaderClientWinCE::cannotShowMIMETypeError(const WebCore::ResourceResponse&)
+{
+    return ResourceError();
+}
+
+ResourceError FrameLoaderClientWinCE::fileDoesNotExistError(const WebCore::ResourceResponse&)
+{
+    return ResourceError();
+}
+
+ResourceError FrameLoaderClientWinCE::pluginWillHandleLoadError(const WebCore::ResourceResponse&)
+{
+    return ResourceError();
+}
+
+bool FrameLoaderClientWinCE::shouldFallBack(const ResourceError& error)
+{
+    return !(error.isCancellation());
+}
+
+bool FrameLoaderClientWinCE::canCachePage() const
+{
+    return true;
+}
+
+Frame* FrameLoaderClientWinCE::dispatchCreatePage()
+{
+    notImplemented();
+    return 0;
+}
+
+void FrameLoaderClientWinCE::dispatchUnableToImplementPolicy(const ResourceError&)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::setMainDocumentError(DocumentLoader*, const ResourceError& error)
+{
+    if (!m_pluginView)
+        return;
+
+    m_pluginView->didFail(error);
+    m_pluginView = 0;
+    m_hasSentResponseToPlugin = false;
+}
+
+void FrameLoaderClientWinCE::startDownload(const WebCore::ResourceRequest&)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::updateGlobalHistory()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::updateGlobalHistoryRedirectLinks()
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::savePlatformDataToCachedFrame(CachedFrame*)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::transitionToCommittedFromCachedFrame(CachedFrame*)
+{
+    notImplemented();
+}
+
+void FrameLoaderClientWinCE::transitionToCommittedForNewPage()
+{
+    Page* page = m_frame->page();
+    ASSERT(page);
+
+    bool isMainFrame = m_frame == page->mainFrame();
+
+    m_frame->setView(0);
+
+    RefPtr<FrameView> frameView;
+    if (isMainFrame) {
+        RECT rect;
+        m_webView->frameRect(&rect);
+        frameView = FrameView::create(m_frame, IntRect(rect).size());
+    } else
+        frameView = FrameView::create(m_frame);
+
+    m_frame->setView(frameView);
+
+    if (m_frame->ownerRenderer())
+        m_frame->ownerRenderer()->setWidget(frameView);
+}
+
+PassRefPtr<WebCore::FrameNetworkingContext> FrameLoaderClientWinCE::createNetworkingContext()
+{
+    return FrameNetworkingContextWinCE::create(m_frame, userAgent(KURL()));
+}
+
+} // namespace WebKit
diff --git a/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.h b/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.h
new file mode 100644
index 0000000..94810bc
--- /dev/null
+++ b/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.h
@@ -0,0 +1,196 @@
+/*
+ * Copyright (C) 2010 Patrick Gansterer <paroga at paroga.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef FrameLoaderClientWinCE_h
+#define FrameLoaderClientWinCE_h
+
+#include "FrameLoaderClient.h"
+#include "PluginView.h"
+#include "ResourceResponse.h"
+
+class WebView;
+
+namespace WebKit {
+
+class FrameLoaderClientWinCE : public WebCore::FrameLoaderClient {
+public:
+    FrameLoaderClientWinCE(WebView*);
+    virtual ~FrameLoaderClientWinCE();
+    virtual void frameLoaderDestroyed();
+
+    WebView* webView() const { return m_webView; }
+
+    virtual bool hasWebView() const;
+
+    virtual void makeRepresentation(WebCore::DocumentLoader*);
+    virtual void forceLayout();
+    virtual void forceLayoutForNonHTML();
+
+    virtual void setCopiesOnScroll();
+
+    virtual void detachedFromParent2();
+    virtual void detachedFromParent3();
+
+    virtual void assignIdentifierToInitialRequest(unsigned long identifier, WebCore::DocumentLoader*, const WebCore::ResourceRequest&);
+
+    virtual void dispatchWillSendRequest(WebCore::DocumentLoader*, unsigned long  identifier, WebCore::ResourceRequest&, const WebCore::ResourceResponse& redirectResponse);
+    virtual bool shouldUseCredentialStorage(WebCore::DocumentLoader*, unsigned long identifier);
+    virtual void dispatchDidReceiveAuthenticationChallenge(WebCore::DocumentLoader*, unsigned long identifier, const WebCore::AuthenticationChallenge&);
+    virtual void dispatchDidCancelAuthenticationChallenge(WebCore::DocumentLoader*, unsigned long  identifier, const WebCore::AuthenticationChallenge&);
+    virtual void dispatchDidReceiveResponse(WebCore::DocumentLoader*, unsigned long  identifier, const WebCore::ResourceResponse&);
+    virtual void dispatchDidReceiveContentLength(WebCore::DocumentLoader*, unsigned long identifier, int lengthReceived);
+    virtual void dispatchDidFinishLoading(WebCore::DocumentLoader*, unsigned long  identifier);
+    virtual void dispatchDidFailLoading(WebCore::DocumentLoader*, unsigned long  identifier, const WebCore::ResourceError&);
+    virtual bool dispatchDidLoadResourceFromMemoryCache(WebCore::DocumentLoader*, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, int length);
+
+    virtual void dispatchDidHandleOnloadEvents();
+    virtual void dispatchDidReceiveServerRedirectForProvisionalLoad();
+    virtual void dispatchDidCancelClientRedirect();
+    virtual void dispatchWillPerformClientRedirect(const WebCore::KURL&, double, double);
+    virtual void dispatchDidChangeLocationWithinPage();
+    virtual void dispatchDidPushStateWithinPage();
+    virtual void dispatchDidReplaceStateWithinPage();
+    virtual void dispatchDidPopStateWithinPage();
+    virtual void dispatchWillClose();
+    virtual void dispatchDidReceiveIcon();
+    virtual void dispatchDidStartProvisionalLoad();
+    virtual void dispatchDidReceiveTitle(const WTF::String&);
+    virtual void dispatchDidChangeIcons();
+    virtual void dispatchDidCommitLoad();
+    virtual void dispatchDidFailProvisionalLoad(const WebCore::ResourceError&);
+    virtual void dispatchDidFailLoad(const WebCore::ResourceError&);
+    virtual void dispatchDidFinishDocumentLoad();
+    virtual void dispatchDidFinishLoad();
+    virtual void dispatchDidFirstLayout();
+    virtual void dispatchDidFirstVisuallyNonEmptyLayout();
+
+    virtual WebCore::Frame* dispatchCreatePage();
+    virtual void dispatchShow();
+
+    virtual void dispatchDecidePolicyForMIMEType(WebCore::FramePolicyFunction, const WTF::String& MIMEType, const WebCore::ResourceRequest&);
+    virtual void dispatchDecidePolicyForNewWindowAction(WebCore::FramePolicyFunction, const WebCore::NavigationAction&, const WebCore::ResourceRequest&, WTF::PassRefPtr<WebCore::FormState>, const WTF::String& frameName);
+    virtual void dispatchDecidePolicyForNavigationAction(WebCore::FramePolicyFunction, const WebCore::NavigationAction&, const WebCore::ResourceRequest&, WTF::PassRefPtr<WebCore::FormState>);
+    virtual void cancelPolicyCheck();
+
+    virtual void dispatchUnableToImplementPolicy(const WebCore::ResourceError&);
+
+    virtual void dispatchWillSendSubmitEvent(WebCore::HTMLFormElement*) { }
+    virtual void dispatchWillSubmitForm(WebCore::FramePolicyFunction, WTF::PassRefPtr<WebCore::FormState>);
+
+    virtual void dispatchDidLoadMainResource(WebCore::DocumentLoader*);
+    virtual void revertToProvisionalState(WebCore::DocumentLoader*);
+    virtual void setMainDocumentError(WebCore::DocumentLoader*, const WebCore::ResourceError&);
+
+    virtual void postProgressStartedNotification();
+    virtual void postProgressEstimateChangedNotification();
+    virtual void postProgressFinishedNotification();
+
+    virtual PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL& url, const WTF::String& name, WebCore::HTMLFrameOwnerElement* ownerElement,
+                               const WTF::String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
+    virtual void didTransferChildFrameToNewDocument();
+    virtual PassRefPtr<WebCore::Widget> createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const WTF::Vector<WTF::String>&, const WTF::Vector<WTF::String>&, const WTF::String&, bool);
+    virtual void redirectDataToPlugin(WebCore::Widget* pluginWidget);
+    virtual PassRefPtr<WebCore::Widget> createJavaAppletWidget(const WebCore::IntSize&, WebCore::HTMLAppletElement*, const WebCore::KURL& baseURL, const WTF::Vector<WTF::String>& paramNames, const WTF::Vector<WTF::String>& paramValues);
+    virtual WTF::String overrideMediaType() const;
+    virtual void dispatchDidClearWindowObjectInWorld(WebCore::DOMWrapperWorld*);
+    virtual void documentElementAvailable();
+    virtual void didPerformFirstNavigation() const;
+
+    virtual void registerForIconNotification(bool);
+
+    virtual WebCore::ObjectContentType objectContentType(const WebCore::KURL& url, const WTF::String& mimeType);
+
+    virtual void setMainFrameDocumentReady(bool);
+
+    virtual void startDownload(const WebCore::ResourceRequest&);
+
+    virtual void willChangeTitle(WebCore::DocumentLoader*);
+    virtual void didChangeTitle(WebCore::DocumentLoader*);
+
+    virtual void committedLoad(WebCore::DocumentLoader*, const char*, int);
+    virtual void finishedLoading(WebCore::DocumentLoader*);
+
+    virtual void updateGlobalHistory();
+    virtual void updateGlobalHistoryRedirectLinks();
+    virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
+    virtual void dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const;
+    virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
+    virtual void dispatchDidChangeBackForwardIndex() const;
+
+    virtual void didDisplayInsecureContent();
+    virtual void didRunInsecureContent(WebCore::SecurityOrigin*);
+
+    virtual WebCore::ResourceError cancelledError(const WebCore::ResourceRequest&);
+    virtual WebCore::ResourceError blockedError(const WebCore::ResourceRequest&);
+    virtual WebCore::ResourceError cannotShowURLError(const WebCore::ResourceRequest&);
+    virtual WebCore::ResourceError interruptForPolicyChangeError(const WebCore::ResourceRequest&);
+
+    virtual WebCore::ResourceError cannotShowMIMETypeError(const WebCore::ResourceResponse&);
+    virtual WebCore::ResourceError fileDoesNotExistError(const WebCore::ResourceResponse&);
+    virtual WebCore::ResourceError pluginWillHandleLoadError(const WebCore::ResourceResponse&);
+
+    virtual bool shouldFallBack(const WebCore::ResourceError&);
+
+    virtual bool canHandleRequest(const WebCore::ResourceRequest&) const;
+    virtual bool canShowMIMEType(const WTF::String&) const;
+    virtual bool representationExistsForURLScheme(const WTF::String&) const;
+    virtual WTF::String generatedMIMETypeForURLScheme(const WTF::String&) const;
+
+    virtual void frameLoadCompleted();
+    virtual void saveViewStateToItem(WebCore::HistoryItem*);
+    virtual void restoreViewState();
+    virtual void provisionalLoadStarted();
+    virtual void didFinishLoad();
+    virtual void prepareForDataSourceReplacement();
+
+    virtual WTF::PassRefPtr<WebCore::DocumentLoader> createDocumentLoader(const WebCore::ResourceRequest&, const WebCore::SubstituteData&);
+    virtual void setTitle(const WTF::String& title, const WebCore::KURL&);
+
+    virtual WTF::String userAgent(const WebCore::KURL&);
+
+    virtual void savePlatformDataToCachedFrame(WebCore::CachedFrame*);
+    virtual void transitionToCommittedFromCachedFrame(WebCore::CachedFrame*);
+    virtual void transitionToCommittedForNewPage();
+
+    virtual bool canCachePage() const;
+    virtual void download(WebCore::ResourceHandle*, const WebCore::ResourceRequest&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&);
+
+    virtual PassRefPtr<WebCore::FrameNetworkingContext> createNetworkingContext();
+
+    void setFrame(WebCore::Frame *frame) { m_frame = frame; }
+    WebCore::Frame *frame() { return m_frame; }
+
+private:
+    WebView* m_webView;
+    WebCore::Frame* m_frame;
+    WebCore::ResourceResponse m_response;
+
+    // Plugin view to redirect data to
+    WebCore::PluginView* m_pluginView;
+    bool m_hasSentResponseToPlugin;
+};
+
+} // namespace WebKit
+
+#endif // FrameLoaderClientWinCE_h

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list