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/chrome_content_browser_client.h" | 5 #include "chrome/browser/chrome_content_browser_client.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 #include <utility> | 8 #include <utility> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 16 matching lines...) Expand all Loading... |
27 #include "chrome/browser/chrome_quota_permission_context.h" | 27 #include "chrome/browser/chrome_quota_permission_context.h" |
28 #include "chrome/browser/content_settings/content_settings_utils.h" | 28 #include "chrome/browser/content_settings/content_settings_utils.h" |
29 #include "chrome/browser/content_settings/cookie_settings.h" | 29 #include "chrome/browser/content_settings/cookie_settings.h" |
30 #include "chrome/browser/content_settings/host_content_settings_map.h" | 30 #include "chrome/browser/content_settings/host_content_settings_map.h" |
31 #include "chrome/browser/content_settings/tab_specific_content_settings.h" | 31 #include "chrome/browser/content_settings/tab_specific_content_settings.h" |
32 #include "chrome/browser/defaults.h" | 32 #include "chrome/browser/defaults.h" |
33 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" | 33 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" |
34 #include "chrome/browser/download/download_prefs.h" | 34 #include "chrome/browser/download/download_prefs.h" |
35 #include "chrome/browser/extensions/api/web_request/web_request_api.h" | 35 #include "chrome/browser/extensions/api/web_request/web_request_api.h" |
36 #include "chrome/browser/extensions/browser_permissions_policy_delegate.h" | 36 #include "chrome/browser/extensions/browser_permissions_policy_delegate.h" |
| 37 #include "chrome/browser/extensions/extension_renderer_state.h" |
37 #include "chrome/browser/extensions/extension_service.h" | 38 #include "chrome/browser/extensions/extension_service.h" |
38 #include "chrome/browser/extensions/extension_util.h" | 39 #include "chrome/browser/extensions/extension_util.h" |
39 #include "chrome/browser/extensions/extension_web_ui.h" | 40 #include "chrome/browser/extensions/extension_web_ui.h" |
40 #include "chrome/browser/extensions/extension_webkit_preferences.h" | 41 #include "chrome/browser/extensions/extension_webkit_preferences.h" |
41 #include "chrome/browser/extensions/suggest_permission_util.h" | 42 #include "chrome/browser/extensions/suggest_permission_util.h" |
42 #include "chrome/browser/geolocation/chrome_access_token_store.h" | 43 #include "chrome/browser/geolocation/chrome_access_token_store.h" |
43 #include "chrome/browser/google/google_util.h" | 44 #include "chrome/browser/google/google_util.h" |
44 #include "chrome/browser/guest_view/ad_view/ad_view_guest.h" | 45 #include "chrome/browser/guest_view/ad_view/ad_view_guest.h" |
45 #include "chrome/browser/guest_view/guest_view_base.h" | 46 #include "chrome/browser/guest_view/guest_view_base.h" |
46 #include "chrome/browser/guest_view/guest_view_constants.h" | 47 #include "chrome/browser/guest_view/guest_view_constants.h" |
(...skipping 2089 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2136 const GURL& source_origin, | 2137 const GURL& source_origin, |
2137 WindowContainerType container_type, | 2138 WindowContainerType container_type, |
2138 const GURL& target_url, | 2139 const GURL& target_url, |
2139 const content::Referrer& referrer, | 2140 const content::Referrer& referrer, |
2140 WindowOpenDisposition disposition, | 2141 WindowOpenDisposition disposition, |
2141 const WebWindowFeatures& features, | 2142 const WebWindowFeatures& features, |
2142 bool user_gesture, | 2143 bool user_gesture, |
2143 bool opener_suppressed, | 2144 bool opener_suppressed, |
2144 content::ResourceContext* context, | 2145 content::ResourceContext* context, |
2145 int render_process_id, | 2146 int render_process_id, |
2146 bool is_guest, | |
2147 int opener_id, | 2147 int opener_id, |
2148 bool* no_javascript_access) { | 2148 bool* no_javascript_access) { |
2149 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); | 2149 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
2150 | 2150 |
2151 *no_javascript_access = false; | 2151 *no_javascript_access = false; |
2152 | 2152 |
2153 ProfileIOData* io_data = ProfileIOData::FromResourceContext(context); | 2153 ProfileIOData* io_data = ProfileIOData::FromResourceContext(context); |
2154 InfoMap* map = io_data->GetExtensionInfoMap(); | 2154 InfoMap* map = io_data->GetExtensionInfoMap(); |
2155 | 2155 |
2156 // If the opener is trying to create a background window but doesn't have | 2156 // If the opener is trying to create a background window but doesn't have |
(...skipping 13 matching lines...) Expand all Loading... |
2170 // already. We must use the full URL to find hosted apps, though, and not | 2170 // already. We must use the full URL to find hosted apps, though, and not |
2171 // just the origin. | 2171 // just the origin. |
2172 const Extension* extension = | 2172 const Extension* extension = |
2173 map->extensions().GetExtensionOrAppByURL(opener_url); | 2173 map->extensions().GetExtensionOrAppByURL(opener_url); |
2174 if (extension && !extensions::BackgroundInfo::AllowJSAccess(extension)) | 2174 if (extension && !extensions::BackgroundInfo::AllowJSAccess(extension)) |
2175 *no_javascript_access = true; | 2175 *no_javascript_access = true; |
2176 | 2176 |
2177 return true; | 2177 return true; |
2178 } | 2178 } |
2179 | 2179 |
| 2180 ExtensionRendererState* renderer_state = |
| 2181 ExtensionRendererState::GetInstance(); |
| 2182 ExtensionRendererState::WebViewInfo webview_info; |
| 2183 bool is_guest = renderer_state->GetWebViewInfo(render_process_id, |
| 2184 opener_id, |
| 2185 &webview_info); |
2180 if (is_guest) | 2186 if (is_guest) |
2181 return true; | 2187 return true; |
2182 | 2188 |
2183 HostContentSettingsMap* content_settings = | 2189 HostContentSettingsMap* content_settings = |
2184 ProfileIOData::FromResourceContext(context)->GetHostContentSettingsMap(); | 2190 ProfileIOData::FromResourceContext(context)->GetHostContentSettingsMap(); |
2185 BlockedWindowParams blocked_params(target_url, | 2191 BlockedWindowParams blocked_params(target_url, |
2186 referrer, | 2192 referrer, |
2187 disposition, | 2193 disposition, |
2188 features, | 2194 features, |
2189 user_gesture, | 2195 user_gesture, |
(...skipping 562 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2752 switches::kDisableWebRtcEncryption, | 2758 switches::kDisableWebRtcEncryption, |
2753 }; | 2759 }; |
2754 to_command_line->CopySwitchesFrom(from_command_line, | 2760 to_command_line->CopySwitchesFrom(from_command_line, |
2755 kWebRtcDevSwitchNames, | 2761 kWebRtcDevSwitchNames, |
2756 arraysize(kWebRtcDevSwitchNames)); | 2762 arraysize(kWebRtcDevSwitchNames)); |
2757 } | 2763 } |
2758 } | 2764 } |
2759 #endif // defined(ENABLE_WEBRTC) | 2765 #endif // defined(ENABLE_WEBRTC) |
2760 | 2766 |
2761 } // namespace chrome | 2767 } // namespace chrome |
OLD | NEW |