1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_CHROME_CONTENT_BROWSER_CLIENT_PARTS_H_
6 #define CHROME_BROWSER_CHROME_CONTENT_BROWSER_CLIENT_PARTS_H_
11 #include "base/memory/scoped_vector.h"
12 #include "storage/browser/fileapi/file_system_context.h"
21 class BrowserURLHandler
;
22 class RenderProcessHost
;
25 struct WebPreferences
;
29 class FileSystemBackend
;
35 // Implements a platform or feature specific part of ChromeContentBrowserClient.
36 // All the public methods corresponds to the methods of the same name in
37 // content::ContentBrowserClient.
38 class ChromeContentBrowserClientParts
{
40 virtual ~ChromeContentBrowserClientParts() {}
42 virtual void RenderProcessWillLaunch(content::RenderProcessHost
* host
) {}
43 virtual void SiteInstanceGotProcess(content::SiteInstance
* site_instance
) {}
44 virtual void SiteInstanceDeleting(content::SiteInstance
* site_instance
) {}
45 virtual void OverrideWebkitPrefs(content::RenderViewHost
* rvh
,
46 content::WebPreferences
* web_prefs
) {}
47 virtual void BrowserURLHandlerCreated(content::BrowserURLHandler
* handler
) {}
48 virtual void GetAdditionalAllowedSchemesForFileSystem(
49 std::vector
<std::string
>* additional_allowed_schemes
) {}
50 virtual void GetURLRequestAutoMountHandlers(
51 std::vector
<storage::URLRequestAutoMountHandler
>* handlers
) {}
52 virtual void GetAdditionalFileSystemBackends(
53 content::BrowserContext
* browser_context
,
54 const base::FilePath
& storage_partition_path
,
55 ScopedVector
<storage::FileSystemBackend
>* additional_backends
) {}
57 // Append extra switches to |command_line| for |process|. If |process| is not
58 // NULL, then neither is |profile|.
59 virtual void AppendExtraRendererCommandLineSwitches(
60 base::CommandLine
* command_line
,
61 content::RenderProcessHost
* process
,
65 #endif // CHROME_BROWSER_CHROME_CONTENT_BROWSER_CLIENT_PARTS_H_