~ubuntu-branches/ubuntu/raring/qtwebkit-source/raring-proposed

« back to all changes in this revision

Viewing changes to Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.h

  • Committer: Package Import Robot
  • Author(s): Jonathan Riddell
  • Date: 2013-02-18 14:24:18 UTC
  • Revision ID: package-import@ubuntu.com-20130218142418-eon0jmjg3nj438uy
Tags: upstream-2.3
ImportĀ upstreamĀ versionĀ 2.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright (C) 2007 Kevin Ollivier <kevino@theolliviers.com>
 
3
 * Copyright (C) 2011 Apple Inc. All rights reserved.
 
4
 *
 
5
 * All rights reserved.
 
6
 *
 
7
 * Redistribution and use in source and binary forms, with or without
 
8
 * modification, are permitted provided that the following conditions
 
9
 * are met:
 
10
 * 1. Redistributions of source code must retain the above copyright
 
11
 *    notice, this list of conditions and the following disclaimer.
 
12
 * 2. Redistributions in binary form must reproduce the above copyright
 
13
 *    notice, this list of conditions and the following disclaimer in the
 
14
 *    documentation and/or other materials provided with the distribution.
 
15
 *
 
16
 * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
 
17
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 
18
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 
19
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
 
20
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 
21
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 
22
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 
23
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 
24
 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 
25
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 
26
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
27
 */
 
28
 
 
29
#ifndef FrameLoaderClientWx_H
 
30
#define FrameLoaderClientWx_H
 
31
 
 
32
#include "FrameLoaderClient.h"
 
33
#include "FrameLoader.h"
 
34
#include "KURL.h"
 
35
#include "PluginView.h"
 
36
#include "ResourceResponse.h"
 
37
#include "HTMLPlugInElement.h"
 
38
#include <wtf/Forward.h>
 
39
 
 
40
namespace WebKit {
 
41
 
 
42
class WebFrame;
 
43
class WebView;
 
44
 
 
45
}
 
46
 
 
47
namespace WebCore {
 
48
 
 
49
    class AuthenticationChallenge;
 
50
    class DocumentLoader;
 
51
    class Element;
 
52
    class FormState;
 
53
    class NavigationAction;
 
54
    class ResourceLoader;
 
55
 
 
56
    struct LoadErrorResetToken;
 
57
 
 
58
    class FrameLoaderClientWx : public FrameLoaderClient {
 
59
    public:
 
60
        FrameLoaderClientWx();
 
61
        ~FrameLoaderClientWx();
 
62
        
 
63
        WebKit::WebFrame* webFrame() { return m_webFrame; }
 
64
        void setFrame(WebKit::WebFrame *frame);
 
65
        WebKit::WebView* webView() { return m_webView; }
 
66
        void setWebView(WebKit::WebView *webview);
 
67
 
 
68
        virtual bool hasWebView() const; // mainly for assertions
 
69
 
 
70
        virtual bool hasBackForwardList() const;
 
71
        virtual void resetBackForwardList();
 
72
 
 
73
        virtual bool provisionalItemIsTarget() const;
 
74
 
 
75
        virtual void makeRepresentation(DocumentLoader*);
 
76
        virtual void forceLayout();
 
77
        virtual void forceLayoutForNonHTML();
 
78
 
 
79
        virtual void updateHistoryForCommit();
 
80
 
 
81
        virtual void updateHistoryForBackForwardNavigation();
 
82
        virtual void updateHistoryForReload();
 
83
        virtual void updateHistoryForStandardLoad();
 
84
        virtual void updateHistoryForInternalLoad();
 
85
 
 
86
        virtual void updateHistoryAfterClientRedirect();
 
87
 
 
88
        virtual void setCopiesOnScroll();
 
89
 
 
90
        virtual LoadErrorResetToken* tokenForLoadErrorReset();
 
91
        virtual void resetAfterLoadError(LoadErrorResetToken*);
 
92
        virtual void doNotResetAfterLoadError(LoadErrorResetToken*);
 
93
 
 
94
        virtual void willCloseDocument();
 
95
 
 
96
        virtual void detachedFromParent2();
 
97
        virtual void detachedFromParent3();
 
98
 
 
99
        virtual void frameLoaderDestroyed();
 
100
        virtual bool canHandleRequest(const ResourceRequest&) const;
 
101
 
 
102
        virtual void dispatchDidHandleOnloadEvents();
 
103
        virtual void dispatchDidReceiveServerRedirectForProvisionalLoad();
 
104
        virtual void dispatchDidCancelClientRedirect();
 
105
        virtual void dispatchWillPerformClientRedirect(const KURL&, double interval, double fireDate);
 
106
        virtual void dispatchDidChangeLocationWithinPage();
 
107
        virtual void dispatchDidPushStateWithinPage();
 
108
        virtual void dispatchDidReplaceStateWithinPage();
 
109
        virtual void dispatchDidPopStateWithinPage();
 
110
        virtual void dispatchWillClose();
 
111
        virtual void dispatchDidReceiveIcon();
 
112
        virtual void dispatchDidStartProvisionalLoad();
 
113
        virtual void dispatchDidReceiveTitle(const StringWithDirection& title);
 
114
        virtual void dispatchDidCommitLoad();
 
115
        virtual void dispatchDidFinishDocumentLoad();
 
116
        virtual void dispatchDidFinishLoad();
 
117
        virtual void dispatchDidLayout(WebCore::LayoutMilestones);
 
118
        virtual void dispatchDidChangeIcons(WebCore::IconType);
 
119
 
 
120
        virtual void dispatchShow();
 
121
        virtual void cancelPolicyCheck();
 
122
 
 
123
        virtual void dispatchWillSendSubmitEvent(PassRefPtr<FormState>) { }
 
124
        virtual void dispatchWillSubmitForm(FramePolicyFunction, PassRefPtr<FormState>);
 
125
 
 
126
        virtual void revertToProvisionalState(DocumentLoader*);
 
127
 
 
128
        virtual void postProgressStartedNotification();
 
129
        virtual void postProgressEstimateChangedNotification();
 
130
        virtual void postProgressFinishedNotification();
 
131
 
 
132
        virtual void progressStarted();
 
133
        virtual void progressCompleted();
 
134
        virtual void setMainFrameDocumentReady(bool);
 
135
        virtual void willChangeTitle(DocumentLoader*);
 
136
        virtual void didChangeTitle(DocumentLoader*);
 
137
        virtual void finishedLoading(DocumentLoader*);
 
138
 
 
139
        virtual bool canShowMIMEType(const String& MIMEType) const;
 
140
        virtual bool canShowMIMETypeAsHTML(const String& MIMEType) const;
 
141
        virtual bool representationExistsForURLScheme(const String& URLScheme) const;
 
142
        virtual String generatedMIMETypeForURLScheme(const String& URLScheme) const;
 
143
 
 
144
        virtual void frameLoadCompleted();
 
145
        virtual void saveViewStateToItem(HistoryItem*);
 
146
        virtual void restoreViewState();
 
147
        virtual void restoreScrollPositionAndViewState();
 
148
        virtual void provisionalLoadStarted();
 
149
        virtual bool shouldTreatURLAsSameAsCurrent(const KURL&) const;
 
150
        virtual void addHistoryItemForFragmentScroll();
 
151
        virtual void didFinishLoad();
 
152
        virtual void prepareForDataSourceReplacement();
 
153
        virtual void setTitle(const StringWithDirection&, const KURL&);
 
154
 
 
155
        virtual String userAgent(const KURL&);
 
156
 
 
157
        virtual void savePlatformDataToCachedFrame(WebCore::CachedFrame*);
 
158
        virtual void transitionToCommittedFromCachedFrame(WebCore::CachedFrame*);
 
159
        virtual void transitionToCommittedForNewPage();
 
160
 
 
161
        virtual void didSaveToPageCache();
 
162
        virtual void didRestoreFromPageCache();
 
163
 
 
164
        virtual void dispatchDidBecomeFrameset(bool);
 
165
 
 
166
        virtual void updateGlobalHistory();
 
167
        virtual void updateGlobalHistoryRedirectLinks();
 
168
        virtual bool shouldGoToHistoryItem(HistoryItem*) const;
 
169
        virtual bool shouldStopLoadingForHistoryItem(HistoryItem*) const;
 
170
        virtual void saveScrollPositionAndViewStateToItem(HistoryItem*);
 
171
        virtual bool canCachePage() const;
 
172
        
 
173
        virtual void didDisplayInsecureContent();
 
174
        virtual void didRunInsecureContent(SecurityOrigin*, const KURL&);
 
175
        virtual void didDetectXSS(const KURL&, bool didBlockEntirePage);
 
176
 
 
177
        virtual void setMainDocumentError(DocumentLoader*, const ResourceError&);
 
178
        virtual void committedLoad(DocumentLoader*, const char*, int);
 
179
        virtual ResourceError cancelledError(const ResourceRequest&);
 
180
        virtual ResourceError blockedError(const ResourceRequest&);
 
181
        virtual ResourceError cannotShowURLError(const ResourceRequest&);
 
182
        virtual ResourceError interruptedForPolicyChangeError(const ResourceRequest&);
 
183
        virtual ResourceError cannotShowMIMETypeError(const ResourceResponse&);
 
184
        virtual ResourceError fileDoesNotExistError(const ResourceResponse&);
 
185
        virtual bool shouldFallBack(const ResourceError&);
 
186
        virtual WTF::PassRefPtr<DocumentLoader> createDocumentLoader(const ResourceRequest&, const SubstituteData&);
 
187
        virtual void download(ResourceHandle*, const ResourceRequest&, const ResourceResponse&);
 
188
 
 
189
        virtual void assignIdentifierToInitialRequest(unsigned long identifier, DocumentLoader*, const ResourceRequest&);
 
190
        
 
191
        virtual void dispatchWillSendRequest(DocumentLoader*, unsigned long, ResourceRequest&, const ResourceResponse&);
 
192
        virtual bool shouldUseCredentialStorage(DocumentLoader*, unsigned long identifier);
 
193
        virtual void dispatchDidReceiveAuthenticationChallenge(DocumentLoader*, unsigned long identifier, const AuthenticationChallenge&);
 
194
        virtual void dispatchDidCancelAuthenticationChallenge(DocumentLoader*, unsigned long identifier, const AuthenticationChallenge&);
 
195
        virtual void dispatchDidReceiveResponse(DocumentLoader*, unsigned long, const ResourceResponse&);
 
196
        virtual void dispatchDidReceiveContentLength(DocumentLoader*, unsigned long, int);
 
197
        virtual void dispatchDidFinishLoading(DocumentLoader*, unsigned long);
 
198
        virtual void dispatchDidFailLoading(DocumentLoader*, unsigned long, const ResourceError&);
 
199
        virtual bool dispatchDidLoadResourceFromMemoryCache(DocumentLoader*, const ResourceRequest&, const ResourceResponse&, int);
 
200
 
 
201
        virtual void dispatchDidFailProvisionalLoad(const ResourceError&);
 
202
        virtual void dispatchDidFailLoad(const ResourceError&);
 
203
        virtual Frame* dispatchCreatePage(const WebCore::NavigationAction&);
 
204
        virtual void dispatchDecidePolicyForResponse(FramePolicyFunction function, const ResourceResponse&, const ResourceRequest&);
 
205
        virtual void dispatchDecidePolicyForNewWindowAction(FramePolicyFunction function, const NavigationAction&, const ResourceRequest&, PassRefPtr<FormState>, const String&);
 
206
        virtual void dispatchDecidePolicyForNavigationAction(FramePolicyFunction function, const NavigationAction&, const ResourceRequest&, PassRefPtr<FormState>);
 
207
        virtual void dispatchUnableToImplementPolicy(const ResourceError&);
 
208
 
 
209
        virtual void startDownload(const ResourceRequest&, const String& suggestedName = String());
 
210
        
 
211
        // FIXME: This should probably not be here, but it's needed for the tests currently
 
212
        virtual void partClearedInBegin();
 
213
 
 
214
        virtual PassRefPtr<Frame> createFrame(const KURL& url, const String& name, HTMLFrameOwnerElement* ownerElement,
 
215
                                   const String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
 
216
        virtual PassRefPtr<Widget> createPlugin(const IntSize&, HTMLPlugInElement*, const KURL&, const Vector<String>&, const Vector<String>&, const String&, bool loadManually) ;
 
217
        virtual void redirectDataToPlugin(Widget* pluginWidget);
 
218
        virtual ResourceError pluginWillHandleLoadError(const ResourceResponse&);
 
219
        
 
220
        virtual PassRefPtr<Widget> createJavaAppletWidget(const IntSize&, HTMLAppletElement*, const KURL& baseURL, const Vector<String>& paramNames, const Vector<String>& paramValues);
 
221
 
 
222
        virtual ObjectContentType objectContentType(const KURL&, const String& mimeType, bool shouldPreferPlugInsForImages);
 
223
        virtual String overrideMediaType() const;
 
224
 
 
225
        virtual void dispatchDidClearWindowObjectInWorld(DOMWrapperWorld*);
 
226
        virtual void documentElementAvailable();
 
227
        
 
228
        virtual void didPerformFirstNavigation() const;
 
229
        
 
230
        virtual void registerForIconNotification(bool listen = true);
 
231
        
 
232
        virtual bool shouldUsePluginDocument(const String &mimeType) const;
 
233
        
 
234
        virtual PassRefPtr<FrameNetworkingContext> createNetworkingContext();
 
235
 
 
236
    private:
 
237
        WebKit::WebFrame *m_webFrame;
 
238
        Frame* m_frame;
 
239
        WebKit::WebView *m_webView;
 
240
        PluginView* m_pluginView;
 
241
        bool m_hasSentResponseToPlugin;
 
242
        ResourceResponse m_response;
 
243
    };
 
244
 
 
245
}
 
246
 
 
247
#endif