FrameLoaderClientWx.cpp revision 2fc2651226baac27029e38c9d6ef883fa32084db
18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/*
28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Copyright (C) 2007 Kevin Ollivier <kevino@theolliviers.com>
38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * All rights reserved.
58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Redistribution and use in source and binary forms, with or without
78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * modification, are permitted provided that the following conditions
88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * are met:
98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 1. Redistributions of source code must retain the above copyright
108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *    notice, this list of conditions and the following disclaimer.
118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 2. Redistributions in binary form must reproduce the above copyright
128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *    notice, this list of conditions and the following disclaimer in the
138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *    documentation and/or other materials provided with the distribution.
148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */
278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "config.h"
298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "FrameLoaderClientWx.h"
308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
310bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include <JavaScriptCore/JavaScript.h>
320bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include <JavaScriptCore/APICast.h>
330bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch
348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "DocumentLoader.h"
350bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "FormState.h"
368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "Frame.h"
378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "FrameLoaderTypes.h"
388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "FrameView.h"
398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "FrameTree.h"
40643ca7872b450ea4efacab6188849e5aac2ba161Steve Block#include "PluginView.h"
418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "HTMLFormElement.h"
428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "HTMLFrameOwnerElement.h"
438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "NotImplemented.h"
448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "Page.h"
458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "PlatformString.h"
46643ca7872b450ea4efacab6188849e5aac2ba161Steve Block#include "PluginView.h"
478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "ProgressTracker.h"
488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "RenderPart.h"
498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "ResourceError.h"
508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "ResourceResponse.h"
510bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "ScriptController.h"
52231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block#include <wtf/PassRefPtr.h>
53231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block#include <wtf/RefPtr.h>
548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include <stdio.h>
568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5768513a70bcd92384395513322f1b801e7bf9c729Steve Block#include "FrameNetworkingContextWx.h"
580bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "WebFrame.h"
59231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block#include "WebFramePrivate.h"
608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "WebView.h"
618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "WebViewPrivate.h"
628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectnamespace WebCore {
648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinline int wxNavTypeFromWebNavType(NavigationType type){
668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (type == NavigationTypeLinkClicked)
678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return wxWEBVIEW_NAV_LINK_CLICKED;
688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (type == NavigationTypeFormSubmitted)
708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return wxWEBVIEW_NAV_FORM_SUBMITTED;
718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (type == NavigationTypeBackForward)
738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return wxWEBVIEW_NAV_BACK_NEXT;
748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (type == NavigationTypeReload)
768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return wxWEBVIEW_NAV_RELOAD;
778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (type == NavigationTypeFormResubmitted)
798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return wxWEBVIEW_NAV_FORM_RESUBMITTED;
808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return wxWEBVIEW_NAV_OTHER;
828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectFrameLoaderClientWx::FrameLoaderClientWx()
85643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    : m_frame(0)
86643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    , m_pluginView(0)
87643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    , m_hasSentResponseToPlugin(false)
88643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    , m_webFrame(0)
898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectFrameLoaderClientWx::~FrameLoaderClientWx()
948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
97231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Blockvoid FrameLoaderClientWx::setFrame(wxWebFrame *frame)
988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
99231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    m_webFrame = frame;
100231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    m_frame = m_webFrame->m_impl->frame;
1018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::setWebView(wxWebView *webview)
1048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    m_webView = webview;
1068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::hasWebView() const
1098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1100bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    return m_webView != NULL;
1118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::hasBackForwardList() const
1148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return true;
1178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::resetBackForwardList()
1218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::provisionalItemIsTarget() const
1278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return false;
1308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::makeRepresentation(DocumentLoader*)
1338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::forceLayout()
1398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::forceLayoutForNonHTML()
1458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::updateHistoryForCommit()
1518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::updateHistoryForBackForwardNavigation()
1578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::updateHistoryForReload()
1638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::updateHistoryForStandardLoad()
1698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::updateHistoryForInternalLoad()
1758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::updateHistoryAfterClientRedirect()
1818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::setCopiesOnScroll()
1878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // apparently mac specific
1898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectLoadErrorResetToken* FrameLoaderClientWx::tokenForLoadErrorReset()
1948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
1968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return 0;
1978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::resetAfterLoadError(LoadErrorResetToken*)
2018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::doNotResetAfterLoadError(LoadErrorResetToken*)
2078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::willCloseDocument()
2138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::detachedFromParent2()
2198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::detachedFromParent3()
2258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidHandleOnloadEvents()
2308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_webView) {
2328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wxWebViewLoadEvent wkEvent(m_webView);
2338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetState(wxWEBVIEW_LOAD_ONLOAD_HANDLED);
2348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetURL(m_frame->loader()->documentLoader()->request().url().string());
2358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        m_webView->GetEventHandler()->ProcessEvent(wkEvent);
2368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
2378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidReceiveServerRedirectForProvisionalLoad()
2418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidCancelClientRedirect()
2478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchWillPerformClientRedirect(const KURL&,
2538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                                                            double interval,
2548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                                                            double fireDate)
2558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidChangeLocationWithinPage()
2618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
265643ca7872b450ea4efacab6188849e5aac2ba161Steve Blockvoid FrameLoaderClientWx::dispatchDidPushStateWithinPage()
266643ca7872b450ea4efacab6188849e5aac2ba161Steve Block{
267643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    notImplemented();
268643ca7872b450ea4efacab6188849e5aac2ba161Steve Block}
269643ca7872b450ea4efacab6188849e5aac2ba161Steve Block
270643ca7872b450ea4efacab6188849e5aac2ba161Steve Blockvoid FrameLoaderClientWx::dispatchDidReplaceStateWithinPage()
271643ca7872b450ea4efacab6188849e5aac2ba161Steve Block{
272643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    notImplemented();
273643ca7872b450ea4efacab6188849e5aac2ba161Steve Block}
274643ca7872b450ea4efacab6188849e5aac2ba161Steve Block
275643ca7872b450ea4efacab6188849e5aac2ba161Steve Blockvoid FrameLoaderClientWx::dispatchDidPopStateWithinPage()
276643ca7872b450ea4efacab6188849e5aac2ba161Steve Block{
277643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    notImplemented();
278643ca7872b450ea4efacab6188849e5aac2ba161Steve Block}
2798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchWillClose()
2818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
2838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidStartProvisionalLoad()
2878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_webView) {
2898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wxWebViewLoadEvent wkEvent(m_webView);
2908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetState(wxWEBVIEW_LOAD_NEGOTIATING);
2918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetURL(m_frame->loader()->provisionalDocumentLoader()->request().url().string());
2928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        m_webView->GetEventHandler()->ProcessEvent(wkEvent);
2938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
2948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidReceiveTitle(const String& title)
2988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_webView) {
3008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        m_webView->SetPageTitle(title);
3018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wxWebViewReceivedTitleEvent wkEvent(m_webView);
3028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetTitle(title);
3038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        m_webView->GetEventHandler()->ProcessEvent(wkEvent);
3048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
3058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidCommitLoad()
3098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_webView) {
3118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wxWebViewLoadEvent wkEvent(m_webView);
3128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetState(wxWEBVIEW_LOAD_TRANSFERRING);
3138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetURL(m_frame->loader()->documentLoader()->request().url().string());
3148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        m_webView->GetEventHandler()->ProcessEvent(wkEvent);
3158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
3168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidFinishDocumentLoad()
3198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_webView) {
3218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wxWebViewLoadEvent wkEvent(m_webView);
3228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetState(wxWEBVIEW_LOAD_DOC_COMPLETED);
3232fc2651226baac27029e38c9d6ef883fa32084dbSteve Block        wkEvent.SetURL(m_frame->document()->url().string());
3248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        m_webView->GetEventHandler()->ProcessEvent(wkEvent);
3258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
3268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
328dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Blockvoid FrameLoaderClientWx::dispatchDidChangeIcons()
329dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block{
330dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block    notImplemented();
331dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block}
332dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block
3338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidFinishLoad()
3348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
3368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidFirstLayout()
3408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
3428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
344635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidFirstVisuallyNonEmptyLayout()
345635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
346635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    notImplemented();
347635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
3488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchShow()
3508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
3528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::cancelPolicyCheck()
3568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
3588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchWillSubmitForm(FramePolicyFunction function,
3628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                                                 PassRefPtr<FormState>)
3638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // FIXME: Send an event to allow for alerts and cancellation
365231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    if (!m_webFrame)
3668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return;
367231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    (m_frame->loader()->policyChecker()->*function)(PolicyUse);
3688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidLoadMainResource(DocumentLoader*)
3728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
3748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::revertToProvisionalState(DocumentLoader*)
3788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
3808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::postProgressStartedNotification()
3838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
3858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::postProgressEstimateChangedNotification()
3888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
3908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::postProgressFinishedNotification()
3938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_webView) {
3958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wxWebViewLoadEvent wkEvent(m_webView);
3968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetState(wxWEBVIEW_LOAD_DL_COMPLETED);
3972fc2651226baac27029e38c9d6ef883fa32084dbSteve Block        wkEvent.SetURL(m_frame->document()->url().string());
3988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        m_webView->GetEventHandler()->ProcessEvent(wkEvent);
3998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
4008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::progressStarted()
4038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::progressCompleted()
4098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::setMainFrameDocumentReady(bool b)
4158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // this is only interesting once we provide an external API for the DOM
4188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::willChangeTitle(DocumentLoader*)
4228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::didChangeTitle(DocumentLoader *l)
4288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    setTitle(l->title(), l->url());
4308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4330617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsenvoid FrameLoaderClientWx::finishedLoading(DocumentLoader* loader)
4348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4350617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen    if (!m_pluginView) {
4360617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen        if (m_firstData) {
4372fc2651226baac27029e38c9d6ef883fa32084dbSteve Block            loader->writer()->setEncoding(m_response.textEncodingName(), false);
4380617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen            m_firstData = false;
4390617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen        }
4400617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen    } else {
441643ca7872b450ea4efacab6188849e5aac2ba161Steve Block        m_pluginView->didFinishLoading();
442643ca7872b450ea4efacab6188849e5aac2ba161Steve Block        m_pluginView = 0;
443643ca7872b450ea4efacab6188849e5aac2ba161Steve Block        m_hasSentResponseToPlugin = false;
444643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    }
4458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
44768513a70bcd92384395513322f1b801e7bf9c729Steve Blockbool FrameLoaderClientWx::canShowMIMETypeAsHTML(const String& MIMEType) const
44868513a70bcd92384395513322f1b801e7bf9c729Steve Block{
44968513a70bcd92384395513322f1b801e7bf9c729Steve Block    notImplemented();
45068513a70bcd92384395513322f1b801e7bf9c729Steve Block    return true;
45168513a70bcd92384395513322f1b801e7bf9c729Steve Block}
4528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
45368513a70bcd92384395513322f1b801e7bf9c729Steve Block
4548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::canShowMIMEType(const String& MIMEType) const
4558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return true;
4588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::representationExistsForURLScheme(const String& URLScheme) const
4628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return false;
4658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectString FrameLoaderClientWx::generatedMIMETypeForURLScheme(const String& URLScheme) const
4698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return String();
4728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::frameLoadCompleted()
4768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::saveViewStateToItem(HistoryItem*)
4818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::restoreViewState()
4868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::restoreScrollPositionAndViewState()
4918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::provisionalLoadStarted()
4978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
4998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::shouldTreatURLAsSameAsCurrent(const KURL&) const
5038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
5058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return false;
5068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::addHistoryItemForFragmentScroll()
5108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
5128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::didFinishLoad()
5168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
5188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::prepareForDataSourceReplacement()
5228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5230bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    notImplemented();
5248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::setTitle(const String& title, const KURL&)
5288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
5308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectString FrameLoaderClientWx::userAgent(const KURL&)
5348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // FIXME: Use the new APIs introduced by the GTK port to fill in these values.
5368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return String("Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en) AppleWebKit/418.9.1 (KHTML, like Gecko) Safari/419.3");
5378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidReceiveIcon()
5408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
5428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::frameLoaderDestroyed()
5458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
546231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    if (m_webFrame)
547231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        delete m_webFrame;
548231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    m_webFrame = 0;
5498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    m_frame = 0;
5508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    delete this;
5518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::canHandleRequest(const WebCore::ResourceRequest&) const
5548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
5568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return true;
5578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
5598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::partClearedInBegin()
5608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
5628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
564635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectvoid FrameLoaderClientWx::updateGlobalHistory()
5658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
5678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
569563af33bc48281d19dce701398dbb88cb54fd7ecCary Clarkvoid FrameLoaderClientWx::updateGlobalHistoryRedirectLinks()
570563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark{
571563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark    notImplemented();
572563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark}
573563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark
5748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::shouldGoToHistoryItem(WebCore::HistoryItem*) const
5758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
5768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
5778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return true;
5788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
5798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
580ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdochvoid FrameLoaderClientWx::dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const
581ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdoch{
582ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdoch}
583ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdoch
584ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdochvoid FrameLoaderClientWx::dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const
585ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdoch{
586ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdoch}
587ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdoch
588ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdochvoid FrameLoaderClientWx::dispatchDidChangeBackForwardIndex() const
589ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdoch{
590ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdoch}
591ed3dcbaa89ede50bb054f63aa1847ae6240fa70dBen Murdoch
592231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Blockvoid FrameLoaderClientWx::didDisplayInsecureContent()
593231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block{
594231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    notImplemented();
595231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block}
596231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block
5972fc2651226baac27029e38c9d6ef883fa32084dbSteve Blockvoid FrameLoaderClientWx::didRunInsecureContent(WebCore::SecurityOrigin*, const KURL&)
598231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block{
599231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    notImplemented();
600231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block}
601231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block
6028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::saveScrollPositionAndViewStateToItem(WebCore::HistoryItem*)
6038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
6058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::canCachePage() const
6088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return false;
6108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6120617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsenvoid FrameLoaderClientWx::setMainDocumentError(WebCore::DocumentLoader* loader, const WebCore::ResourceError&)
6138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6140617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen    if (m_firstData) {
6150617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen        loader->frameLoader()->writer()->setEncoding(m_response.textEncodingName(), false);
6160617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen        m_firstData = false;
6170617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen    }
6188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
62068513a70bcd92384395513322f1b801e7bf9c729Steve Block// FIXME: This function should be moved into WebCore.
6218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::committedLoad(WebCore::DocumentLoader* loader, const char* data, int length)
6228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
623231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    if (!m_webFrame)
6248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return;
62568513a70bcd92384395513322f1b801e7bf9c729Steve Block    if (!m_pluginView)
62668513a70bcd92384395513322f1b801e7bf9c729Steve Block        loader->commitData(data, length);
62768513a70bcd92384395513322f1b801e7bf9c729Steve Block
628643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    // We re-check here as the plugin can have been created
629643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    if (m_pluginView) {
630643ca7872b450ea4efacab6188849e5aac2ba161Steve Block        if (!m_hasSentResponseToPlugin) {
631643ca7872b450ea4efacab6188849e5aac2ba161Steve Block            m_pluginView->didReceiveResponse(loader->response());
632643ca7872b450ea4efacab6188849e5aac2ba161Steve Block            // didReceiveResponse sets up a new stream to the plug-in. on a full-page plug-in, a failure in
633643ca7872b450ea4efacab6188849e5aac2ba161Steve Block            // setting up this stream can cause the main document load to be cancelled, setting m_pluginView
634643ca7872b450ea4efacab6188849e5aac2ba161Steve Block            // to null
635643ca7872b450ea4efacab6188849e5aac2ba161Steve Block            if (!m_pluginView)
636643ca7872b450ea4efacab6188849e5aac2ba161Steve Block                return;
637643ca7872b450ea4efacab6188849e5aac2ba161Steve Block            m_hasSentResponseToPlugin = true;
638643ca7872b450ea4efacab6188849e5aac2ba161Steve Block        }
639643ca7872b450ea4efacab6188849e5aac2ba161Steve Block        m_pluginView->didReceiveData(data, length);
640643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    }
6418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6430bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochWebCore::ResourceError FrameLoaderClientWx::cancelledError(const WebCore::ResourceRequest& request)
6448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
6460bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    return ResourceError(String(), WebKitErrorCannotShowURL, request.url().string(), String());
6478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6490bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochWebCore::ResourceError FrameLoaderClientWx::blockedError(const ResourceRequest& request)
6508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
6520bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    return ResourceError(String(), WebKitErrorCannotShowURL, request.url().string(), String());
6538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6550bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochWebCore::ResourceError FrameLoaderClientWx::cannotShowURLError(const WebCore::ResourceRequest& request)
6568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6570bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    return ResourceError(String(), WebKitErrorCannotShowURL, request.url().string(), String());
6588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6600bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochWebCore::ResourceError FrameLoaderClientWx::interruptForPolicyChangeError(const WebCore::ResourceRequest& request)
6618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
6630bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    return ResourceError(String(), WebKitErrorFrameLoadInterruptedByPolicyChange, request.url().string(), String());
6648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6660bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochWebCore::ResourceError FrameLoaderClientWx::cannotShowMIMETypeError(const WebCore::ResourceResponse& response)
6678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
6690bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    return ResourceError(String(), WebKitErrorCannotShowMIMEType, response.url().string(), String());
6708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6720bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochWebCore::ResourceError FrameLoaderClientWx::fileDoesNotExistError(const WebCore::ResourceResponse& response)
6738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
6750bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    return ResourceError(String(), WebKitErrorCannotShowURL, response.url().string(), String());
6768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::shouldFallBack(const WebCore::ResourceError& error)
6798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
6818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return false;
6828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectWTF::PassRefPtr<DocumentLoader> FrameLoaderClientWx::createDocumentLoader(const ResourceRequest& request, const SubstituteData& substituteData)
6858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return DocumentLoader::create(request, substituteData);
6878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::download(ResourceHandle*, const ResourceRequest&, const ResourceRequest&, const ResourceResponse&)
6908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
6928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::assignIdentifierToInitialRequest(unsigned long identifier, DocumentLoader*, const ResourceRequest&)
6958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
6968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
6978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
6988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
6998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchWillSendRequest(DocumentLoader*, unsigned long, ResourceRequest& request, const ResourceResponse& response)
7008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
704635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectbool FrameLoaderClientWx::shouldUseCredentialStorage(DocumentLoader*, unsigned long)
705635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
706635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    notImplemented();
707635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return false;
708635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
709635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
7108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidReceiveAuthenticationChallenge(DocumentLoader*, unsigned long, const AuthenticationChallenge&)
7118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidCancelAuthenticationChallenge(DocumentLoader*, unsigned long, const AuthenticationChallenge&)
7168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidReceiveResponse(DocumentLoader* loader, unsigned long id, const ResourceResponse& response)
7218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    m_response = response;
7248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    m_firstData = true;
7258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidReceiveContentLength(DocumentLoader* loader, unsigned long id, int length)
7288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidFinishLoading(DocumentLoader*, unsigned long)
7338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7370617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsenvoid FrameLoaderClientWx::dispatchDidFailLoading(DocumentLoader* loader, unsigned long, const ResourceError&)
7388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7390617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen    if (m_firstData) {
7400617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen        FrameLoader* fl = loader->frameLoader();
7410617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen        fl->writer()->setEncoding(m_response.textEncodingName(), false);
7420617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen        m_firstData = false;
7430617145a89917ae7735fe1c9538688ab9a577df5Kristian Monsen    }
7440bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    if (m_webView) {
7450bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        wxWebViewLoadEvent wkEvent(m_webView);
7460bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        wkEvent.SetState(wxWEBVIEW_LOAD_FAILED);
7470bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        wkEvent.SetURL(m_frame->loader()->documentLoader()->request().url().string());
7480bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        m_webView->GetEventHandler()->ProcessEvent(wkEvent);
7490bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    }
7508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectbool FrameLoaderClientWx::dispatchDidLoadResourceFromMemoryCache(DocumentLoader*, const ResourceRequest&, const ResourceResponse&, int)
7538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return false;
7568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidFailProvisionalLoad(const ResourceError&)
7598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDidFailLoad(const ResourceError&)
7648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
768e14391e94c850b8bd03680c23b38978db68687a8John ReckFrame* FrameLoaderClientWx::dispatchCreatePage(const NavigationAction&)
7698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
7708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
7718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return false;
7728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDecidePolicyForMIMEType(FramePolicyFunction function, const String& mimetype, const ResourceRequest& request)
7758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
776231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    if (!m_webFrame)
7778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return;
7788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
780231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    (m_frame->loader()->policyChecker()->*function)(PolicyUse);
7818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
7828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7830bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid FrameLoaderClientWx::dispatchDecidePolicyForNewWindowAction(FramePolicyFunction function, const NavigationAction&, const ResourceRequest& request, PassRefPtr<FormState>, const String& targetName)
7848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
785231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    if (!m_webFrame)
7868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return;
7878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
7880bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    if (m_webView) {
7890bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        wxWebViewNewWindowEvent wkEvent(m_webView);
7900bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        wkEvent.SetURL(request.url().string());
7910bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        wkEvent.SetTargetName(targetName);
7920bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        if (m_webView->GetEventHandler()->ProcessEvent(wkEvent)) {
7930bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            // if the app handles and doesn't skip the event,
7940bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            // from WebKit's perspective treat it as blocked / ignored
795231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            (m_frame->loader()->policyChecker()->*function)(PolicyIgnore);
7960bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch            return;
7970bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        }
7980bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    }
7990bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch
800231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    (m_frame->loader()->policyChecker()->*function)(PolicyUse);
8018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchDecidePolicyForNavigationAction(FramePolicyFunction function, const NavigationAction& action, const ResourceRequest& request, PassRefPtr<FormState>)
8048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
805231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    if (!m_webFrame)
8068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return;
8078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (m_webView) {
8098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wxWebViewBeforeLoadEvent wkEvent(m_webView);
8108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetNavigationType(wxNavTypeFromWebNavType(action.type()));
8118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        wkEvent.SetURL(request.url().string());
8128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        m_webView->GetEventHandler()->ProcessEvent(wkEvent);
8148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        if (wkEvent.IsCancelled())
815231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            (m_frame->loader()->policyChecker()->*function)(PolicyIgnore);
8168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        else
817231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block            (m_frame->loader()->policyChecker()->*function)(PolicyUse);
8188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    }
8208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::dispatchUnableToImplementPolicy(const ResourceError&)
8238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
8248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
8258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::startDownload(const ResourceRequest&)
8288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
8298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
8308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectPassRefPtr<Frame> FrameLoaderClientWx::createFrame(const KURL& url, const String& name, HTMLFrameOwnerElement* ownerElement,
8338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                                   const String& referrer, bool allowsScrolling, int marginWidth, int marginHeight)
8348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
8358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    WebViewFrameData* data = new WebViewFrameData();
8368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    data->name = name;
8378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    data->ownerElement = ownerElement;
8388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    data->url = url;
8398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    data->referrer = referrer;
840231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    data->allowsScrolling = allowsScrolling;
8418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    data->marginWidth = marginWidth;
8428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    data->marginHeight = marginHeight;
8438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
844231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    wxWebFrame* newFrame = new wxWebFrame(m_webView, m_webFrame, data);
8458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
846231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    RefPtr<Frame> childFrame = adoptRef(newFrame->m_impl->frame);
8478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
848231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    // The creation of the frame may have run arbitrary JavaScript that removed it from the page already.
849231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    if (!childFrame->page())
850231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        return 0;
8518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8522fc2651226baac27029e38c9d6ef883fa32084dbSteve Block    m_frame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
8538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // The frame's onload handler may have removed it from the document.
8558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    if (!childFrame->tree()->parent())
8568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        return 0;
8578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
858231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    return childFrame.release();
8598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
861bec39347bb3bb5bf1187ccaf471d26247f28b585Kristian Monsenvoid FrameLoaderClientWx::didTransferChildFrameToNewDocument(Page*)
862692e5dbf12901edacf14812a6fae25462920af42Steve Block{
863692e5dbf12901edacf14812a6fae25462920af42Steve Block}
864692e5dbf12901edacf14812a6fae25462920af42Steve Block
865e14391e94c850b8bd03680c23b38978db68687a8John Reckvoid FrameLoaderClientWx::transferLoadingResourceFromPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*)
866e14391e94c850b8bd03680c23b38978db68687a8John Reck{
867e14391e94c850b8bd03680c23b38978db68687a8John Reck}
868e14391e94c850b8bd03680c23b38978db68687a8John Reck
8698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectObjectContentType FrameLoaderClientWx::objectContentType(const KURL& url, const String& mimeType)
8708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
8718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
8728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return ObjectContentType();
8738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
875643ca7872b450ea4efacab6188849e5aac2ba161Steve BlockPassRefPtr<Widget> FrameLoaderClientWx::createPlugin(const IntSize& size, HTMLPlugInElement* element, const KURL& url, const Vector<String>& paramNames, const Vector<String>& paramValues, const String& mimeType, bool loadManually)
8768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
877643ca7872b450ea4efacab6188849e5aac2ba161Steve Block#if __WXMSW__ || __WXMAC__
878643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    RefPtr<PluginView> pv = PluginView::create(m_frame, size, element, url, paramNames, paramValues, mimeType, loadManually);
879643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    if (pv->status() == PluginStatusLoadedSuccessfully)
880643ca7872b450ea4efacab6188849e5aac2ba161Steve Block        return pv;
881643ca7872b450ea4efacab6188849e5aac2ba161Steve Block#endif
8828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return 0;
8838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::redirectDataToPlugin(Widget* pluginWidget)
8868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
887643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    ASSERT(!m_pluginView);
888643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    m_pluginView = static_cast<PluginView*>(pluginWidget);
889643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    m_hasSentResponseToPlugin = false;
8908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8920bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochResourceError FrameLoaderClientWx::pluginWillHandleLoadError(const ResourceResponse& response)
8938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
8948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
8950bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    return ResourceError(String(), WebKitErrorCannotLoadPlugIn, response.url().string(), String());
8968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
8978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
8980bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochPassRefPtr<Widget> FrameLoaderClientWx::createJavaAppletWidget(const IntSize&, HTMLAppletElement*, const KURL& baseURL,
8998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project                                                    const Vector<String>& paramNames, const Vector<String>& paramValues)
9008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
9028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return 0;
9038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectString FrameLoaderClientWx::overrideMediaType() const
9068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
9088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    return String();
9098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
911643ca7872b450ea4efacab6188849e5aac2ba161Steve Blockvoid FrameLoaderClientWx::dispatchDidClearWindowObjectInWorld(DOMWrapperWorld* world)
9128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
913643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    if (world != mainThreadNormalWorld())
914643ca7872b450ea4efacab6188849e5aac2ba161Steve Block        return;
915643ca7872b450ea4efacab6188849e5aac2ba161Steve Block
9160bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    if (m_webView) {
9170bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        wxWebViewWindowObjectClearedEvent wkEvent(m_webView);
9180bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        Frame* coreFrame = m_webView->GetMainFrame()->GetFrame();
919cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block        JSGlobalContextRef context = toGlobalRef(coreFrame->script()->globalObject(mainThreadNormalWorld())->globalExec());
920cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block        JSObjectRef windowObject = toRef(coreFrame->script()->globalObject(mainThreadNormalWorld()));
9210bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        wkEvent.SetJSContext(context);
9220bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        wkEvent.SetWindowObject(windowObject);
9230bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        m_webView->GetEventHandler()->ProcessEvent(wkEvent);
9240bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    }
9258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
927563af33bc48281d19dce701398dbb88cb54fd7ecCary Clarkvoid FrameLoaderClientWx::documentElementAvailable()
928563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark{
929563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark}
930563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark
9318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::didPerformFirstNavigation() const
9328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
9348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::registerForIconNotification(bool listen)
9378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
9398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
941635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectvoid FrameLoaderClientWx::savePlatformDataToCachedFrame(CachedFrame*)
9428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
9448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
946635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectvoid FrameLoaderClientWx::transitionToCommittedFromCachedFrame(CachedFrame*)
9478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
9488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    notImplemented();
9498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
9518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectvoid FrameLoaderClientWx::transitionToCommittedForNewPage()
9528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
953231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    ASSERT(m_webFrame);
9548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    ASSERT(m_frame);
9558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    ASSERT(m_webView);
9568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
957231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    IntSize size = IntRect(m_webView->GetRect()).size();
958231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    // FIXME: This value should be gotten from m_webView->IsTransparent();
959231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    // but transitionToCommittedForNewPage() can be called while m_webView is
960231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    // still being initialized.
961231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    bool transparent = false;
962231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    Color backgroundColor = transparent ? WebCore::Color::transparent : WebCore::Color::white;
963231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block
964231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block    if (m_frame)
965231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block        m_frame->createView(size, backgroundColor, transparent, IntSize(), false);
9668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
9678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
968cad810f21b803229eb11403f9209855525a25d57Steve Blockvoid FrameLoaderClientWx::didSaveToPageCache()
969cad810f21b803229eb11403f9209855525a25d57Steve Block{
970cad810f21b803229eb11403f9209855525a25d57Steve Block}
971cad810f21b803229eb11403f9209855525a25d57Steve Block
972cad810f21b803229eb11403f9209855525a25d57Steve Blockvoid FrameLoaderClientWx::didRestoreFromPageCache()
973cad810f21b803229eb11403f9209855525a25d57Steve Block{
974cad810f21b803229eb11403f9209855525a25d57Steve Block}
975cad810f21b803229eb11403f9209855525a25d57Steve Block
976e14391e94c850b8bd03680c23b38978db68687a8John Reckvoid FrameLoaderClientWx::dispatchDidBecomeFrameset(bool)
977e14391e94c850b8bd03680c23b38978db68687a8John Reck{
978e14391e94c850b8bd03680c23b38978db68687a8John Reck}
979e14391e94c850b8bd03680c23b38978db68687a8John Reck
980643ca7872b450ea4efacab6188849e5aac2ba161Steve Blockbool FrameLoaderClientWx::shouldUsePluginDocument(const String &mimeType) const
981643ca7872b450ea4efacab6188849e5aac2ba161Steve Block{
982643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    // NOTE: Plugin Documents are used for viewing PDFs, etc. inline, and should
983643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    // not be used for pages with plugins in them.
984643ca7872b450ea4efacab6188849e5aac2ba161Steve Block    return false;
985643ca7872b450ea4efacab6188849e5aac2ba161Steve Block}
986643ca7872b450ea4efacab6188849e5aac2ba161Steve Block
98768513a70bcd92384395513322f1b801e7bf9c729Steve BlockPassRefPtr<FrameNetworkingContext> FrameLoaderClientWx::createNetworkingContext()
98868513a70bcd92384395513322f1b801e7bf9c729Steve Block{
98968513a70bcd92384395513322f1b801e7bf9c729Steve Block    return FrameNetworkingContextWx::create(m_frame);
99068513a70bcd92384395513322f1b801e7bf9c729Steve Block}
99168513a70bcd92384395513322f1b801e7bf9c729Steve Block
9928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
993