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_BROWSER_CONTENT_BROWSER_CLIENT_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ |
6 #define CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ | 6 #define CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <string> | 9 #include <string> |
10 #include <utility> | 10 #include <utility> |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
227 | 227 |
228 // Returns whether a URL should be allowed to open from a specific context. | 228 // Returns whether a URL should be allowed to open from a specific context. |
229 // This also applies in cases where the new URL will open in another process. | 229 // This also applies in cases where the new URL will open in another process. |
230 virtual bool ShouldAllowOpenURL(SiteInstance* site_instance, const GURL& url); | 230 virtual bool ShouldAllowOpenURL(SiteInstance* site_instance, const GURL& url); |
231 | 231 |
232 // Returns whether a new view for a given |site_url| can be launched in a | 232 // Returns whether a new view for a given |site_url| can be launched in a |
233 // given |process_host|. | 233 // given |process_host|. |
234 virtual bool IsSuitableHost(RenderProcessHost* process_host, | 234 virtual bool IsSuitableHost(RenderProcessHost* process_host, |
235 const GURL& site_url); | 235 const GURL& site_url); |
236 | 236 |
| 237 // Returns whether a new view for a new site instance can be added to a |
| 238 // given |process_host|. |
| 239 virtual bool MayReuseHost(RenderProcessHost* process_host); |
| 240 |
237 // Returns whether a new process should be created or an existing one should | 241 // Returns whether a new process should be created or an existing one should |
238 // be reused based on the URL we want to load. This should return false, | 242 // be reused based on the URL we want to load. This should return false, |
239 // unless there is a good reason otherwise. | 243 // unless there is a good reason otherwise. |
240 virtual bool ShouldTryToUseExistingProcessHost( | 244 virtual bool ShouldTryToUseExistingProcessHost( |
241 BrowserContext* browser_context, const GURL& url); | 245 BrowserContext* browser_context, const GURL& url); |
242 | 246 |
243 // Called when a site instance is first associated with a process. | 247 // Called when a site instance is first associated with a process. |
244 virtual void SiteInstanceGotProcess(SiteInstance* site_instance) {} | 248 virtual void SiteInstanceGotProcess(SiteInstance* site_instance) {} |
245 | 249 |
246 // Called from a site instance's destructor. | 250 // Called from a site instance's destructor. |
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
619 content::BrowserContext* browser_context, | 623 content::BrowserContext* browser_context, |
620 const GURL& url); | 624 const GURL& url); |
621 | 625 |
622 // Returns true if dev channel APIs are available for plugins. | 626 // Returns true if dev channel APIs are available for plugins. |
623 virtual bool IsPluginAllowedToUseDevChannelAPIs(); | 627 virtual bool IsPluginAllowedToUseDevChannelAPIs(); |
624 | 628 |
625 // Returns a special cookie store to use for a given render process, or NULL | 629 // Returns a special cookie store to use for a given render process, or NULL |
626 // if the default cookie store should be used | 630 // if the default cookie store should be used |
627 // This is called on the IO thread. | 631 // This is called on the IO thread. |
628 virtual net::CookieStore* OverrideCookieStoreForRenderProcess( | 632 virtual net::CookieStore* OverrideCookieStoreForRenderProcess( |
629 int render_process_id_); | 633 int render_process_id); |
630 | 634 |
631 #if defined(VIDEO_HOLE) | 635 #if defined(VIDEO_HOLE) |
632 // Allows an embedder to provide its own ExternalVideoSurfaceContainer | 636 // Allows an embedder to provide its own ExternalVideoSurfaceContainer |
633 // implementation. Return NULL to disable external surface video. | 637 // implementation. Return NULL to disable external surface video. |
634 virtual ExternalVideoSurfaceContainer* | 638 virtual ExternalVideoSurfaceContainer* |
635 OverrideCreateExternalVideoSurfaceContainer(WebContents* web_contents); | 639 OverrideCreateExternalVideoSurfaceContainer(WebContents* web_contents); |
636 #endif | 640 #endif |
637 }; | 641 }; |
638 | 642 |
639 } // namespace content | 643 } // namespace content |
640 | 644 |
641 #endif // CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ | 645 #endif // CONTENT_PUBLIC_BROWSER_CONTENT_BROWSER_CLIENT_H_ |
OLD | NEW |