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) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv
ed. | 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv
ed. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 12 matching lines...) Expand all Loading... |
23 #include "config.h" | 23 #include "config.h" |
24 #include "core/html/HTMLScriptElement.h" | 24 #include "core/html/HTMLScriptElement.h" |
25 | 25 |
26 #include "bindings/core/v8/ExceptionStatePlaceholder.h" | 26 #include "bindings/core/v8/ExceptionStatePlaceholder.h" |
27 #include "bindings/core/v8/ScriptEventListener.h" | 27 #include "bindings/core/v8/ScriptEventListener.h" |
28 #include "bindings/core/v8/V8DOMActivityLogger.h" | 28 #include "bindings/core/v8/V8DOMActivityLogger.h" |
29 #include "core/HTMLNames.h" | 29 #include "core/HTMLNames.h" |
30 #include "core/dom/Attribute.h" | 30 #include "core/dom/Attribute.h" |
31 #include "core/dom/Document.h" | 31 #include "core/dom/Document.h" |
32 #include "core/dom/ScriptLoader.h" | 32 #include "core/dom/ScriptLoader.h" |
| 33 #include "core/dom/ScriptRunner.h" |
33 #include "core/dom/Text.h" | 34 #include "core/dom/Text.h" |
34 #include "core/events/Event.h" | 35 #include "core/events/Event.h" |
35 | 36 |
36 namespace blink { | 37 namespace blink { |
37 | 38 |
38 using namespace HTMLNames; | 39 using namespace HTMLNames; |
39 | 40 |
40 inline HTMLScriptElement::HTMLScriptElement(Document& document, bool wasInserted
ByParser, bool alreadyStarted) | 41 inline HTMLScriptElement::HTMLScriptElement(Document& document, bool wasInserted
ByParser, bool alreadyStarted) |
41 : HTMLElement(scriptTag, document) | 42 : HTMLElement(scriptTag, document) |
42 , m_loader(ScriptLoader::create(this, wasInsertedByParser, alreadyStarted)) | 43 , m_loader(ScriptLoader::create(this, wasInsertedByParser, alreadyStarted)) |
(...skipping 20 matching lines...) Expand all Loading... |
63 { | 64 { |
64 return srcAttr; | 65 return srcAttr; |
65 } | 66 } |
66 | 67 |
67 void HTMLScriptElement::childrenChanged(const ChildrenChange& change) | 68 void HTMLScriptElement::childrenChanged(const ChildrenChange& change) |
68 { | 69 { |
69 HTMLElement::childrenChanged(change); | 70 HTMLElement::childrenChanged(change); |
70 m_loader->childrenChanged(); | 71 m_loader->childrenChanged(); |
71 } | 72 } |
72 | 73 |
| 74 void HTMLScriptElement::didMoveToNewDocument(Document& oldDocument) |
| 75 { |
| 76 oldDocument.scriptRunner()->movePendingAsyncScript(document().scriptRunner()
, m_loader.get()); |
| 77 HTMLElement::didMoveToNewDocument(oldDocument); |
| 78 } |
| 79 |
73 void HTMLScriptElement::parseAttribute(const QualifiedName& name, const AtomicSt
ring& value) | 80 void HTMLScriptElement::parseAttribute(const QualifiedName& name, const AtomicSt
ring& value) |
74 { | 81 { |
75 if (name == srcAttr) | 82 if (name == srcAttr) |
76 m_loader->handleSourceAttribute(value); | 83 m_loader->handleSourceAttribute(value); |
77 else if (name == asyncAttr) | 84 else if (name == asyncAttr) |
78 m_loader->handleAsyncAttribute(); | 85 m_loader->handleAsyncAttribute(); |
79 else | 86 else |
80 HTMLElement::parseAttribute(name, value); | 87 HTMLElement::parseAttribute(name, value); |
81 } | 88 } |
82 | 89 |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
179 ASSERT(!m_loader->haveFiredLoadEvent()); | 186 ASSERT(!m_loader->haveFiredLoadEvent()); |
180 dispatchEvent(Event::create(EventTypeNames::load)); | 187 dispatchEvent(Event::create(EventTypeNames::load)); |
181 } | 188 } |
182 | 189 |
183 PassRefPtrWillBeRawPtr<Element> HTMLScriptElement::cloneElementWithoutAttributes
AndChildren() | 190 PassRefPtrWillBeRawPtr<Element> HTMLScriptElement::cloneElementWithoutAttributes
AndChildren() |
184 { | 191 { |
185 return adoptRefWillBeNoop(new HTMLScriptElement(document(), false, m_loader-
>alreadyStarted())); | 192 return adoptRefWillBeNoop(new HTMLScriptElement(document(), false, m_loader-
>alreadyStarted())); |
186 } | 193 } |
187 | 194 |
188 } | 195 } |
OLD | NEW |