| OLD | NEW |
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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/renderer/extensions/extension_process_bindings.h" | 5 #include "chrome/renderer/extensions/extension_process_bindings.h" |
| 6 | 6 |
| 7 #include "base/singleton.h" | 7 #include "base/singleton.h" |
| 8 #include "chrome/common/render_messages.h" | 8 #include "chrome/common/render_messages.h" |
| 9 #include "chrome/common/url_constants.h" | 9 #include "chrome/common/url_constants.h" |
| 10 #include "chrome/renderer/extensions/bindings_utils.h" | 10 #include "chrome/renderer/extensions/bindings_utils.h" |
| (...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 198 | 198 |
| 199 renderview->SendExtensionRequest(name, json_args, request_id, has_callback); | 199 renderview->SendExtensionRequest(name, json_args, request_id, has_callback); |
| 200 | 200 |
| 201 return v8::Undefined(); | 201 return v8::Undefined(); |
| 202 } | 202 } |
| 203 }; | 203 }; |
| 204 | 204 |
| 205 } // namespace | 205 } // namespace |
| 206 | 206 |
| 207 v8::Extension* ExtensionProcessBindings::Get() { | 207 v8::Extension* ExtensionProcessBindings::Get() { |
| 208 return new ExtensionImpl(); | 208 static v8::Extension* extension = new ExtensionImpl(); |
| 209 return extension; |
| 209 } | 210 } |
| 210 | 211 |
| 211 void ExtensionProcessBindings::SetFunctionNames( | 212 void ExtensionProcessBindings::SetFunctionNames( |
| 212 const std::vector<std::string>& names) { | 213 const std::vector<std::string>& names) { |
| 213 ExtensionImpl::SetFunctionNames(names); | 214 ExtensionImpl::SetFunctionNames(names); |
| 214 } | 215 } |
| 215 | 216 |
| 216 // static | 217 // static |
| 217 void ExtensionProcessBindings::HandleResponse(int request_id, bool success, | 218 void ExtensionProcessBindings::HandleResponse(int request_id, bool success, |
| 218 const std::string& response, | 219 const std::string& response, |
| (...skipping 20 matching lines...) Expand all Loading... |
| 239 const std::string& extension_id, | 240 const std::string& extension_id, |
| 240 const std::vector<std::string>& page_actions) { | 241 const std::vector<std::string>& page_actions) { |
| 241 PageActionIdMap& page_action_map = *GetPageActionMap(); | 242 PageActionIdMap& page_action_map = *GetPageActionMap(); |
| 242 if (!page_actions.empty()) { | 243 if (!page_actions.empty()) { |
| 243 page_action_map[extension_id] = page_actions; | 244 page_action_map[extension_id] = page_actions; |
| 244 } else { | 245 } else { |
| 245 if (page_action_map.find(extension_id) != page_action_map.end()) | 246 if (page_action_map.find(extension_id) != page_action_map.end()) |
| 246 page_action_map.erase(extension_id); | 247 page_action_map.erase(extension_id); |
| 247 } | 248 } |
| 248 } | 249 } |
| OLD | NEW |