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

Unified Diff: Source/core/dom/custom/CustomElementMicrotaskDispatcher.h

Issue 288323004: HTML Imports: Get rid of needsProcessOrStop() from dom/custom/ (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 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/custom/CustomElementMicrotaskDispatcher.h
diff --git a/Source/core/dom/custom/CustomElementMicrotaskDispatcher.h b/Source/core/dom/custom/CustomElementMicrotaskDispatcher.h
index 46ef3f56afce027b5f9501b19b6057488131c19f..ae54007ba12ff36e6d829b75bac539ad9b8ade03 100644
--- a/Source/core/dom/custom/CustomElementMicrotaskDispatcher.h
+++ b/Source/core/dom/custom/CustomElementMicrotaskDispatcher.h
@@ -5,7 +5,6 @@
#ifndef CustomElementMicrotaskDispatcher_h
#define CustomElementMicrotaskDispatcher_h
-#include "core/dom/custom/CustomElementMicrotaskQueue.h"
#include "platform/heap/Handle.h"
#include "wtf/Noncopyable.h"
#include "wtf/PassOwnPtr.h"
@@ -13,8 +12,10 @@
namespace WebCore {
+class CustomElementAsyncImportMicrotaskQueue;
class CustomElementCallbackQueue;
class CustomElementMicrotaskImportStep;
+class CustomElementMicrotaskQueue;
class CustomElementMicrotaskStep;
class HTMLImportLoader;
@@ -22,12 +23,14 @@ class CustomElementMicrotaskDispatcher FINAL : public NoBaseWillBeGarbageCollect
WTF_MAKE_NONCOPYABLE(CustomElementMicrotaskDispatcher);
DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(CustomElementMicrotaskDispatcher);
public:
-
static CustomElementMicrotaskDispatcher& instance();
- void enqueue(HTMLImportLoader*, PassOwnPtrWillBeRawPtr<CustomElementMicrotaskStep>);
+ void enqueue(HTMLImportLoader* parentLoader, PassOwnPtrWillBeRawPtr<CustomElementMicrotaskStep>);
+ void enqueue(HTMLImportLoader* parentLoader, PassOwnPtrWillBeRawPtr<CustomElementMicrotaskImportStep>, bool importIsSync);
+
void enqueue(CustomElementCallbackQueue*);
+
void importDidFinish(CustomElementMicrotaskImportStep*);
bool elementQueueIsEmpty() { return m_elements.isEmpty(); }
@@ -41,6 +44,8 @@ public:
private:
CustomElementMicrotaskDispatcher();
+ void ensureMicrotaskScheduledForElementQueue();
+ void ensureMicrotaskScheduledForMicrotaskSteps();
void ensureMicrotaskScheduled();
static void dispatch();
@@ -54,6 +59,7 @@ private:
} m_phase;
RefPtrWillBeMember<CustomElementMicrotaskQueue> m_resolutionAndImports;
+ RefPtrWillBeMember<CustomElementAsyncImportMicrotaskQueue> m_asyncImports;
WillBeHeapVector<RawPtrWillBeMember<CustomElementCallbackQueue> > m_elements;
};

Powered by Google App Engine
This is Rietveld 408576698