OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 #include "core/dom/custom/CustomElementRegistrationContext.h" | 43 #include "core/dom/custom/CustomElementRegistrationContext.h" |
44 #include "core/dom/custom/CustomElementSyncMicrotaskQueue.h" | 44 #include "core/dom/custom/CustomElementSyncMicrotaskQueue.h" |
45 #include "core/html/imports/HTMLImportChild.h" | 45 #include "core/html/imports/HTMLImportChild.h" |
46 #include "core/html/imports/HTMLImportsController.h" | 46 #include "core/html/imports/HTMLImportsController.h" |
47 | 47 |
48 namespace blink { | 48 namespace blink { |
49 | 49 |
50 DEFINE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(CustomElementScheduler) | 50 DEFINE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(CustomElementScheduler) |
51 | 51 |
52 // FIXME: Consider moving the element's callback queue to ElementRareData. | 52 // FIXME: Consider moving the element's callback queue to ElementRareData. |
53 typedef WillBeHeapHashMap<RawPtrWillBeMember<Element>, OwnPtrWillBeMember<Custom
ElementCallbackQueue> > ElementCallbackQueueMap; | 53 typedef WillBeHeapHashMap<RawPtrWillBeMember<Element>, OwnPtrWillBeMember<Custom
ElementCallbackQueue>> ElementCallbackQueueMap; |
54 | 54 |
55 static ElementCallbackQueueMap& callbackQueues() | 55 static ElementCallbackQueueMap& callbackQueues() |
56 { | 56 { |
57 DEFINE_STATIC_LOCAL(OwnPtrWillBePersistent<ElementCallbackQueueMap>, map, (a
doptPtrWillBeNoop(new ElementCallbackQueueMap()))); | 57 DEFINE_STATIC_LOCAL(OwnPtrWillBePersistent<ElementCallbackQueueMap>, map, (a
doptPtrWillBeNoop(new ElementCallbackQueueMap()))); |
58 return *map; | 58 return *map; |
59 } | 59 } |
60 | 60 |
61 static CustomElementCallbackQueue& ensureCallbackQueue(PassRefPtrWillBeRawPtr<El
ement> element) | 61 static CustomElementCallbackQueue& ensureCallbackQueue(PassRefPtrWillBeRawPtr<El
ement> element) |
62 { | 62 { |
63 ElementCallbackQueueMap::ValueType* it = callbackQueues().add(element.get(),
nullptr).storedValue; | 63 ElementCallbackQueueMap::ValueType* it = callbackQueues().add(element.get(),
nullptr).storedValue; |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 callbackQueues().clear(); | 148 callbackQueues().clear(); |
149 } | 149 } |
150 | 150 |
151 void CustomElementScheduler::microtaskDispatcherDidFinish() | 151 void CustomElementScheduler::microtaskDispatcherDidFinish() |
152 { | 152 { |
153 ASSERT(!CustomElementProcessingStack::inCallbackDeliveryScope()); | 153 ASSERT(!CustomElementProcessingStack::inCallbackDeliveryScope()); |
154 callbackQueues().clear(); | 154 callbackQueues().clear(); |
155 } | 155 } |
156 | 156 |
157 } // namespace blink | 157 } // namespace blink |
OLD | NEW |