| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2000 Stefan Schimanski (1Stein@gmx.de) | 4 * (C) 2000 Stefan Schimanski (1Stein@gmx.de) |
| 5 * Copyright (C) 2004, 2005, 2006, 2008, 2009, 2011 Apple Inc. All rights reserv
ed. | 5 * Copyright (C) 2004, 2005, 2006, 2008, 2009, 2011 Apple Inc. All rights reserv
ed. |
| 6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 139 // <object> which modifies url and serviceType before calling these. | 139 // <object> which modifies url and serviceType before calling these. |
| 140 if (!allowedToLoadFrameURL(m_url)) | 140 if (!allowedToLoadFrameURL(m_url)) |
| 141 return; | 141 return; |
| 142 | 142 |
| 143 // FIXME: These should be joined into a PluginParameters class. | 143 // FIXME: These should be joined into a PluginParameters class. |
| 144 Vector<String> paramNames; | 144 Vector<String> paramNames; |
| 145 Vector<String> paramValues; | 145 Vector<String> paramValues; |
| 146 parametersForPlugin(paramNames, paramValues); | 146 parametersForPlugin(paramNames, paramValues); |
| 147 | 147 |
| 148 RefPtr<HTMLEmbedElement> protect(this); // Loading the plugin might remove u
s from the document. | 148 RefPtr<HTMLEmbedElement> protect(this); // Loading the plugin might remove u
s from the document. |
| 149 bool beforeLoadAllowedLoad = dispatchBeforeLoadEvent(m_url); | 149 |
| 150 if (!beforeLoadAllowedLoad) { | 150 // FIXME: Can we not have renderer here now that beforeload events are gone? |
| 151 if (document().isPluginDocument()) { | 151 if (!renderer()) |
| 152 // Plugins inside plugin documents load differently than other plugi
ns. By the time | |
| 153 // we are here in a plugin document, the load of the plugin (which i
s the plugin document's | |
| 154 // main resource) has already started. We need to explicitly cancel
the main resource load here. | |
| 155 toPluginDocument(document()).cancelManualPluginLoad(); | |
| 156 } | |
| 157 return; | |
| 158 } | |
| 159 if (!renderer()) // Do not load the plugin if beforeload removed this elemen
t or its renderer. | |
| 160 return; | 152 return; |
| 161 | 153 |
| 162 // FIXME: beforeLoad could have detached the renderer! Just like in the <ob
ject> case above. | |
| 163 requestObject(m_url, m_serviceType, paramNames, paramValues); | 154 requestObject(m_url, m_serviceType, paramNames, paramValues); |
| 164 } | 155 } |
| 165 | 156 |
| 166 bool HTMLEmbedElement::rendererIsNeeded(const RenderStyle& style) | 157 bool HTMLEmbedElement::rendererIsNeeded(const RenderStyle& style) |
| 167 { | 158 { |
| 168 if (isImageType()) | 159 if (isImageType()) |
| 169 return HTMLPlugInElement::rendererIsNeeded(style); | 160 return HTMLPlugInElement::rendererIsNeeded(style); |
| 170 | 161 |
| 171 LocalFrame* frame = document().frame(); | 162 LocalFrame* frame = document().frame(); |
| 172 if (!frame) | 163 if (!frame) |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 209 { | 200 { |
| 210 // http://www.whatwg.org/specs/web-apps/current-work/#exposed | 201 // http://www.whatwg.org/specs/web-apps/current-work/#exposed |
| 211 for (Node* ancestor = parentNode(); ancestor; ancestor = ancestor->parentNod
e()) { | 202 for (Node* ancestor = parentNode(); ancestor; ancestor = ancestor->parentNod
e()) { |
| 212 if (isHTMLObjectElement(*ancestor) && toHTMLObjectElement(*ancestor).isE
xposed()) | 203 if (isHTMLObjectElement(*ancestor) && toHTMLObjectElement(*ancestor).isE
xposed()) |
| 213 return false; | 204 return false; |
| 214 } | 205 } |
| 215 return true; | 206 return true; |
| 216 } | 207 } |
| 217 | 208 |
| 218 } | 209 } |
| OLD | NEW |