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

Unified Diff: Source/bindings/dart/DartDOMData.h

Issue 24294002: Dartium changes for custom element lifecycle events. (Closed) Base URL: svn://svn.chromium.org/multivm/trunk/webkit
Patch Set: Created 7 years, 3 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/bindings/dart/DartDOMData.h
diff --git a/Source/bindings/dart/DartDOMData.h b/Source/bindings/dart/DartDOMData.h
index db093775cead55d23436e851c37039fa547b7fbe..e0066173ee316076c38c4950c92270f3f4408424 100644
--- a/Source/bindings/dart/DartDOMData.h
+++ b/Source/bindings/dart/DartDOMData.h
@@ -32,6 +32,7 @@
#define DartDOMData_h
#include "DartWebkitClassIds.h"
+#include "bindings/dart/DartCustomElementBinding.h"
#include "bindings/dart/DartStringCache.h"
#include "wtf/HashMap.h"
@@ -41,11 +42,13 @@
#include "wtf/ThreadingPrimitives.h"
#include "wtf/Vector.h"
#include "wtf/text/WTFString.h"
+
#include <dart_api.h>
namespace WebCore {
class ActiveDOMObject;
+class CustomElementDefinition;
class DOMWindow;
class DartApplicationLoader;
class DartEventListener;
@@ -64,7 +67,7 @@ typedef HashMap<ActiveDOMObject*, Dart_WeakPersistentHandle> DartActiveDOMObject
typedef HashMap<EventTarget*, Dart_WeakPersistentHandle> DartEventTargetMap;
typedef HashSet<DartWeakCallback*> DartWeakCallbacks;
typedef HashSet<DartIsolateDestructionObserver*> DartIsolateDestructionObservers;
-typedef HashMap<String, Dart_PersistentHandle> DartCustomElementMap;
+typedef HashMap<CustomElementDefinition*, OwnPtr<DartCustomElementBinding> > DartCustomElementBindingMap;
typedef Dart_PersistentHandle ClassTable[NumWebkitClassIds];
class DartDOMData {
@@ -97,10 +100,12 @@ public:
DartEventTargetMap* eventTargetMap() { return &m_eventTargetMap; }
DartWeakCallbacks* weakCallbacks() { return &m_weakCallbacks; }
DartIsolateDestructionObservers* isolateDestructionObservers() { return &m_isolateDestructionObservers; }
- DartCustomElementMap* customElementMap() { return &m_customElementMap; }
- DartCustomElementMap* customBaseElementMap() { return &m_customBaseElementMap; }
ClassTable* classHandleCache() { return &m_classHandleCache; }
+ void addCustomElementBinding(CustomElementDefinition*, PassOwnPtr<DartCustomElementBinding>);
+ void clearCustomElementBinding(CustomElementDefinition*);
+ DartCustomElementBinding* customElementBinding(CustomElementDefinition*);
+
private:
ScriptExecutionContext* m_scriptExecutionContext;
bool m_isDOMEnabled;
@@ -119,8 +124,7 @@ private:
DartEventTargetMap m_eventTargetMap;
DartWeakCallbacks m_weakCallbacks;
DartIsolateDestructionObservers m_isolateDestructionObservers;
- DartCustomElementMap m_customElementMap;
- DartCustomElementMap m_customBaseElementMap;
+ DartCustomElementBindingMap m_customElementBindings;
ClassTable m_classHandleCache;
};

Powered by Google App Engine
This is Rietveld 408576698