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

Side by Side Diff: chrome/browser/extensions/extension_service.cc

Issue 10777004: Support chrome.windows extension API events for browserless Panels. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix mac unit_test failure Created 8 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/extensions/extension_service.h" 5 #include "chrome/browser/extensions/extension_service.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <set> 8 #include <set>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 #include "chrome/browser/extensions/extension_browser_event_router.h" 42 #include "chrome/browser/extensions/extension_browser_event_router.h"
43 #include "chrome/browser/extensions/extension_data_deleter.h" 43 #include "chrome/browser/extensions/extension_data_deleter.h"
44 #include "chrome/browser/extensions/extension_disabled_ui.h" 44 #include "chrome/browser/extensions/extension_disabled_ui.h"
45 #include "chrome/browser/extensions/extension_error_reporter.h" 45 #include "chrome/browser/extensions/extension_error_reporter.h"
46 #include "chrome/browser/extensions/extension_font_settings_api.h" 46 #include "chrome/browser/extensions/extension_font_settings_api.h"
47 #include "chrome/browser/extensions/extension_global_error.h" 47 #include "chrome/browser/extensions/extension_global_error.h"
48 #include "chrome/browser/extensions/extension_host.h" 48 #include "chrome/browser/extensions/extension_host.h"
49 #include "chrome/browser/extensions/extension_input_ime_api.h" 49 #include "chrome/browser/extensions/extension_input_ime_api.h"
50 #include "chrome/browser/extensions/extension_managed_mode_api.h" 50 #include "chrome/browser/extensions/extension_managed_mode_api.h"
51 #include "chrome/browser/extensions/extension_management_api.h" 51 #include "chrome/browser/extensions/extension_management_api.h"
52 #include "chrome/browser/extensions/extension_panel_event_router.h"
52 #include "chrome/browser/extensions/extension_preference_api.h" 53 #include "chrome/browser/extensions/extension_preference_api.h"
53 #include "chrome/browser/extensions/extension_process_manager.h" 54 #include "chrome/browser/extensions/extension_process_manager.h"
54 #include "chrome/browser/extensions/extension_processes_api.h" 55 #include "chrome/browser/extensions/extension_processes_api.h"
55 #include "chrome/browser/extensions/extension_sorting.h" 56 #include "chrome/browser/extensions/extension_sorting.h"
56 #include "chrome/browser/extensions/extension_special_storage_policy.h" 57 #include "chrome/browser/extensions/extension_special_storage_policy.h"
57 #include "chrome/browser/extensions/extension_sync_data.h" 58 #include "chrome/browser/extensions/extension_sync_data.h"
58 #include "chrome/browser/extensions/extension_system.h" 59 #include "chrome/browser/extensions/extension_system.h"
59 #include "chrome/browser/extensions/extension_web_ui.h" 60 #include "chrome/browser/extensions/extension_web_ui.h"
60 #include "chrome/browser/extensions/external_extension_provider_impl.h" 61 #include "chrome/browser/extensions/external_extension_provider_impl.h"
61 #include "chrome/browser/extensions/external_extension_provider_interface.h" 62 #include "chrome/browser/extensions/external_extension_provider_interface.h"
(...skipping 1091 matching lines...) Expand 10 before | Expand all | Expand 10 after
1153 } 1154 }
1154 1155
1155 bool ExtensionService::is_ready() { 1156 bool ExtensionService::is_ready() {
1156 return ready_; 1157 return ready_;
1157 } 1158 }
1158 1159
1159 extensions::ExtensionUpdater* ExtensionService::updater() { 1160 extensions::ExtensionUpdater* ExtensionService::updater() {
1160 return updater_.get(); 1161 return updater_.get();
1161 } 1162 }
1162 1163
1164 ExtensionPanelEventRouter* ExtensionService::GetPanelEventRouter() {
stevenjb 2012/07/20 16:54:33 Shouldn't this be initialized (conditionally) in E
jennb 2012/07/20 18:09:37 Panel class uses the event router directly, thus a
1165 #if defined(ENABLE_EXTENSIONS)
1166 if (CommandLine::ForCurrentProcess()->HasSwitch(
1167 switches::kBrowserlessPanels) && !panel_event_router_.get()) {
jianli 2012/07/17 18:44:15 nit: It would be more efficient to check !panel_ev
1168 panel_event_router_.reset(new ExtensionPanelEventRouter(profile_));
1169 }
1170 #endif
1171 return panel_event_router_.get();
1172 }
1173
1163 void ExtensionService::CheckAdminBlacklist() { 1174 void ExtensionService::CheckAdminBlacklist() {
1164 std::vector<std::string> to_be_removed; 1175 std::vector<std::string> to_be_removed;
1165 // Loop through extensions list, unload installed extensions. 1176 // Loop through extensions list, unload installed extensions.
1166 for (ExtensionSet::const_iterator iter = extensions_.begin(); 1177 for (ExtensionSet::const_iterator iter = extensions_.begin();
1167 iter != extensions_.end(); ++iter) { 1178 iter != extensions_.end(); ++iter) {
1168 const Extension* extension = (*iter); 1179 const Extension* extension = (*iter);
1169 if (!system_->management_policy()->UserMayLoad(extension, NULL)) { 1180 if (!system_->management_policy()->UserMayLoad(extension, NULL)) {
1170 to_be_removed.push_back(extension->id()); 1181 to_be_removed.push_back(extension->id());
1171 } 1182 }
1172 } 1183 }
(...skipping 1390 matching lines...) Expand 10 before | Expand all | Expand 10 after
2563 2574
2564 // To coexist with certain unit tests that don't have a work-thread message 2575 // To coexist with certain unit tests that don't have a work-thread message
2565 // loop available at ExtensionService shutdown, we lazy-initialize this 2576 // loop available at ExtensionService shutdown, we lazy-initialize this
2566 // object so that those cases neither create nor destroy an 2577 // object so that those cases neither create nor destroy an
2567 // APIResourceController. 2578 // APIResourceController.
2568 if (!api_resource_controller_.get()) { 2579 if (!api_resource_controller_.get()) {
2569 api_resource_controller_.reset(new extensions::APIResourceController()); 2580 api_resource_controller_.reset(new extensions::APIResourceController());
2570 } 2581 }
2571 return api_resource_controller_.get(); 2582 return api_resource_controller_.get();
2572 } 2583 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698