OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009, 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2009, 2012 Google Inc. All rights reserved. |
3 * Copyright (C) 2011 Apple Inc. All rights reserved. | 3 * Copyright (C) 2011 Apple Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions are | 6 * modification, are permitted provided that the following conditions are |
7 * met: | 7 * met: |
8 * | 8 * |
9 * * Redistributions of source code must retain the above copyright | 9 * * Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 28 matching lines...) Expand all Loading... |
39 #include "wtf/RefPtr.h" | 39 #include "wtf/RefPtr.h" |
40 | 40 |
41 namespace blink { | 41 namespace blink { |
42 | 42 |
43 class WebLocalFrameImpl; | 43 class WebLocalFrameImpl; |
44 class WebPluginLoadObserver; | 44 class WebPluginLoadObserver; |
45 | 45 |
46 class FrameLoaderClientImpl final : public FrameLoaderClient { | 46 class FrameLoaderClientImpl final : public FrameLoaderClient { |
47 public: | 47 public: |
48 explicit FrameLoaderClientImpl(WebLocalFrameImpl* webFrame); | 48 explicit FrameLoaderClientImpl(WebLocalFrameImpl* webFrame); |
49 virtual ~FrameLoaderClientImpl(); | 49 ~FrameLoaderClientImpl() override; |
50 | 50 |
51 WebLocalFrameImpl* webFrame() const { return m_webFrame; } | 51 WebLocalFrameImpl* webFrame() const { return m_webFrame; } |
52 | 52 |
53 // FrameLoaderClient ---------------------------------------------- | 53 // FrameLoaderClient ---------------------------------------------- |
54 | 54 |
55 virtual void didCreateNewDocument() override; | 55 void didCreateNewDocument() override; |
56 // Notifies the WebView delegate that the JS window object has been cleared, | 56 // Notifies the WebView delegate that the JS window object has been cleared, |
57 // giving it a chance to bind native objects to the window before script | 57 // giving it a chance to bind native objects to the window before script |
58 // parsing begins. | 58 // parsing begins. |
59 virtual void dispatchDidClearWindowObjectInMainWorld() override; | 59 void dispatchDidClearWindowObjectInMainWorld() override; |
60 virtual void documentElementAvailable() override; | 60 void documentElementAvailable() override; |
61 | 61 |
62 virtual void didCreateScriptContext(v8::Local<v8::Context>, int extensionGro
up, int worldId) override; | 62 void didCreateScriptContext(v8::Local<v8::Context>, int extensionGroup, int
worldId) override; |
63 virtual void willReleaseScriptContext(v8::Local<v8::Context>, int worldId) o
verride; | 63 void willReleaseScriptContext(v8::Local<v8::Context>, int worldId) override; |
64 | 64 |
65 // Returns true if we should allow the given V8 extension to be added to | 65 // Returns true if we should allow the given V8 extension to be added to |
66 // the script context at the currently loading page and given extension grou
p. | 66 // the script context at the currently loading page and given extension grou
p. |
67 virtual bool allowScriptExtension(const String& extensionName, int extension
Group, int worldId) override; | 67 bool allowScriptExtension(const String& extensionName, int extensionGroup, i
nt worldId) override; |
68 | 68 |
69 virtual bool hasWebView() const override; | 69 bool hasWebView() const override; |
70 virtual bool inShadowTree() const override; | 70 bool inShadowTree() const override; |
71 virtual Frame* opener() const override; | 71 Frame* opener() const override; |
72 virtual void setOpener(Frame*) override; | 72 void setOpener(Frame*) override; |
73 virtual Frame* parent() const override; | 73 Frame* parent() const override; |
74 virtual Frame* top() const override; | 74 Frame* top() const override; |
75 virtual Frame* previousSibling() const override; | 75 Frame* previousSibling() const override; |
76 virtual Frame* nextSibling() const override; | 76 Frame* nextSibling() const override; |
77 virtual Frame* firstChild() const override; | 77 Frame* firstChild() const override; |
78 virtual Frame* lastChild() const override; | 78 Frame* lastChild() const override; |
79 virtual void willBeDetached() override; | 79 void willBeDetached() override; |
80 virtual void detached(FrameDetachType) override; | 80 void detached(FrameDetachType) override; |
81 virtual void dispatchWillSendRequest(DocumentLoader*, unsigned long identifi
er, ResourceRequest&, const ResourceResponse& redirectResponse) override; | 81 void dispatchWillSendRequest(DocumentLoader*, unsigned long identifier, Reso
urceRequest&, const ResourceResponse& redirectResponse) override; |
82 virtual void dispatchDidReceiveResponse(DocumentLoader*, unsigned long ident
ifier, const ResourceResponse&) override; | 82 void dispatchDidReceiveResponse(DocumentLoader*, unsigned long identifier, c
onst ResourceResponse&) override; |
83 virtual void dispatchDidChangeResourcePriority(unsigned long identifier, Res
ourceLoadPriority, int intraPriorityValue) override; | 83 void dispatchDidChangeResourcePriority(unsigned long identifier, ResourceLoa
dPriority, int intraPriorityValue) override; |
84 virtual void dispatchDidFinishLoading(DocumentLoader*, unsigned long identif
ier) override; | 84 void dispatchDidFinishLoading(DocumentLoader*, unsigned long identifier) ove
rride; |
85 virtual void dispatchDidLoadResourceFromMemoryCache(const ResourceRequest&,
const ResourceResponse&) override; | 85 void dispatchDidLoadResourceFromMemoryCache(const ResourceRequest&, const Re
sourceResponse&) override; |
86 virtual void dispatchDidHandleOnloadEvents() override; | 86 void dispatchDidHandleOnloadEvents() override; |
87 virtual void dispatchDidReceiveServerRedirectForProvisionalLoad() override; | 87 void dispatchDidReceiveServerRedirectForProvisionalLoad() override; |
88 virtual void dispatchDidNavigateWithinPage(HistoryItem*, HistoryCommitType)
override; | 88 void dispatchDidNavigateWithinPage(HistoryItem*, HistoryCommitType) override
; |
89 virtual void dispatchWillClose() override; | 89 void dispatchWillClose() override; |
90 virtual void dispatchDidStartProvisionalLoad(double triggeringEventTime) ove
rride; | 90 void dispatchDidStartProvisionalLoad(double triggeringEventTime) override; |
91 virtual void dispatchDidReceiveTitle(const String&) override; | 91 void dispatchDidReceiveTitle(const String&) override; |
92 virtual void dispatchDidChangeIcons(IconType) override; | 92 void dispatchDidChangeIcons(IconType) override; |
93 virtual void dispatchDidCommitLoad(HistoryItem*, HistoryCommitType) override
; | 93 void dispatchDidCommitLoad(HistoryItem*, HistoryCommitType) override; |
94 virtual void dispatchDidFailProvisionalLoad(const ResourceError&, HistoryCom
mitType) override; | 94 void dispatchDidFailProvisionalLoad(const ResourceError&, HistoryCommitType)
override; |
95 virtual void dispatchDidFailLoad(const ResourceError&, HistoryCommitType) ov
erride; | 95 void dispatchDidFailLoad(const ResourceError&, HistoryCommitType) override; |
96 virtual void dispatchDidFinishDocumentLoad() override; | 96 void dispatchDidFinishDocumentLoad() override; |
97 virtual void dispatchDidFinishLoad() override; | 97 void dispatchDidFinishLoad() override; |
98 virtual void dispatchDidFirstVisuallyNonEmptyLayout() override; | 98 void dispatchDidFirstVisuallyNonEmptyLayout() override; |
99 | 99 |
100 virtual void dispatchDidChangeThemeColor() override; | 100 void dispatchDidChangeThemeColor() override; |
101 virtual NavigationPolicy decidePolicyForNavigation(const ResourceRequest&, D
ocumentLoader*, NavigationPolicy) override; | 101 NavigationPolicy decidePolicyForNavigation(const ResourceRequest&, DocumentL
oader*, NavigationPolicy) override; |
102 virtual void dispatchWillRequestResource(FetchRequest*) override; | 102 void dispatchWillRequestResource(FetchRequest*) override; |
103 virtual void dispatchWillSendSubmitEvent(HTMLFormElement*) override; | 103 void dispatchWillSendSubmitEvent(HTMLFormElement*) override; |
104 virtual void dispatchWillSubmitForm(HTMLFormElement*) override; | 104 void dispatchWillSubmitForm(HTMLFormElement*) override; |
105 virtual void didStartLoading(LoadStartType) override; | 105 void didStartLoading(LoadStartType) override; |
106 virtual void didStopLoading() override; | 106 void didStopLoading() override; |
107 virtual void progressEstimateChanged(double progressEstimate) override; | 107 void progressEstimateChanged(double progressEstimate) override; |
108 virtual void loadURLExternally(const ResourceRequest&, NavigationPolicy, con
st String& suggestedName = String()) override; | 108 void loadURLExternally(const ResourceRequest&, NavigationPolicy, const Strin
g& suggestedName = String()) override; |
109 virtual bool navigateBackForward(int offset) const override; | 109 bool navigateBackForward(int offset) const override; |
110 virtual void didAccessInitialDocument() override; | 110 void didAccessInitialDocument() override; |
111 virtual void didDisplayInsecureContent() override; | 111 void didDisplayInsecureContent() override; |
112 virtual void didRunInsecureContent(SecurityOrigin*, const KURL& insecureURL)
override; | 112 void didRunInsecureContent(SecurityOrigin*, const KURL& insecureURL) overrid
e; |
113 virtual void didDetectXSS(const KURL&, bool didBlockEntirePage) override; | 113 void didDetectXSS(const KURL&, bool didBlockEntirePage) override; |
114 virtual void didDispatchPingLoader(const KURL&) override; | 114 void didDispatchPingLoader(const KURL&) override; |
115 virtual void selectorMatchChanged(const Vector<String>& addedSelectors, cons
t Vector<String>& removedSelectors) override; | 115 void selectorMatchChanged(const Vector<String>& addedSelectors, const Vector
<String>& removedSelectors) override; |
116 virtual PassRefPtrWillBeRawPtr<DocumentLoader> createDocumentLoader(LocalFra
me*, const ResourceRequest&, const SubstituteData&) override; | 116 PassRefPtrWillBeRawPtr<DocumentLoader> createDocumentLoader(LocalFrame*, con
st ResourceRequest&, const SubstituteData&) override; |
117 virtual WTF::String userAgent(const KURL&) override; | 117 WTF::String userAgent(const KURL&) override; |
118 virtual WTF::String doNotTrackValue() override; | 118 WTF::String doNotTrackValue() override; |
119 virtual void transitionToCommittedForNewPage() override; | 119 void transitionToCommittedForNewPage() override; |
120 virtual PassRefPtrWillBeRawPtr<LocalFrame> createFrame(const FrameLoadReques
t&, const WTF::AtomicString& name, HTMLFrameOwnerElement*) override; | 120 PassRefPtrWillBeRawPtr<LocalFrame> createFrame(const FrameLoadRequest&, cons
t WTF::AtomicString& name, HTMLFrameOwnerElement*) override; |
121 virtual bool canCreatePluginWithoutRenderer(const String& mimeType) const; | 121 virtual bool canCreatePluginWithoutRenderer(const String& mimeType) const; |
122 virtual PassOwnPtrWillBeRawPtr<PluginPlaceholder> createPluginPlaceholder( | 122 PassOwnPtrWillBeRawPtr<PluginPlaceholder> createPluginPlaceholder( |
123 Document&, const KURL&, | 123 Document&, const KURL&, |
124 const Vector<String>& paramNames, const Vector<String>& paramValues, | 124 const Vector<String>& paramNames, const Vector<String>& paramValues, |
125 const String& mimeType, bool loadManually) override; | 125 const String& mimeType, bool loadManually) override; |
126 virtual PassRefPtrWillBeRawPtr<Widget> createPlugin( | 126 PassRefPtrWillBeRawPtr<Widget> createPlugin( |
127 HTMLPlugInElement*, const KURL&, | 127 HTMLPlugInElement*, const KURL&, |
128 const Vector<WTF::String>&, const Vector<WTF::String>&, | 128 const Vector<WTF::String>&, const Vector<WTF::String>&, |
129 const WTF::String&, bool loadManually, DetachedPluginPolicy) override; | 129 const WTF::String&, bool loadManually, DetachedPluginPolicy) override; |
130 virtual PassRefPtrWillBeRawPtr<Widget> createJavaAppletWidget( | 130 PassRefPtrWillBeRawPtr<Widget> createJavaAppletWidget( |
131 HTMLAppletElement*, | 131 HTMLAppletElement*, |
132 const KURL& /* base_url */, | 132 const KURL& /* base_url */, |
133 const Vector<WTF::String>& paramNames, | 133 const Vector<WTF::String>& paramNames, |
134 const Vector<WTF::String>& paramValues) override; | 134 const Vector<WTF::String>& paramValues) override; |
135 virtual ObjectContentType objectContentType( | 135 ObjectContentType objectContentType( |
136 const KURL&, const WTF::String& mimeType, bool shouldPreferPlugInsForIma
ges) override; | 136 const KURL&, const WTF::String& mimeType, bool shouldPreferPlugInsForIma
ges) override; |
137 virtual void didChangeScrollOffset() override; | 137 void didChangeScrollOffset() override; |
138 virtual void didUpdateCurrentHistoryItem() override; | 138 void didUpdateCurrentHistoryItem() override; |
139 virtual void didRemoveAllPendingStylesheet() override; | 139 void didRemoveAllPendingStylesheet() override; |
140 virtual bool allowScript(bool enabledPerSettings) override; | 140 bool allowScript(bool enabledPerSettings) override; |
141 virtual bool allowScriptFromSource(bool enabledPerSettings, const KURL& scri
ptURL) override; | 141 bool allowScriptFromSource(bool enabledPerSettings, const KURL& scriptURL) o
verride; |
142 virtual bool allowPlugins(bool enabledPerSettings) override; | 142 bool allowPlugins(bool enabledPerSettings) override; |
143 virtual bool allowImage(bool enabledPerSettings, const KURL& imageURL) overr
ide; | 143 bool allowImage(bool enabledPerSettings, const KURL& imageURL) override; |
144 virtual bool allowMedia(const KURL& mediaURL) override; | 144 bool allowMedia(const KURL& mediaURL) override; |
145 virtual bool allowDisplayingInsecureContent(bool enabledPerSettings, Securit
yOrigin*, const KURL&) override; | 145 bool allowDisplayingInsecureContent(bool enabledPerSettings, SecurityOrigin*
, const KURL&) override; |
146 virtual bool allowRunningInsecureContent(bool enabledPerSettings, SecurityOr
igin*, const KURL&) override; | 146 bool allowRunningInsecureContent(bool enabledPerSettings, SecurityOrigin*, c
onst KURL&) override; |
147 virtual void didNotAllowScript() override; | 147 void didNotAllowScript() override; |
148 virtual void didNotAllowPlugins() override; | 148 void didNotAllowPlugins() override; |
149 | 149 |
150 virtual WebCookieJar* cookieJar() const override; | 150 WebCookieJar* cookieJar() const override; |
151 virtual bool willCheckAndDispatchMessageEvent(SecurityOrigin* target, Messag
eEvent*, LocalFrame* sourceFrame) const override; | 151 bool willCheckAndDispatchMessageEvent(SecurityOrigin* target, MessageEvent*,
LocalFrame* sourceFrame) const override; |
152 virtual void didChangeName(const String&) override; | 152 void didChangeName(const String&) override; |
153 virtual void didChangeSandboxFlags(Frame* childFrame, SandboxFlags) override
; | 153 void didChangeSandboxFlags(Frame* childFrame, SandboxFlags) override; |
154 | 154 |
155 virtual void dispatchWillOpenWebSocket(WebSocketHandle*) override; | 155 void dispatchWillOpenWebSocket(WebSocketHandle*) override; |
156 | 156 |
157 virtual void dispatchWillStartUsingPeerConnectionHandler(WebRTCPeerConnectio
nHandler*) override; | 157 void dispatchWillStartUsingPeerConnectionHandler(WebRTCPeerConnectionHandler
*) override; |
158 | 158 |
159 virtual void didRequestAutocomplete(HTMLFormElement*) override; | 159 void didRequestAutocomplete(HTMLFormElement*) override; |
160 | 160 |
161 virtual bool allowWebGL(bool enabledPerSettings) override; | 161 bool allowWebGL(bool enabledPerSettings) override; |
162 virtual void didLoseWebGLContext(int arbRobustnessContextLostReason) overrid
e; | 162 void didLoseWebGLContext(int arbRobustnessContextLostReason) override; |
163 | 163 |
164 virtual void dispatchWillInsertBody() override; | 164 void dispatchWillInsertBody() override; |
165 | 165 |
166 virtual v8::Local<v8::Value> createTestInterface(const AtomicString& name) o
verride; | 166 v8::Local<v8::Value> createTestInterface(const AtomicString& name) override; |
167 | 167 |
168 virtual PassOwnPtr<WebServiceWorkerProvider> createServiceWorkerProvider() o
verride; | 168 PassOwnPtr<WebServiceWorkerProvider> createServiceWorkerProvider() override; |
169 virtual bool isControlledByServiceWorker(DocumentLoader&) override; | 169 bool isControlledByServiceWorker(DocumentLoader&) override; |
170 virtual int64_t serviceWorkerID(DocumentLoader&) override; | 170 int64_t serviceWorkerID(DocumentLoader&) override; |
171 virtual SharedWorkerRepositoryClient* sharedWorkerRepositoryClient() overrid
e; | 171 SharedWorkerRepositoryClient* sharedWorkerRepositoryClient() override; |
172 | 172 |
173 virtual PassOwnPtr<WebApplicationCacheHost> createApplicationCacheHost(WebAp
plicationCacheHostClient*) override; | 173 PassOwnPtr<WebApplicationCacheHost> createApplicationCacheHost(WebApplicatio
nCacheHostClient*) override; |
174 | 174 |
175 virtual void didStopAllLoaders() override; | 175 void didStopAllLoaders() override; |
176 | 176 |
177 virtual void dispatchDidChangeManifest() override; | 177 void dispatchDidChangeManifest() override; |
178 | 178 |
179 virtual void dispatchDidChangeDefaultPresentation() override; | 179 void dispatchDidChangeDefaultPresentation() override; |
180 | 180 |
181 virtual unsigned backForwardLength() override; | 181 unsigned backForwardLength() override; |
182 | 182 |
183 virtual void suddenTerminationDisablerChanged(bool present, SuddenTerminatio
nDisablerType) override; | 183 void suddenTerminationDisablerChanged(bool present, SuddenTerminationDisable
rType) override; |
184 private: | 184 private: |
185 virtual bool isFrameLoaderClientImpl() const override { return true; } | 185 bool isFrameLoaderClientImpl() const override { return true; } |
186 | 186 |
187 PassOwnPtr<WebPluginLoadObserver> pluginLoadObserver(DocumentLoader*); | 187 PassOwnPtr<WebPluginLoadObserver> pluginLoadObserver(DocumentLoader*); |
188 | 188 |
189 // The WebFrame that owns this object and manages its lifetime. Therefore, | 189 // The WebFrame that owns this object and manages its lifetime. Therefore, |
190 // the web frame object is guaranteed to exist. | 190 // the web frame object is guaranteed to exist. |
191 WebLocalFrameImpl* m_webFrame; | 191 WebLocalFrameImpl* m_webFrame; |
192 }; | 192 }; |
193 | 193 |
194 DEFINE_TYPE_CASTS(FrameLoaderClientImpl, FrameLoaderClient, client, client->isFr
ameLoaderClientImpl(), client.isFrameLoaderClientImpl()); | 194 DEFINE_TYPE_CASTS(FrameLoaderClientImpl, FrameLoaderClient, client, client->isFr
ameLoaderClientImpl(), client.isFrameLoaderClientImpl()); |
195 | 195 |
196 } // namespace blink | 196 } // namespace blink |
197 | 197 |
198 #endif | 198 #endif |
OLD | NEW |