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

Side by Side Diff: apps/shell/browser/shell_browser_main_parts.cc

Issue 389633002: Move system.* family of APIs to extensions/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed gn build Created 6 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "apps/shell/browser/shell_browser_main_parts.h" 5 #include "apps/shell/browser/shell_browser_main_parts.h"
6 6
7 #include "apps/shell/browser/shell_browser_context.h" 7 #include "apps/shell/browser/shell_browser_context.h"
8 #include "apps/shell/browser/shell_browser_main_delegate.h" 8 #include "apps/shell/browser/shell_browser_main_delegate.h"
9 #include "apps/shell/browser/shell_desktop_controller.h" 9 #include "apps/shell/browser/shell_desktop_controller.h"
10 #include "apps/shell/browser/shell_extension_system.h" 10 #include "apps/shell/browser/shell_extension_system.h"
11 #include "apps/shell/browser/shell_extension_system_factory.h" 11 #include "apps/shell/browser/shell_extension_system_factory.h"
12 #include "apps/shell/browser/shell_extensions_browser_client.h" 12 #include "apps/shell/browser/shell_extensions_browser_client.h"
13 #include "apps/shell/browser/shell_omaha_query_params_delegate.h" 13 #include "apps/shell/browser/shell_omaha_query_params_delegate.h"
14 #include "apps/shell/common/shell_extensions_client.h" 14 #include "apps/shell/common/shell_extensions_client.h"
15 #include "apps/shell/common/switches.h" 15 #include "apps/shell/common/switches.h"
16 #include "base/command_line.h" 16 #include "base/command_line.h"
17 #include "base/run_loop.h" 17 #include "base/run_loop.h"
18 #include "components/keyed_service/content/browser_context_dependency_manager.h" 18 #include "components/keyed_service/content/browser_context_dependency_manager.h"
19 #include "components/omaha_query_params/omaha_query_params.h" 19 #include "components/omaha_query_params/omaha_query_params.h"
20 #include "content/public/common/result_codes.h" 20 #include "content/public/common/result_codes.h"
21 #include "content/shell/browser/shell_devtools_delegate.h" 21 #include "content/shell/browser/shell_devtools_delegate.h"
22 #include "content/shell/browser/shell_net_log.h" 22 #include "content/shell/browser/shell_net_log.h"
23 #include "extensions/browser/api/system_info/system_info_api.h"
23 #include "extensions/browser/browser_context_keyed_service_factories.h" 24 #include "extensions/browser/browser_context_keyed_service_factories.h"
24 #include "extensions/browser/extension_system.h" 25 #include "extensions/browser/extension_system.h"
25 #include "ui/aura/window_tree_host.h" 26 #include "ui/aura/window_tree_host.h"
26 #include "ui/base/ime/input_method_initializer.h" 27 #include "ui/base/ime/input_method_initializer.h"
27 #include "ui/base/resource/resource_bundle.h" 28 #include "ui/base/resource/resource_bundle.h"
28 29
30 #if !defined(OS_ANDROID) && !defined(OS_IOS)
31 #include "components/storage_monitor/storage_monitor.h"
32 #endif
33
29 #if defined(OS_CHROMEOS) 34 #if defined(OS_CHROMEOS)
30 #include "apps/shell/browser/shell_network_controller_chromeos.h" 35 #include "apps/shell/browser/shell_network_controller_chromeos.h"
31 #include "chromeos/dbus/dbus_thread_manager.h" 36 #include "chromeos/dbus/dbus_thread_manager.h"
32 #endif 37 #endif
33 38
34 using content::BrowserContext; 39 using content::BrowserContext;
35 using extensions::Extension; 40 using extensions::Extension;
36 using extensions::ExtensionSystem; 41 using extensions::ExtensionSystem;
37 using extensions::ShellExtensionSystem; 42 using extensions::ShellExtensionSystem;
38 43
39 namespace { 44 namespace {
40 45
41 // Register additional KeyedService factories here. See 46 // Register additional KeyedService factories here. See
42 // ChromeBrowserMainExtraPartsProfiles for details. 47 // ChromeBrowserMainExtraPartsProfiles for details.
43 void EnsureBrowserContextKeyedServiceFactoriesBuilt() { 48 void EnsureBrowserContextKeyedServiceFactoriesBuilt() {
44 extensions::EnsureBrowserContextKeyedServiceFactoriesBuilt(); 49 extensions::EnsureBrowserContextKeyedServiceFactoriesBuilt();
45 extensions::ShellExtensionSystemFactory::GetInstance(); 50 extensions::ShellExtensionSystemFactory::GetInstance();
51 extensions::SystemInfoAPI::GetFactoryInstance();
46 } 52 }
47 53
48 } // namespace 54 } // namespace
49 55
50 namespace apps { 56 namespace apps {
51 57
52 ShellBrowserMainParts::ShellBrowserMainParts( 58 ShellBrowserMainParts::ShellBrowserMainParts(
53 const content::MainFunctionParams& parameters, 59 const content::MainFunctionParams& parameters,
54 ShellBrowserMainDelegate* browser_main_delegate) 60 ShellBrowserMainDelegate* browser_main_delegate)
55 : extension_system_(NULL), 61 : extension_system_(NULL),
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 devtools_delegate_.reset( 128 devtools_delegate_.reset(
123 new content::ShellDevToolsDelegate(browser_context_.get())); 129 new content::ShellDevToolsDelegate(browser_context_.get()));
124 if (parameters_.ui_task) { 130 if (parameters_.ui_task) {
125 // For running browser tests. 131 // For running browser tests.
126 parameters_.ui_task->Run(); 132 parameters_.ui_task->Run();
127 delete parameters_.ui_task; 133 delete parameters_.ui_task;
128 run_message_loop_ = false; 134 run_message_loop_ = false;
129 } else { 135 } else {
130 browser_main_delegate_->Start(browser_context_.get()); 136 browser_main_delegate_->Start(browser_context_.get());
131 } 137 }
138
139 #if !defined(OS_ANDROID) && !defined(OS_IOS)
140 storage_monitor::StorageMonitor::Create();
141 #endif
132 } 142 }
133 143
134 bool ShellBrowserMainParts::MainMessageLoopRun(int* result_code) { 144 bool ShellBrowserMainParts::MainMessageLoopRun(int* result_code) {
135 if (!run_message_loop_) 145 if (!run_message_loop_)
136 return true; 146 return true;
137 // TODO(yoz): just return false here? 147 // TODO(yoz): just return false here?
138 base::RunLoop run_loop; 148 base::RunLoop run_loop;
139 run_loop.Run(); 149 run_loop.Run();
140 *result_code = content::RESULT_CODE_NORMAL_EXIT; 150 *result_code = content::RESULT_CODE_NORMAL_EXIT;
141 return true; 151 return true;
142 } 152 }
143 153
144 void ShellBrowserMainParts::PostMainMessageLoopRun() { 154 void ShellBrowserMainParts::PostMainMessageLoopRun() {
145 browser_main_delegate_->Shutdown(); 155 browser_main_delegate_->Shutdown();
146 156
147 BrowserContextDependencyManager::GetInstance()->DestroyBrowserContextServices( 157 BrowserContextDependencyManager::GetInstance()->DestroyBrowserContextServices(
148 browser_context_.get()); 158 browser_context_.get());
149 extension_system_ = NULL; 159 extension_system_ = NULL;
150 extensions::ExtensionsBrowserClient::Set(NULL); 160 extensions::ExtensionsBrowserClient::Set(NULL);
151 extensions_browser_client_.reset(); 161 extensions_browser_client_.reset();
152 browser_context_.reset(); 162 browser_context_.reset();
153 163
154 desktop_controller_.reset(); 164 desktop_controller_.reset();
165
166 #if !defined(OS_ANDROID) && !defined(OS_IOS)
167 storage_monitor::StorageMonitor::Destroy();
168 #endif
155 } 169 }
156 170
157 void ShellBrowserMainParts::PostDestroyThreads() { 171 void ShellBrowserMainParts::PostDestroyThreads() {
158 #if defined(OS_CHROMEOS) 172 #if defined(OS_CHROMEOS)
159 network_controller_.reset(); 173 network_controller_.reset();
160 chromeos::DBusThreadManager::Shutdown(); 174 chromeos::DBusThreadManager::Shutdown();
161 #endif 175 #endif
162 } 176 }
163 177
164 void ShellBrowserMainParts::CreateExtensionSystem() { 178 void ShellBrowserMainParts::CreateExtensionSystem() {
165 DCHECK(browser_context_); 179 DCHECK(browser_context_);
166 extension_system_ = static_cast<ShellExtensionSystem*>( 180 extension_system_ = static_cast<ShellExtensionSystem*>(
167 ExtensionSystem::Get(browser_context_.get())); 181 ExtensionSystem::Get(browser_context_.get()));
168 extension_system_->InitForRegularProfile(true); 182 extension_system_->InitForRegularProfile(true);
169 } 183 }
170 184
171 } // namespace apps 185 } // namespace apps
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698