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

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

Issue 6873014: Clear RenderThread of any Chrome specific code, and move a bunch of stuff out of RenderView. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 <map> 7 #include <map>
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/command_line.h" 12 #include "base/command_line.h"
13 #include "base/json/json_reader.h" 13 #include "base/json/json_reader.h"
14 #include "base/lazy_instance.h" 14 #include "base/lazy_instance.h"
15 #include "base/memory/scoped_ptr.h" 15 #include "base/memory/scoped_ptr.h"
16 #include "base/string_number_conversions.h" 16 #include "base/string_number_conversions.h"
17 #include "base/string_util.h" 17 #include "base/string_util.h"
18 #include "chrome/common/extensions/extension.h" 18 #include "chrome/common/extensions/extension.h"
19 #include "chrome/common/extensions/extension_constants.h" 19 #include "chrome/common/extensions/extension_constants.h"
20 #include "chrome/common/extensions/extension_messages.h" 20 #include "chrome/common/extensions/extension_messages.h"
21 #include "chrome/common/extensions/extension_set.h" 21 #include "chrome/common/extensions/extension_set.h"
22 #include "chrome/common/extensions/url_pattern.h" 22 #include "chrome/common/extensions/url_pattern.h"
23 #include "chrome/common/render_messages.h" 23 #include "chrome/common/render_messages.h"
24 #include "chrome/common/url_constants.h" 24 #include "chrome/common/url_constants.h"
25 #include "chrome/renderer/chrome_render_process_observer.h"
25 #include "chrome/renderer/extensions/bindings_utils.h" 26 #include "chrome/renderer/extensions/bindings_utils.h"
26 #include "chrome/renderer/extensions/event_bindings.h" 27 #include "chrome/renderer/extensions/event_bindings.h"
27 #include "chrome/renderer/extensions/extension_dispatcher.h" 28 #include "chrome/renderer/extensions/extension_dispatcher.h"
28 #include "chrome/renderer/extensions/js_only_v8_extensions.h" 29 #include "chrome/renderer/extensions/js_only_v8_extensions.h"
29 #include "chrome/renderer/extensions/renderer_extension_bindings.h" 30 #include "chrome/renderer/extensions/renderer_extension_bindings.h"
30 #include "chrome/renderer/extensions/user_script_slave.h" 31 #include "chrome/renderer/extensions/user_script_slave.h"
31 #include "content/renderer/render_thread.h"
32 #include "content/renderer/render_view.h" 32 #include "content/renderer/render_view.h"
33 #include "content/renderer/render_view_visitor.h" 33 #include "content/renderer/render_view_visitor.h"
34 #include "grit/common_resources.h" 34 #include "grit/common_resources.h"
35 #include "grit/renderer_resources.h" 35 #include "grit/renderer_resources.h"
36 #include "third_party/skia/include/core/SkBitmap.h" 36 #include "third_party/skia/include/core/SkBitmap.h"
37 #include "third_party/skia/include/core/SkColor.h" 37 #include "third_party/skia/include/core/SkColor.h"
38 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h" 38 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h"
39 #include "third_party/WebKit/Source/WebKit/chromium/public/WebURL.h" 39 #include "third_party/WebKit/Source/WebKit/chromium/public/WebURL.h"
40 #include "third_party/WebKit/Source/WebKit/chromium/public/WebKit.h" 40 #include "third_party/WebKit/Source/WebKit/chromium/public/WebKit.h"
41 #include "third_party/WebKit/Source/WebKit/chromium/public/WebSecurityPolicy.h" 41 #include "third_party/WebKit/Source/WebKit/chromium/public/WebSecurityPolicy.h"
(...skipping 481 matching lines...) Expand 10 before | Expand all | Expand 10 after
523 } 523 }
524 524
525 static v8::Handle<v8::Value> GetRenderViewId(const v8::Arguments& args) { 525 static v8::Handle<v8::Value> GetRenderViewId(const v8::Arguments& args) {
526 RenderView* renderview = bindings_utils::GetRenderViewForCurrentContext(); 526 RenderView* renderview = bindings_utils::GetRenderViewForCurrentContext();
527 if (!renderview) 527 if (!renderview)
528 return v8::Undefined(); 528 return v8::Undefined();
529 return v8::Integer::New(renderview->routing_id()); 529 return v8::Integer::New(renderview->routing_id());
530 } 530 }
531 531
532 static v8::Handle<v8::Value> IsExtensionProcess(const v8::Arguments& args) { 532 static v8::Handle<v8::Value> IsExtensionProcess(const v8::Arguments& args) {
533 bool retval = false; 533 return v8::Boolean::New(extension_dispatcher_->is_extension_process());
534 if (EventBindings::GetRenderThread())
535 retval = extension_dispatcher_->is_extension_process();
536 return v8::Boolean::New(retval);
537 } 534 }
538 535
539 static v8::Handle<v8::Value> IsIncognitoProcess(const v8::Arguments& args) { 536 static v8::Handle<v8::Value> IsIncognitoProcess(const v8::Arguments& args) {
540 bool retval = false; 537 return v8::Boolean::New(
541 if (EventBindings::GetRenderThread()) 538 ChromeRenderProcessObserver::is_incognito_process());
542 retval = EventBindings::GetRenderThread()->IsIncognitoProcess();
543 return v8::Boolean::New(retval);
544 } 539 }
545 540
546 static ExtensionDispatcher* extension_dispatcher_; 541 static ExtensionDispatcher* extension_dispatcher_;
547 }; 542 };
548 543
549 ExtensionDispatcher* ExtensionImpl::extension_dispatcher_; 544 ExtensionDispatcher* ExtensionImpl::extension_dispatcher_;
550 545
551 } // namespace 546 } // namespace
552 547
553 v8::Extension* ExtensionProcessBindings::Get( 548 v8::Extension* ExtensionProcessBindings::Get(
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
677 ExtensionProcessBindings::ThrowPermissionDeniedException( 672 ExtensionProcessBindings::ThrowPermissionDeniedException(
678 const std::string& function_name) { 673 const std::string& function_name) {
679 static const char kMessage[] = 674 static const char kMessage[] =
680 "You do not have permission to use '%s'. Be sure to declare" 675 "You do not have permission to use '%s'. Be sure to declare"
681 " in your manifest what permissions you need."; 676 " in your manifest what permissions you need.";
682 std::string error_msg = StringPrintf(kMessage, function_name.c_str()); 677 std::string error_msg = StringPrintf(kMessage, function_name.c_str());
683 678
684 return v8::ThrowException(v8::Exception::Error( 679 return v8::ThrowException(v8::Exception::Error(
685 v8::String::New(error_msg.c_str()))); 680 v8::String::New(error_msg.c_str())));
686 } 681 }
OLDNEW
« no previous file with comments | « chrome/renderer/extensions/extension_helper.cc ('k') | chrome/renderer/extensions/user_script_slave.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698