Index: Source/core/dom/Document.h |
diff --git a/Source/core/dom/Document.h b/Source/core/dom/Document.h |
index b643c2e17e6c0be32d2c200b366688ee45d78d06..09ab44614d3db5532cf793eac671fe0e994543f0 100644 |
--- a/Source/core/dom/Document.h |
+++ b/Source/core/dom/Document.h |
@@ -40,6 +40,7 @@ |
#include "core/dom/UserActionElementSet.h" |
#include "core/dom/ViewportArguments.h" |
#include "core/html/CollectionType.h" |
+#include "core/html/HTMLImportsHost.h" |
#include "core/inspector/InspectorCounters.h" |
#include "core/page/FocusDirection.h" |
#include "core/page/PageVisibilityState.h" |
@@ -200,7 +201,7 @@ enum DocumentClass { |
typedef unsigned char DocumentClassFlags; |
-class Document : public ContainerNode, public TreeScope, public ScriptExecutionContext { |
+class Document : public ContainerNode, public TreeScope, public HTMLImportsHost, public ScriptExecutionContext { |
public: |
static PassRefPtr<Document> create(Frame* frame, const KURL& url) |
{ |
@@ -429,6 +430,7 @@ public: |
void notifyRemovePendingSheetIfNeeded(); |
bool haveStylesheetsLoaded() const; |
+ bool haveStylesheetsAndImportsLoaded() const { return haveImportsLoaded() && haveStylesheetsLoaded(); } |
// This is a DOM function. |
StyleSheetList* styleSheets(); |
@@ -1061,6 +1063,7 @@ public: |
PassRefPtr<CustomElementConstructor> registerElement(WebCore::ScriptState*, const AtomicString& name, const Dictionary& options, ExceptionCode&); |
CustomElementRegistry* registry() const { return m_registry.get(); } |
CustomElementRegistry* ensureCustomElementRegistry(); |
+ HTMLImports* imports(); |
void adjustFloatQuadsForScrollAndAbsoluteZoom(Vector<FloatQuad>&, RenderObject*); |
void adjustFloatRectForScrollAndAbsoluteZoom(FloatRect&, RenderObject*); |
@@ -1152,6 +1155,13 @@ private: |
void createStyleResolver(); |
+ void executeScriptsWaitingForResourcesIfNeeded(); |
+ |
+ bool haveImportsLoaded() const; |
+ // HTMLImportsHost |
+ virtual void didLoadAllImports() OVERRIDE; |
+ virtual SecurityContext* importsContext() OVERRIDE; |
+ |
void seamlessParentUpdatedStylesheets(); |
PassRefPtr<NodeList> handleZeroPadding(const HitTestRequest&, HitTestResult&) const; |
@@ -1410,6 +1420,7 @@ private: |
OwnPtr<TextAutosizer> m_textAutosizer; |
RefPtr<CustomElementRegistry> m_registry; |
+ OwnPtr<HTMLImports> m_imports; |
bool m_scheduledTasksAreSuspended; |