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

Side by Side Diff: chrome/renderer/extensions/extension_helper.cc

Issue 14301016: Fix a couple of bugs relating to sending Tab info with chrome.runtime.connect and (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: add key to app1/manifest.json Created 7 years, 8 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/renderer/extensions/extension_helper.h" 5 #include "chrome/renderer/extensions/extension_helper.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/json/json_string_value_serializer.h" 10 #include "base/json/json_string_value_serializer.h"
(...skipping 15 matching lines...) Expand all
26 #include "extensions/common/constants.h" 26 #include "extensions/common/constants.h"
27 #include "third_party/WebKit/Source/Platform/chromium/public/WebURLRequest.h" 27 #include "third_party/WebKit/Source/Platform/chromium/public/WebURLRequest.h"
28 #include "third_party/WebKit/Source/WebKit/chromium/public/WebConsoleMessage.h" 28 #include "third_party/WebKit/Source/WebKit/chromium/public/WebConsoleMessage.h"
29 #include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h" 29 #include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h"
30 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h" 30 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h"
31 #include "third_party/WebKit/Source/WebKit/chromium/public/WebScopedUserGesture. h" 31 #include "third_party/WebKit/Source/WebKit/chromium/public/WebScopedUserGesture. h"
32 #include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h" 32 #include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h"
33 #include "webkit/glue/image_resource_fetcher.h" 33 #include "webkit/glue/image_resource_fetcher.h"
34 #include "webkit/glue/resource_fetcher.h" 34 #include "webkit/glue/resource_fetcher.h"
35 35
36 namespace base {
37 class ListValue;
38 } // namespace base
39
40 using content::ConsoleMessageLevel; 36 using content::ConsoleMessageLevel;
41 using WebKit::WebConsoleMessage; 37 using WebKit::WebConsoleMessage;
42 using WebKit::WebDataSource; 38 using WebKit::WebDataSource;
43 using WebKit::WebFrame; 39 using WebKit::WebFrame;
44 using WebKit::WebURLRequest; 40 using WebKit::WebURLRequest;
45 using WebKit::WebScopedUserGesture; 41 using WebKit::WebScopedUserGesture;
46 using WebKit::WebView; 42 using WebKit::WebView;
47 using webkit_glue::ImageResourceFetcher; 43 using webkit_glue::ImageResourceFetcher;
48 using webkit_glue::ResourceFetcher; 44 using webkit_glue::ResourceFetcher;
49 45
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after
273 web_user_gesture.reset(new WebScopedUserGesture); 269 web_user_gesture.reset(new WebScopedUserGesture);
274 } 270 }
275 271
276 dispatcher_->v8_context_set().DispatchChromeHiddenMethod( 272 dispatcher_->v8_context_set().DispatchChromeHiddenMethod(
277 extension_id, function_name, args, render_view(), event_url); 273 extension_id, function_name, args, render_view(), event_url);
278 } 274 }
279 275
280 void ExtensionHelper::OnExtensionDispatchOnConnect( 276 void ExtensionHelper::OnExtensionDispatchOnConnect(
281 int target_port_id, 277 int target_port_id,
282 const std::string& channel_name, 278 const std::string& channel_name,
283 const std::string& tab_json, 279 const base::DictionaryValue& source_tab,
284 const std::string& source_extension_id, 280 const ExtensionMsg_ExternalConnectionInfo& info) {
285 const std::string& target_extension_id) {
286 MiscellaneousBindings::DispatchOnConnect( 281 MiscellaneousBindings::DispatchOnConnect(
287 dispatcher_->v8_context_set().GetAll(), 282 dispatcher_->v8_context_set().GetAll(),
288 target_port_id, channel_name, tab_json, 283 target_port_id, channel_name, source_tab,
289 source_extension_id, target_extension_id, 284 info.source_id, info.target_id, info.source_url,
290 render_view()); 285 render_view());
291 } 286 }
292 287
293 void ExtensionHelper::OnExtensionDeliverMessage(int target_id, 288 void ExtensionHelper::OnExtensionDeliverMessage(int target_id,
294 const std::string& message) { 289 const std::string& message) {
295 MiscellaneousBindings::DeliverMessage(dispatcher_->v8_context_set().GetAll(), 290 MiscellaneousBindings::DeliverMessage(dispatcher_->v8_context_set().GetAll(),
296 target_id, 291 target_id,
297 message, 292 message,
298 render_view()); 293 render_view());
299 } 294 }
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 v8::Handle<v8::Context> script_context = 371 v8::Handle<v8::Context> script_context =
377 render_view()->GetWebView()->mainFrame()->mainWorldScriptContext(); 372 render_view()->GetWebView()->mainFrame()->mainWorldScriptContext();
378 ChromeV8Context* chrome_v8_context = 373 ChromeV8Context* chrome_v8_context =
379 dispatcher_->v8_context_set().GetByV8Context(script_context); 374 dispatcher_->v8_context_set().GetByV8Context(script_context);
380 if (!chrome_v8_context) 375 if (!chrome_v8_context)
381 return; 376 return;
382 chrome_v8_context->CallChromeHiddenMethod("OnAppWindowClosed", 0, NULL, NULL); 377 chrome_v8_context->CallChromeHiddenMethod("OnAppWindowClosed", 0, NULL, NULL);
383 } 378 }
384 379
385 } // namespace extensions 380 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/renderer/extensions/extension_helper.h ('k') | chrome/renderer/extensions/miscellaneous_bindings.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698