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 #ifndef CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ | 5 #ifndef CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ |
6 #define CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ | 6 #define CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
140 // that need to be considered trustworthy. | 140 // that need to be considered trustworthy. |
141 // See https://www.w3.org/TR/powerful-features/#is-origin-trustworthy. | 141 // See https://www.w3.org/TR/powerful-features/#is-origin-trustworthy. |
142 virtual void AddSecureSchemesAndOrigins(std::set<std::string>* schemes, | 142 virtual void AddSecureSchemesAndOrigins(std::set<std::string>* schemes, |
143 std::set<GURL>* origins) {} | 143 std::set<GURL>* origins) {} |
144 | 144 |
145 // Gives the embedder a chance to register additional schemes that | 145 // Gives the embedder a chance to register additional schemes that |
146 // should be allowed to register service workers. Only secure and | 146 // should be allowed to register service workers. Only secure and |
147 // trustworthy schemes should be added. | 147 // trustworthy schemes should be added. |
148 virtual void AddServiceWorkerSchemes(std::set<std::string>* schemes) {} | 148 virtual void AddServiceWorkerSchemes(std::set<std::string>* schemes) {} |
149 | 149 |
150 // Gives the embedder a chance to register schemes for which site isolation | 150 // Returns true if the embedder wishes to supplement the site isolation policy |
151 // should be enabled. | 151 // used by the content layer. Returning true enables the infrastructure for |
152 virtual void AddIsolatedSchemes(std::set<std::string>* schemes) {} | 152 // out-of-process iframes, and causes the content layer to consult |
| 153 // ContentBrowserClient::DoesSiteRequireDedicatedProcess() when making process |
| 154 // model decisions. |
| 155 virtual bool IsSupplementarySiteIsolationModeEnabled(); |
153 | 156 |
154 private: | 157 private: |
155 friend class ContentClientInitializer; // To set these pointers. | 158 friend class ContentClientInitializer; // To set these pointers. |
156 friend class InternalTestInitializer; | 159 friend class InternalTestInitializer; |
157 | 160 |
158 // The embedder API for participating in browser logic. | 161 // The embedder API for participating in browser logic. |
159 ContentBrowserClient* browser_; | 162 ContentBrowserClient* browser_; |
160 // The embedder API for participating in plugin logic. | 163 // The embedder API for participating in plugin logic. |
161 ContentPluginClient* plugin_; | 164 ContentPluginClient* plugin_; |
162 // The embedder API for participating in renderer logic. | 165 // The embedder API for participating in renderer logic. |
163 ContentRendererClient* renderer_; | 166 ContentRendererClient* renderer_; |
164 // The embedder API for participating in utility logic. | 167 // The embedder API for participating in utility logic. |
165 ContentUtilityClient* utility_; | 168 ContentUtilityClient* utility_; |
166 }; | 169 }; |
167 | 170 |
168 } // namespace content | 171 } // namespace content |
169 | 172 |
170 #endif // CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ | 173 #endif // CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ |
OLD | NEW |