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

Unified Diff: chrome/renderer/content_settings_observer.cc

Issue 464693002: ifdef extensions bits in ContentSettingsObserver. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: address comments Created 6 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/renderer/content_settings_observer.h ('k') | chrome/renderer/content_settings_observer_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/renderer/content_settings_observer.cc
diff --git a/chrome/renderer/content_settings_observer.cc b/chrome/renderer/content_settings_observer.cc
index ba6eb9eb9274e90464924162befb1aad415803fc..57de0757f4b3e8869a2f264e1855cbefe7a370b1 100644
--- a/chrome/renderer/content_settings_observer.cc
+++ b/chrome/renderer/content_settings_observer.cc
@@ -13,10 +13,6 @@
#include "content/public/renderer/navigation_state.h"
#include "content/public/renderer/render_frame.h"
#include "content/public/renderer/render_view.h"
-#include "extensions/common/constants.h"
-#include "extensions/common/extension.h"
-#include "extensions/common/permissions/permissions_data.h"
-#include "extensions/renderer/dispatcher.h"
#include "third_party/WebKit/public/platform/WebPermissionCallbacks.h"
#include "third_party/WebKit/public/platform/WebURL.h"
#include "third_party/WebKit/public/web/WebDataSource.h"
@@ -28,6 +24,9 @@
#if defined(ENABLE_EXTENSIONS)
#include "chrome/common/extensions/chrome_extension_messages.h"
+#include "extensions/common/constants.h"
+#include "extensions/common/extension.h"
+#include "extensions/renderer/dispatcher.h"
#endif
using blink::WebDataSource;
@@ -40,7 +39,6 @@ using blink::WebURL;
using blink::WebView;
using content::DocumentState;
using content::NavigationState;
-using extensions::APIPermission;
namespace {
@@ -154,7 +152,9 @@ ContentSettingsObserver::ContentSettingsObserver(
: content::RenderFrameObserver(render_frame),
content::RenderFrameObserverTracker<ContentSettingsObserver>(
render_frame),
+#if defined(ENABLE_EXTENSIONS)
extension_dispatcher_(extension_dispatcher),
+#endif
allow_displaying_insecure_content_(false),
allow_running_insecure_content_(false),
content_setting_rules_(NULL),
@@ -429,19 +429,11 @@ bool ContentSettingsObserver::allowWriteToClipboard(bool default_value) {
}
bool ContentSettingsObserver::allowMutationEvents(bool default_value) {
- WebFrame* frame = render_frame()->GetWebFrame();
- WebSecurityOrigin origin = frame->document().securityOrigin();
- const extensions::Extension* extension = GetExtension(origin);
- if (extension && extension->is_platform_app())
- return false;
- return default_value;
+ return IsPlatformApp() ? false : default_value;
}
bool ContentSettingsObserver::allowPushState() {
- WebFrame* frame = render_frame()->GetWebFrame();
- WebSecurityOrigin origin = frame->document().securityOrigin();
- const extensions::Extension* extension = GetExtension(origin);
- return !extension || !extension->is_platform_app();
+ return !IsPlatformApp();
}
static void SendInsecureContentSignal(int signal) {
@@ -635,6 +627,18 @@ void ContentSettingsObserver::ClearBlockedContentSettings() {
cached_script_permissions_.clear();
}
+bool ContentSettingsObserver::IsPlatformApp() {
+#if defined(ENABLE_EXTENSIONS)
+ WebFrame* frame = render_frame()->GetWebFrame();
+ WebSecurityOrigin origin = frame->document().securityOrigin();
+ const extensions::Extension* extension = GetExtension(origin);
Devlin 2014/08/12 23:16:12 Any reason to not save a couple ifdefs and just in
Lei Zhang 2014/08/12 23:18:06 It's already there and it's very obvious what it d
Devlin 2014/08/12 23:20:47 Yeah. I just think that ifdefs in general make co
+ return extension && extension->is_platform_app();
+#else
+ return false;
+#endif
+}
+
+#if defined(ENABLE_EXTENSIONS)
const extensions::Extension* ContentSettingsObserver::GetExtension(
const WebSecurityOrigin& origin) const {
if (!EqualsASCII(origin.protocol(), extensions::kExtensionScheme))
@@ -646,6 +650,7 @@ const extensions::Extension* ContentSettingsObserver::GetExtension(
return extension_dispatcher_->extensions()->GetByID(extension_id);
}
+#endif
bool ContentSettingsObserver::IsWhitelistedForContentSettings(
content::RenderFrame* frame) {
@@ -678,8 +683,10 @@ bool ContentSettingsObserver::IsWhitelistedForContentSettings(
if (EqualsASCII(origin.protocol(), content::kChromeDevToolsScheme))
return true; // DevTools UI elements should still work.
+#if defined(ENABLE_EXTENSIONS)
if (EqualsASCII(origin.protocol(), extensions::kExtensionScheme))
return true;
+#endif
// TODO(creis, fsamuel): Remove this once the concept of swapped out
// RenderFrames goes away.
« no previous file with comments | « chrome/renderer/content_settings_observer.h ('k') | chrome/renderer/content_settings_observer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698