OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * Copyright (C) 2013 Apple Inc. All rights reserved. | 3 * Copyright (C) 2013 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 | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * | 8 * |
9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. 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 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 #include "core/frame/Settings.h" | 76 #include "core/frame/Settings.h" |
77 #include "core/html/HTMLContentElement.h" | 77 #include "core/html/HTMLContentElement.h" |
78 #include "core/html/HTMLIFrameElement.h" | 78 #include "core/html/HTMLIFrameElement.h" |
79 #include "core/html/HTMLInputElement.h" | 79 #include "core/html/HTMLInputElement.h" |
80 #include "core/html/HTMLMediaElement.h" | 80 #include "core/html/HTMLMediaElement.h" |
81 #include "core/html/HTMLPlugInElement.h" | 81 #include "core/html/HTMLPlugInElement.h" |
82 #include "core/html/HTMLSelectElement.h" | 82 #include "core/html/HTMLSelectElement.h" |
83 #include "core/html/HTMLTextAreaElement.h" | 83 #include "core/html/HTMLTextAreaElement.h" |
84 #include "core/html/canvas/CanvasRenderingContext2D.h" | 84 #include "core/html/canvas/CanvasRenderingContext2D.h" |
85 #include "core/html/forms/FormController.h" | 85 #include "core/html/forms/FormController.h" |
| 86 #include "core/html/shadow/PluginPlaceholderElement.h" |
86 #include "core/html/shadow/ShadowElementNames.h" | 87 #include "core/html/shadow/ShadowElementNames.h" |
87 #include "core/html/shadow/TextControlInnerElements.h" | 88 #include "core/html/shadow/TextControlInnerElements.h" |
88 #include "core/inspector/ConsoleMessageStorage.h" | 89 #include "core/inspector/ConsoleMessageStorage.h" |
89 #include "core/inspector/InspectorClient.h" | 90 #include "core/inspector/InspectorClient.h" |
90 #include "core/inspector/InspectorConsoleAgent.h" | 91 #include "core/inspector/InspectorConsoleAgent.h" |
91 #include "core/inspector/InspectorController.h" | 92 #include "core/inspector/InspectorController.h" |
92 #include "core/inspector/InspectorCounters.h" | 93 #include "core/inspector/InspectorCounters.h" |
93 #include "core/inspector/InspectorFrontendChannel.h" | 94 #include "core/inspector/InspectorFrontendChannel.h" |
94 #include "core/inspector/InspectorInstrumentation.h" | 95 #include "core/inspector/InspectorInstrumentation.h" |
95 #include "core/inspector/InspectorOverlay.h" | 96 #include "core/inspector/InspectorOverlay.h" |
(...skipping 2116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2212 Vector<Document::TransitionElementData> elementData; | 2213 Vector<Document::TransitionElementData> elementData; |
2213 frame()->document()->getTransitionElementData(elementData); | 2214 frame()->document()->getTransitionElementData(elementData); |
2214 | 2215 |
2215 Vector<Document::TransitionElementData>::iterator iter = elementData.begin()
; | 2216 Vector<Document::TransitionElementData>::iterator iter = elementData.begin()
; |
2216 for (; iter != elementData.end(); ++iter) | 2217 for (; iter != elementData.end(); ++iter) |
2217 frame()->document()->hideTransitionElements(AtomicString(iter->selector)
); | 2218 frame()->document()->hideTransitionElements(AtomicString(iter->selector)
); |
2218 } | 2219 } |
2219 | 2220 |
2220 void Internals::forcePluginPlaceholder(HTMLElement* element, const String& htmlS
ource, ExceptionState& exceptionState) | 2221 void Internals::forcePluginPlaceholder(HTMLElement* element, const String& htmlS
ource, ExceptionState& exceptionState) |
2221 { | 2222 { |
2222 if (!element) { | |
2223 exceptionState.throwDOMException(InvalidAccessError, ExceptionMessages::
argumentNullOrIncorrectType(1, "HTMLElement")); | |
2224 return; | |
2225 } | |
2226 if (!element->isPluginElement()) { | 2223 if (!element->isPluginElement()) { |
2227 exceptionState.throwDOMException(InvalidNodeTypeError, "The element prov
ided is not a plugin."); | 2224 exceptionState.throwDOMException(InvalidNodeTypeError, "The element prov
ided is not a plugin."); |
2228 return; | 2225 return; |
2229 } | 2226 } |
| 2227 |
2230 element->ensureUserAgentShadowRoot().setInnerHTML(htmlSource, exceptionState
); | 2228 element->ensureUserAgentShadowRoot().setInnerHTML(htmlSource, exceptionState
); |
| 2229 if (exceptionState.hadException()) |
| 2230 return; |
| 2231 |
2231 toHTMLPlugInElement(element)->setUsePlaceholderContent(true); | 2232 toHTMLPlugInElement(element)->setUsePlaceholderContent(true); |
2232 } | 2233 } |
2233 | 2234 |
| 2235 void Internals::forcePluginPlaceholder(HTMLElement* element, const Dictionary& o
ptions, ExceptionState& exceptionState) |
| 2236 { |
| 2237 if (!element->isPluginElement()) { |
| 2238 exceptionState.throwDOMException(InvalidNodeTypeError, "The element prov
ided is not a plugin."); |
| 2239 return; |
| 2240 } |
| 2241 |
| 2242 RefPtrWillBeRawPtr<PluginPlaceholderElement> placeholder = PluginPlaceholder
Element::create(element->document()); |
| 2243 String stringValue; |
| 2244 if (DictionaryHelper::get(options, "message", stringValue)) |
| 2245 placeholder->setMessage(stringValue); |
| 2246 |
| 2247 ShadowRoot& shadowRoot = element->ensureUserAgentShadowRoot(); |
| 2248 shadowRoot.removeChildren(); |
| 2249 shadowRoot.appendChild(placeholder.release(), exceptionState); |
| 2250 if (exceptionState.hadException()) |
| 2251 return; |
| 2252 |
| 2253 toHTMLPlugInElement(element)->setUsePlaceholderContent(true); |
| 2254 } |
| 2255 |
2234 } // namespace blink | 2256 } // namespace blink |
OLD | NEW |