OLD | NEW |
1 // Copyright (c) 2014 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "config.h" | 5 #include "config.h" |
6 #include "InitModules.h" | 6 #include "InitModules.h" |
7 | 7 |
8 #include "bindings/modules/v8/ModuleBindingsInitializer.h" | 8 #include "bindings/modules/v8/ModuleBindingsInitializer.h" |
9 #include "core/EventTypeNames.h" | 9 #include "core/EventTypeNames.h" |
10 #include "core/dom/Document.h" | 10 #include "core/dom/Document.h" |
11 #include "modules/EventModulesFactory.h" | 11 #include "modules/EventModulesFactory.h" |
12 #include "modules/EventModulesNames.h" | 12 #include "modules/EventModulesNames.h" |
13 #include "modules/EventTargetModulesNames.h" | 13 #include "modules/EventTargetModulesNames.h" |
14 #include "modules/IndexedDBNames.h" | 14 #include "modules/IndexedDBNames.h" |
15 #include "modules/accessibility/AXObjectCacheImpl.h" | 15 #include "modules/accessibility/AXObjectCacheImpl.h" |
| 16 #include "modules/compositorworker/CompositorWorkerManager.h" |
16 #include "modules/filesystem/DraggedIsolatedFileSystemImpl.h" | 17 #include "modules/filesystem/DraggedIsolatedFileSystemImpl.h" |
17 #include "modules/webdatabase/DatabaseManager.h" | 18 #include "modules/webdatabase/DatabaseManager.h" |
18 | 19 |
19 namespace blink { | 20 namespace blink { |
20 | 21 |
21 void ModulesInitializer::init() | 22 void ModulesInitializer::init() |
22 { | 23 { |
23 ASSERT(!isInitialized()); | 24 ASSERT(!isInitialized()); |
24 | 25 |
25 // Strings must be initialized before calling CoreInitializer::init(). | 26 // Strings must be initialized before calling CoreInitializer::init(). |
26 EventNames::initModules(); | 27 EventNames::initModules(); |
27 EventTargetNames::initModules(); | 28 EventTargetNames::initModules(); |
28 Document::registerEventFactory(EventModulesFactory::create()); | 29 Document::registerEventFactory(EventModulesFactory::create()); |
29 ModuleBindingsInitializer::init(); | 30 ModuleBindingsInitializer::init(); |
30 IndexedDBNames::init(); | 31 IndexedDBNames::init(); |
31 AXObjectCache::init(AXObjectCacheImpl::create); | 32 AXObjectCache::init(AXObjectCacheImpl::create); |
32 DraggedIsolatedFileSystem::init(DraggedIsolatedFileSystemImpl::prepareForDat
aObject); | 33 DraggedIsolatedFileSystem::init(DraggedIsolatedFileSystemImpl::prepareForDat
aObject); |
33 | 34 |
34 CoreInitializer::init(); | 35 CoreInitializer::init(); |
35 | 36 |
| 37 if (RuntimeEnabledFeatures::compositorWorkerEnabled()) |
| 38 CompositorWorkerManager::initialize(); |
| 39 |
36 ASSERT(isInitialized()); | 40 ASSERT(isInitialized()); |
37 } | 41 } |
38 | 42 |
39 void ModulesInitializer::terminateThreads() | 43 void ModulesInitializer::terminateThreads() |
40 { | 44 { |
| 45 if (RuntimeEnabledFeatures::compositorWorkerEnabled()) |
| 46 CompositorWorkerManager::shutdown(); |
41 DatabaseManager::terminateDatabaseThread(); | 47 DatabaseManager::terminateDatabaseThread(); |
42 } | 48 } |
43 | 49 |
44 } // namespace blink | 50 } // namespace blink |
OLD | NEW |