Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(720)

Unified Diff: Source/core/dom/Document.h

Issue 15856002: First step of HTMLImports (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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;

Powered by Google App Engine
This is Rietveld 408576698