Index: Source/core/dom/custom/CustomElementScheduler.cpp |
diff --git a/Source/core/dom/custom/CustomElementScheduler.cpp b/Source/core/dom/custom/CustomElementScheduler.cpp |
index 7743156d279e51486cf8662310c25de3a7b963a2..6878cae5519756ddd6e9d40d45758879aee2bf1e 100644 |
--- a/Source/core/dom/custom/CustomElementScheduler.cpp |
+++ b/Source/core/dom/custom/CustomElementScheduler.cpp |
@@ -46,37 +46,24 @@ namespace WebCore { |
class HTMLImport; |
-void CustomElementScheduler::scheduleCreatedCallback(PassRefPtr<CustomElementLifecycleCallbacks> callbacks, PassRefPtr<Element> element) |
+void CustomElementScheduler::scheduleCallback(PassRefPtr<CustomElementLifecycleCallbacks> callbacks, PassRefPtr<Element> element, CustomElementLifecycleCallbacks::CallbackType type) |
{ |
- CustomElementCallbackQueue& queue = instance().schedule(element); |
- queue.append(CustomElementCallbackInvocation::createInvocation(callbacks, CustomElementLifecycleCallbacks::Created)); |
-} |
+ ASSERT(type != CustomElementLifecycleCallbacks::AttributeChanged); |
-void CustomElementScheduler::scheduleAttributeChangedCallback(PassRefPtr<CustomElementLifecycleCallbacks> callbacks, PassRefPtr<Element> element, const AtomicString& name, const AtomicString& oldValue, const AtomicString& newValue) |
-{ |
- if (!callbacks->hasAttributeChangedCallback()) |
+ if (!callbacks->hasCallback(type)) |
return; |
CustomElementCallbackQueue& queue = instance().schedule(element); |
- queue.append(CustomElementCallbackInvocation::createAttributeChangedInvocation(callbacks, name, oldValue, newValue)); |
+ queue.append(CustomElementCallbackInvocation::createInvocation(callbacks, type)); |
} |
-void CustomElementScheduler::scheduleAttachedCallback(PassRefPtr<CustomElementLifecycleCallbacks> callbacks, PassRefPtr<Element> element) |
-{ |
- if (!callbacks->hasAttachedCallback()) |
- return; |
- |
- CustomElementCallbackQueue& queue = instance().schedule(element); |
- queue.append(CustomElementCallbackInvocation::createInvocation(callbacks, CustomElementLifecycleCallbacks::Attached)); |
-} |
- |
-void CustomElementScheduler::scheduleDetachedCallback(PassRefPtr<CustomElementLifecycleCallbacks> callbacks, PassRefPtr<Element> element) |
+void CustomElementScheduler::scheduleAttributeChangedCallback(PassRefPtr<CustomElementLifecycleCallbacks> callbacks, PassRefPtr<Element> element, const AtomicString& name, const AtomicString& oldValue, const AtomicString& newValue) |
{ |
- if (!callbacks->hasDetachedCallback()) |
+ if (!callbacks->hasCallback(CustomElementLifecycleCallbacks::AttributeChanged)) |
return; |
CustomElementCallbackQueue& queue = instance().schedule(element); |
- queue.append(CustomElementCallbackInvocation::createInvocation(callbacks, CustomElementLifecycleCallbacks::Detached)); |
+ queue.append(CustomElementCallbackInvocation::createAttributeChangedInvocation(callbacks, name, oldValue, newValue)); |
} |
void CustomElementScheduler::resolveOrScheduleResolution(PassRefPtr<CustomElementRegistrationContext> context, PassRefPtr<Element> element, const CustomElementDescriptor& descriptor) |