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 25 matching lines...) Expand all Loading... |
36 #include "platform/weborigin/KURL.h" | 36 #include "platform/weborigin/KURL.h" |
37 #include "wtf/PassOwnPtr.h" | 37 #include "wtf/PassOwnPtr.h" |
38 #include "wtf/RefPtr.h" | 38 #include "wtf/RefPtr.h" |
39 | 39 |
40 namespace blink { | 40 namespace blink { |
41 | 41 |
42 class WebLocalFrameImpl; | 42 class WebLocalFrameImpl; |
43 class WebPluginContainerImpl; | 43 class WebPluginContainerImpl; |
44 class WebPluginLoadObserver; | 44 class WebPluginLoadObserver; |
45 | 45 |
46 class FrameLoaderClientImpl FINAL : public blink::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 virtual ~FrameLoaderClientImpl(); |
50 | 50 |
51 WebLocalFrameImpl* webFrame() const { return m_webFrame; } | 51 WebLocalFrameImpl* webFrame() const { return m_webFrame; } |
52 | 52 |
53 // blink::FrameLoaderClient ---------------------------------------------- | 53 // FrameLoaderClient ---------------------------------------------- |
54 | 54 |
55 // Notifies the WebView delegate that the JS window object has been cleared, | 55 // Notifies the WebView delegate that the JS window object has been cleared, |
56 // giving it a chance to bind native objects to the window before script | 56 // giving it a chance to bind native objects to the window before script |
57 // parsing begins. | 57 // parsing begins. |
58 virtual void dispatchDidClearWindowObjectInMainWorld() OVERRIDE; | 58 virtual void dispatchDidClearWindowObjectInMainWorld() OVERRIDE; |
59 virtual void documentElementAvailable() OVERRIDE; | 59 virtual void documentElementAvailable() OVERRIDE; |
60 | 60 |
61 virtual void didCreateScriptContext(v8::Handle<v8::Context>, int extensionGr
oup, int worldId) OVERRIDE; | 61 virtual void didCreateScriptContext(v8::Handle<v8::Context>, int extensionGr
oup, int worldId) OVERRIDE; |
62 virtual void willReleaseScriptContext(v8::Handle<v8::Context>, int worldId)
OVERRIDE; | 62 virtual void willReleaseScriptContext(v8::Handle<v8::Context>, int worldId)
OVERRIDE; |
63 | 63 |
64 // Returns true if we should allow the given V8 extension to be added to | 64 // Returns true if we should allow the given V8 extension to be added to |
65 // the script context at the currently loading page and given extension grou
p. | 65 // the script context at the currently loading page and given extension grou
p. |
66 virtual bool allowScriptExtension(const String& extensionName, int extension
Group, int worldId) OVERRIDE; | 66 virtual bool allowScriptExtension(const String& extensionName, int extension
Group, int worldId) OVERRIDE; |
67 | 67 |
68 virtual bool hasWebView() const OVERRIDE; | 68 virtual bool hasWebView() const OVERRIDE; |
69 virtual blink::Frame* opener() const OVERRIDE; | 69 virtual Frame* opener() const OVERRIDE; |
70 virtual void setOpener(blink::Frame*) OVERRIDE; | 70 virtual void setOpener(Frame*) OVERRIDE; |
71 virtual blink::Frame* parent() const OVERRIDE; | 71 virtual Frame* parent() const OVERRIDE; |
72 virtual blink::Frame* top() const OVERRIDE; | 72 virtual Frame* top() const OVERRIDE; |
73 virtual blink::Frame* previousSibling() const OVERRIDE; | 73 virtual Frame* previousSibling() const OVERRIDE; |
74 virtual blink::Frame* nextSibling() const OVERRIDE; | 74 virtual Frame* nextSibling() const OVERRIDE; |
75 virtual blink::Frame* firstChild() const OVERRIDE; | 75 virtual Frame* firstChild() const OVERRIDE; |
76 virtual blink::Frame* lastChild() const OVERRIDE; | 76 virtual Frame* lastChild() const OVERRIDE; |
77 virtual void detachedFromParent() OVERRIDE; | 77 virtual void detachedFromParent() OVERRIDE; |
78 virtual void dispatchWillSendRequest(blink::DocumentLoader*, unsigned long i
dentifier, blink::ResourceRequest&, const blink::ResourceResponse& redirectRespo
nse) OVERRIDE; | 78 virtual void dispatchWillSendRequest(DocumentLoader*, unsigned long identifi
er, ResourceRequest&, const ResourceResponse& redirectResponse) OVERRIDE; |
79 virtual void dispatchDidReceiveResponse(blink::DocumentLoader*, unsigned lon
g identifier, const blink::ResourceResponse&) OVERRIDE; | 79 virtual void dispatchDidReceiveResponse(DocumentLoader*, unsigned long ident
ifier, const ResourceResponse&) OVERRIDE; |
80 virtual void dispatchDidChangeResourcePriority(unsigned long identifier, bli
nk::ResourceLoadPriority, int intraPriorityValue) OVERRIDE; | 80 virtual void dispatchDidChangeResourcePriority(unsigned long identifier, Res
ourceLoadPriority, int intraPriorityValue) OVERRIDE; |
81 virtual void dispatchDidFinishLoading(blink::DocumentLoader*, unsigned long
identifier) OVERRIDE; | 81 virtual void dispatchDidFinishLoading(DocumentLoader*, unsigned long identif
ier) OVERRIDE; |
82 virtual void dispatchDidLoadResourceFromMemoryCache(const blink::ResourceReq
uest&, const blink::ResourceResponse&) OVERRIDE; | 82 virtual void dispatchDidLoadResourceFromMemoryCache(const ResourceRequest&,
const ResourceResponse&) OVERRIDE; |
83 virtual void dispatchDidHandleOnloadEvents() OVERRIDE; | 83 virtual void dispatchDidHandleOnloadEvents() OVERRIDE; |
84 virtual void dispatchDidReceiveServerRedirectForProvisionalLoad() OVERRIDE; | 84 virtual void dispatchDidReceiveServerRedirectForProvisionalLoad() OVERRIDE; |
85 virtual void dispatchDidNavigateWithinPage(blink::HistoryItem*, blink::Histo
ryCommitType) OVERRIDE; | 85 virtual void dispatchDidNavigateWithinPage(HistoryItem*, HistoryCommitType)
OVERRIDE; |
86 virtual void dispatchWillClose() OVERRIDE; | 86 virtual void dispatchWillClose() OVERRIDE; |
87 virtual void dispatchDidStartProvisionalLoad(bool isTransitionNavigation) OV
ERRIDE; | 87 virtual void dispatchDidStartProvisionalLoad(bool isTransitionNavigation) OV
ERRIDE; |
88 virtual void dispatchDidReceiveTitle(const String&) OVERRIDE; | 88 virtual void dispatchDidReceiveTitle(const String&) OVERRIDE; |
89 virtual void dispatchDidChangeIcons(blink::IconType) OVERRIDE; | 89 virtual void dispatchDidChangeIcons(IconType) OVERRIDE; |
90 virtual void dispatchDidCommitLoad(blink::LocalFrame*, blink::HistoryItem*,
blink::HistoryCommitType) OVERRIDE; | 90 virtual void dispatchDidCommitLoad(LocalFrame*, HistoryItem*, HistoryCommitT
ype) OVERRIDE; |
91 virtual void dispatchDidFailProvisionalLoad(const blink::ResourceError&) OVE
RRIDE; | 91 virtual void dispatchDidFailProvisionalLoad(const ResourceError&) OVERRIDE; |
92 virtual void dispatchDidFailLoad(const blink::ResourceError&) OVERRIDE; | 92 virtual void dispatchDidFailLoad(const ResourceError&) OVERRIDE; |
93 virtual void dispatchDidFinishDocumentLoad() OVERRIDE; | 93 virtual void dispatchDidFinishDocumentLoad() OVERRIDE; |
94 virtual void dispatchDidFinishLoad() OVERRIDE; | 94 virtual void dispatchDidFinishLoad() OVERRIDE; |
95 virtual void dispatchDidFirstVisuallyNonEmptyLayout() OVERRIDE; | 95 virtual void dispatchDidFirstVisuallyNonEmptyLayout() OVERRIDE; |
96 | 96 |
97 virtual void dispatchDidChangeThemeColor() OVERRIDE; | 97 virtual void dispatchDidChangeThemeColor() OVERRIDE; |
98 virtual blink::NavigationPolicy decidePolicyForNavigation(const blink::Resou
rceRequest&, blink::DocumentLoader*, blink::NavigationPolicy, bool isTransitionN
avigation) OVERRIDE; | 98 virtual NavigationPolicy decidePolicyForNavigation(const ResourceRequest&, D
ocumentLoader*, NavigationPolicy, bool isTransitionNavigation) OVERRIDE; |
99 virtual void dispatchAddNavigationTransitionData(const String& allowedDestin
ationOrigin, const String& selector, const String& markup) OVERRIDE; | 99 virtual void dispatchAddNavigationTransitionData(const String& allowedDestin
ationOrigin, const String& selector, const String& markup) OVERRIDE; |
100 virtual void dispatchWillRequestResource(blink::FetchRequest*) OVERRIDE; | 100 virtual void dispatchWillRequestResource(FetchRequest*) OVERRIDE; |
101 virtual void dispatchWillSendSubmitEvent(blink::HTMLFormElement*) OVERRIDE; | 101 virtual void dispatchWillSendSubmitEvent(HTMLFormElement*) OVERRIDE; |
102 virtual void dispatchWillSubmitForm(blink::HTMLFormElement*) OVERRIDE; | 102 virtual void dispatchWillSubmitForm(HTMLFormElement*) OVERRIDE; |
103 virtual void didStartLoading(blink::LoadStartType) OVERRIDE; | 103 virtual void didStartLoading(LoadStartType) OVERRIDE; |
104 virtual void didStopLoading() OVERRIDE; | 104 virtual void didStopLoading() OVERRIDE; |
105 virtual void progressEstimateChanged(double progressEstimate) OVERRIDE; | 105 virtual void progressEstimateChanged(double progressEstimate) OVERRIDE; |
106 virtual void loadURLExternally(const blink::ResourceRequest&, blink::Navigat
ionPolicy, const String& suggestedName = String()) OVERRIDE; | 106 virtual void loadURLExternally(const ResourceRequest&, NavigationPolicy, con
st String& suggestedName = String()) OVERRIDE; |
107 virtual bool navigateBackForward(int offset) const OVERRIDE; | 107 virtual bool navigateBackForward(int offset) const OVERRIDE; |
108 virtual void didAccessInitialDocument() OVERRIDE; | 108 virtual void didAccessInitialDocument() OVERRIDE; |
109 virtual void didDisplayInsecureContent() OVERRIDE; | 109 virtual void didDisplayInsecureContent() OVERRIDE; |
110 virtual void didRunInsecureContent(blink::SecurityOrigin*, const blink::KURL
& insecureURL) OVERRIDE; | 110 virtual void didRunInsecureContent(SecurityOrigin*, const KURL& insecureURL)
OVERRIDE; |
111 virtual void didDetectXSS(const blink::KURL&, bool didBlockEntirePage) OVERR
IDE; | 111 virtual void didDetectXSS(const KURL&, bool didBlockEntirePage) OVERRIDE; |
112 virtual void didDispatchPingLoader(const blink::KURL&) OVERRIDE; | 112 virtual void didDispatchPingLoader(const KURL&) OVERRIDE; |
113 virtual void selectorMatchChanged(const Vector<String>& addedSelectors, cons
t Vector<String>& removedSelectors) OVERRIDE; | 113 virtual void selectorMatchChanged(const Vector<String>& addedSelectors, cons
t Vector<String>& removedSelectors) OVERRIDE; |
114 virtual PassRefPtr<blink::DocumentLoader> createDocumentLoader(blink::LocalF
rame*, const blink::ResourceRequest&, const blink::SubstituteData&) OVERRIDE; | 114 virtual PassRefPtr<DocumentLoader> createDocumentLoader(LocalFrame*, const R
esourceRequest&, const SubstituteData&) OVERRIDE; |
115 virtual WTF::String userAgent(const blink::KURL&) OVERRIDE; | 115 virtual WTF::String userAgent(const KURL&) OVERRIDE; |
116 virtual WTF::String doNotTrackValue() OVERRIDE; | 116 virtual WTF::String doNotTrackValue() OVERRIDE; |
117 virtual void transitionToCommittedForNewPage() OVERRIDE; | 117 virtual void transitionToCommittedForNewPage() OVERRIDE; |
118 virtual PassRefPtr<blink::LocalFrame> createFrame(const blink::KURL&, const
WTF::AtomicString& name, const blink::Referrer&, blink::HTMLFrameOwnerElement*)
OVERRIDE; | 118 virtual PassRefPtr<LocalFrame> createFrame(const KURL&, const WTF::AtomicStr
ing& name, const Referrer&, HTMLFrameOwnerElement*) OVERRIDE; |
119 virtual bool canCreatePluginWithoutRenderer(const String& mimeType) const; | 119 virtual bool canCreatePluginWithoutRenderer(const String& mimeType) const; |
120 virtual PassRefPtr<blink::Widget> createPlugin( | 120 virtual PassRefPtr<Widget> createPlugin( |
121 blink::HTMLPlugInElement*, const blink::KURL&, | 121 HTMLPlugInElement*, const KURL&, |
122 const Vector<WTF::String>&, const Vector<WTF::String>&, | 122 const Vector<WTF::String>&, const Vector<WTF::String>&, |
123 const WTF::String&, bool loadManually, DetachedPluginPolicy) OVERRIDE; | 123 const WTF::String&, bool loadManually, DetachedPluginPolicy) OVERRIDE; |
124 virtual PassRefPtr<blink::Widget> createJavaAppletWidget( | 124 virtual PassRefPtr<Widget> createJavaAppletWidget( |
125 blink::HTMLAppletElement*, | 125 HTMLAppletElement*, |
126 const blink::KURL& /* base_url */, | 126 const KURL& /* base_url */, |
127 const Vector<WTF::String>& paramNames, | 127 const Vector<WTF::String>& paramNames, |
128 const Vector<WTF::String>& paramValues) OVERRIDE; | 128 const Vector<WTF::String>& paramValues) OVERRIDE; |
129 virtual blink::ObjectContentType objectContentType( | 129 virtual ObjectContentType objectContentType( |
130 const blink::KURL&, const WTF::String& mimeType, bool shouldPreferPlugIn
sForImages) OVERRIDE; | 130 const KURL&, const WTF::String& mimeType, bool shouldPreferPlugInsForIma
ges) OVERRIDE; |
131 virtual void didChangeScrollOffset() OVERRIDE; | 131 virtual void didChangeScrollOffset() OVERRIDE; |
132 virtual void didUpdateCurrentHistoryItem() OVERRIDE; | 132 virtual void didUpdateCurrentHistoryItem() OVERRIDE; |
133 virtual void didRemoveAllPendingStylesheet() OVERRIDE; | 133 virtual void didRemoveAllPendingStylesheet() OVERRIDE; |
134 virtual bool allowScript(bool enabledPerSettings) OVERRIDE; | 134 virtual bool allowScript(bool enabledPerSettings) OVERRIDE; |
135 virtual bool allowScriptFromSource(bool enabledPerSettings, const blink::KUR
L& scriptURL) OVERRIDE; | 135 virtual bool allowScriptFromSource(bool enabledPerSettings, const KURL& scri
ptURL) OVERRIDE; |
136 virtual bool allowPlugins(bool enabledPerSettings) OVERRIDE; | 136 virtual bool allowPlugins(bool enabledPerSettings) OVERRIDE; |
137 virtual bool allowImage(bool enabledPerSettings, const blink::KURL& imageURL
) OVERRIDE; | 137 virtual bool allowImage(bool enabledPerSettings, const KURL& imageURL) OVERR
IDE; |
138 virtual bool allowMedia(const blink::KURL& mediaURL) OVERRIDE; | 138 virtual bool allowMedia(const KURL& mediaURL) OVERRIDE; |
139 virtual bool allowDisplayingInsecureContent(bool enabledPerSettings, blink::
SecurityOrigin*, const blink::KURL&) OVERRIDE; | 139 virtual bool allowDisplayingInsecureContent(bool enabledPerSettings, Securit
yOrigin*, const KURL&) OVERRIDE; |
140 virtual bool allowRunningInsecureContent(bool enabledPerSettings, blink::Sec
urityOrigin*, const blink::KURL&) OVERRIDE; | 140 virtual bool allowRunningInsecureContent(bool enabledPerSettings, SecurityOr
igin*, const KURL&) OVERRIDE; |
141 virtual void didNotAllowScript() OVERRIDE; | 141 virtual void didNotAllowScript() OVERRIDE; |
142 virtual void didNotAllowPlugins() OVERRIDE; | 142 virtual void didNotAllowPlugins() OVERRIDE; |
143 | 143 |
144 virtual WebCookieJar* cookieJar() const OVERRIDE; | 144 virtual WebCookieJar* cookieJar() const OVERRIDE; |
145 virtual bool willCheckAndDispatchMessageEvent(blink::SecurityOrigin* target,
blink::MessageEvent*) const OVERRIDE; | 145 virtual bool willCheckAndDispatchMessageEvent(SecurityOrigin* target, Messag
eEvent*) const OVERRIDE; |
146 virtual void didChangeName(const String&) OVERRIDE; | 146 virtual void didChangeName(const String&) OVERRIDE; |
147 | 147 |
148 virtual void dispatchWillOpenSocketStream(blink::SocketStreamHandle*) OVERRI
DE; | 148 virtual void dispatchWillOpenSocketStream(SocketStreamHandle*) OVERRIDE; |
149 virtual void dispatchWillOpenWebSocket(blink::WebSocketHandle*) OVERRIDE; | 149 virtual void dispatchWillOpenWebSocket(WebSocketHandle*) OVERRIDE; |
150 | 150 |
151 virtual void dispatchWillStartUsingPeerConnectionHandler(blink::WebRTCPeerCo
nnectionHandler*) OVERRIDE; | 151 virtual void dispatchWillStartUsingPeerConnectionHandler(WebRTCPeerConnectio
nHandler*) OVERRIDE; |
152 | 152 |
153 virtual void didRequestAutocomplete(blink::HTMLFormElement*) OVERRIDE; | 153 virtual void didRequestAutocomplete(HTMLFormElement*) OVERRIDE; |
154 | 154 |
155 virtual bool allowWebGL(bool enabledPerSettings) OVERRIDE; | 155 virtual bool allowWebGL(bool enabledPerSettings) OVERRIDE; |
156 virtual void didLoseWebGLContext(int arbRobustnessContextLostReason) OVERRID
E; | 156 virtual void didLoseWebGLContext(int arbRobustnessContextLostReason) OVERRID
E; |
157 | 157 |
158 virtual void dispatchWillInsertBody() OVERRIDE; | 158 virtual void dispatchWillInsertBody() OVERRIDE; |
159 | 159 |
160 virtual PassOwnPtr<WebServiceWorkerProvider> createServiceWorkerProvider() O
VERRIDE; | 160 virtual PassOwnPtr<WebServiceWorkerProvider> createServiceWorkerProvider() O
VERRIDE; |
161 virtual blink::SharedWorkerRepositoryClient* sharedWorkerRepositoryClient()
OVERRIDE; | 161 virtual SharedWorkerRepositoryClient* sharedWorkerRepositoryClient() OVERRID
E; |
162 | 162 |
163 virtual PassOwnPtr<WebApplicationCacheHost> createApplicationCacheHost(WebAp
plicationCacheHostClient*) OVERRIDE; | 163 virtual PassOwnPtr<WebApplicationCacheHost> createApplicationCacheHost(WebAp
plicationCacheHostClient*) OVERRIDE; |
164 | 164 |
165 virtual void didStopAllLoaders() OVERRIDE; | 165 virtual void didStopAllLoaders() OVERRIDE; |
166 | 166 |
167 virtual void dispatchDidChangeManifest() OVERRIDE; | 167 virtual void dispatchDidChangeManifest() OVERRIDE; |
168 | 168 |
169 private: | 169 private: |
170 virtual bool isFrameLoaderClientImpl() const OVERRIDE { return true; } | 170 virtual bool isFrameLoaderClientImpl() const OVERRIDE { return true; } |
171 | 171 |
172 PassOwnPtr<WebPluginLoadObserver> pluginLoadObserver(blink::DocumentLoader*)
; | 172 PassOwnPtr<WebPluginLoadObserver> pluginLoadObserver(DocumentLoader*); |
173 | 173 |
174 // The WebFrame that owns this object and manages its lifetime. Therefore, | 174 // The WebFrame that owns this object and manages its lifetime. Therefore, |
175 // the web frame object is guaranteed to exist. | 175 // the web frame object is guaranteed to exist. |
176 WebLocalFrameImpl* m_webFrame; | 176 WebLocalFrameImpl* m_webFrame; |
177 }; | 177 }; |
178 | 178 |
179 DEFINE_TYPE_CASTS(FrameLoaderClientImpl, blink::FrameLoaderClient, client, clien
t->isFrameLoaderClientImpl(), client.isFrameLoaderClientImpl()); | 179 DEFINE_TYPE_CASTS(FrameLoaderClientImpl, FrameLoaderClient, client, client->isFr
ameLoaderClientImpl(), client.isFrameLoaderClientImpl()); |
180 | 180 |
181 } // namespace blink | 181 } // namespace blink |
182 | 182 |
183 #endif | 183 #endif |
OLD | NEW |