| OLD | NEW |
| 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 18 matching lines...) Expand all Loading... |
| 29 #include "chrome/browser/accessibility/accessibility_extension_api.h" | 29 #include "chrome/browser/accessibility/accessibility_extension_api.h" |
| 30 #include "chrome/browser/bookmarks/bookmark_extension_api.h" | 30 #include "chrome/browser/bookmarks/bookmark_extension_api.h" |
| 31 #include "chrome/browser/browser_process.h" | 31 #include "chrome/browser/browser_process.h" |
| 32 #include "chrome/browser/chrome_plugin_service_filter.h" | 32 #include "chrome/browser/chrome_plugin_service_filter.h" |
| 33 #include "chrome/browser/download/download_extension_api.h" | 33 #include "chrome/browser/download/download_extension_api.h" |
| 34 #include "chrome/browser/extensions/api/socket/socket_api_controller.h" | 34 #include "chrome/browser/extensions/api/socket/socket_api_controller.h" |
| 35 #include "chrome/browser/extensions/app_notification_manager.h" | 35 #include "chrome/browser/extensions/app_notification_manager.h" |
| 36 #include "chrome/browser/extensions/apps_promo.h" | 36 #include "chrome/browser/extensions/apps_promo.h" |
| 37 #include "chrome/browser/extensions/component_loader.h" | 37 #include "chrome/browser/extensions/component_loader.h" |
| 38 #include "chrome/browser/extensions/crx_installer.h" | 38 #include "chrome/browser/extensions/crx_installer.h" |
| 39 #include "chrome/browser/extensions/api/declarative/rules_registry_service.h" |
| 39 #include "chrome/browser/extensions/default_apps_trial.h" | 40 #include "chrome/browser/extensions/default_apps_trial.h" |
| 40 #include "chrome/browser/extensions/extension_browser_event_router.h" | 41 #include "chrome/browser/extensions/extension_browser_event_router.h" |
| 41 #include "chrome/browser/extensions/extension_cookies_api.h" | 42 #include "chrome/browser/extensions/extension_cookies_api.h" |
| 42 #include "chrome/browser/extensions/extension_data_deleter.h" | 43 #include "chrome/browser/extensions/extension_data_deleter.h" |
| 43 #include "chrome/browser/extensions/extension_error_reporter.h" | 44 #include "chrome/browser/extensions/extension_error_reporter.h" |
| 44 #include "chrome/browser/extensions/extension_global_error.h" | 45 #include "chrome/browser/extensions/extension_global_error.h" |
| 45 #include "chrome/browser/extensions/extension_host.h" | 46 #include "chrome/browser/extensions/extension_host.h" |
| 46 #include "chrome/browser/extensions/extension_input_ime_api.h" | 47 #include "chrome/browser/extensions/extension_input_ime_api.h" |
| 47 #include "chrome/browser/extensions/extension_management_api.h" | 48 #include "chrome/browser/extensions/extension_management_api.h" |
| 48 #include "chrome/browser/extensions/extension_preference_api.h" | 49 #include "chrome/browser/extensions/extension_preference_api.h" |
| (...skipping 1075 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1124 host->Send(new ExtensionMsg_Unloaded(extension->id())); | 1125 host->Send(new ExtensionMsg_Unloaded(extension->id())); |
| 1125 } | 1126 } |
| 1126 | 1127 |
| 1127 profile_->UnregisterExtensionWithRequestContexts(extension->id(), reason); | 1128 profile_->UnregisterExtensionWithRequestContexts(extension->id(), reason); |
| 1128 profile_->GetExtensionSpecialStoragePolicy()-> | 1129 profile_->GetExtensionSpecialStoragePolicy()-> |
| 1129 RevokeRightsForExtension(extension); | 1130 RevokeRightsForExtension(extension); |
| 1130 | 1131 |
| 1131 ExtensionWebUI::UnregisterChromeURLOverrides( | 1132 ExtensionWebUI::UnregisterChromeURLOverrides( |
| 1132 profile_, extension->GetChromeURLOverrides()); | 1133 profile_, extension->GetChromeURLOverrides()); |
| 1133 | 1134 |
| 1135 if (rules_registry_service_.get()) |
| 1136 rules_registry_service_->OnExtensionUnloaded(extension->id()); |
| 1137 |
| 1134 #if defined(OS_CHROMEOS) | 1138 #if defined(OS_CHROMEOS) |
| 1135 // Revoke external file access to | 1139 // Revoke external file access to |
| 1136 if (profile_->GetFileSystemContext() && | 1140 if (profile_->GetFileSystemContext() && |
| 1137 profile_->GetFileSystemContext()->external_provider()) { | 1141 profile_->GetFileSystemContext()->external_provider()) { |
| 1138 profile_->GetFileSystemContext()->external_provider()-> | 1142 profile_->GetFileSystemContext()->external_provider()-> |
| 1139 RevokeAccessForExtension(extension->id()); | 1143 RevokeAccessForExtension(extension->id()); |
| 1140 } | 1144 } |
| 1141 | 1145 |
| 1142 if (extension->input_components().size() > 0) { | 1146 if (extension->input_components().size() > 0) { |
| 1143 ExtensionInputImeEventRouter::GetInstance()->UnregisterAllImes( | 1147 ExtensionInputImeEventRouter::GetInstance()->UnregisterAllImes( |
| (...skipping 1548 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2692 // | 2696 // |
| 2693 // To coexist with certain unit tests that don't have an IO thread message | 2697 // To coexist with certain unit tests that don't have an IO thread message |
| 2694 // loop available at ExtensionService shutdown, we lazy-initialize this | 2698 // loop available at ExtensionService shutdown, we lazy-initialize this |
| 2695 // object so that those cases neither create nor destroy a SocketController. | 2699 // object so that those cases neither create nor destroy a SocketController. |
| 2696 CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); | 2700 CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
| 2697 if (!socket_controller_) { | 2701 if (!socket_controller_) { |
| 2698 socket_controller_ = new extensions::SocketController(); | 2702 socket_controller_ = new extensions::SocketController(); |
| 2699 } | 2703 } |
| 2700 return socket_controller_; | 2704 return socket_controller_; |
| 2701 } | 2705 } |
| 2706 |
| 2707 extensions::RulesRegistryService* ExtensionService::GetRulesRegistryService() { |
| 2708 if (!rules_registry_service_.get()) |
| 2709 rules_registry_service_.reset(new extensions::RulesRegistryService()); |
| 2710 return rules_registry_service_.get(); |
| 2711 } |
| OLD | NEW |