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
3 // found in the LICENSE file.
5 #ifndef CONTENT_SHELL_SHELL_CONTENT_BROWSER_CLIENT_H_
6 #define CONTENT_SHELL_SHELL_CONTENT_BROWSER_CLIENT_H_
10 #include "base/compiler_specific.h"
11 #include "base/memory/scoped_ptr.h"
12 #include "content/public/browser/content_browser_client.h"
16 class ShellBrowserContext
;
17 class ShellBrowserMainParts
;
18 class ShellResourceDispatcherHostDelegate
;
20 class ShellContentBrowserClient
: public ContentBrowserClient
{
22 ShellContentBrowserClient();
23 virtual ~ShellContentBrowserClient();
25 // ContentBrowserClient overrides.
26 virtual BrowserMainParts
* CreateBrowserMainParts(
27 const MainFunctionParams
& parameters
) OVERRIDE
;
28 virtual void RenderViewHostCreated(
29 RenderViewHost
* render_view_host
) OVERRIDE
;
30 virtual void AppendExtraCommandLineSwitches(CommandLine
* command_line
,
31 int child_process_id
) OVERRIDE
;
32 virtual void ResourceDispatcherHostCreated() OVERRIDE
;
33 virtual AccessTokenStore
* CreateAccessTokenStore() OVERRIDE
;
34 virtual std::string
GetDefaultDownloadName() OVERRIDE
;
35 virtual WebContentsViewDelegate
* GetWebContentsViewDelegate(
36 WebContents
* web_contents
) OVERRIDE
;
38 #if defined(OS_ANDROID)
39 virtual void GetAdditionalMappedFilesForChildProcess(
40 const CommandLine
& command_line
,
41 base::GlobalDescriptors::Mapping
* mappings
) OVERRIDE
;
44 ShellBrowserContext
* browser_context();
45 ShellBrowserContext
* off_the_record_browser_context();
46 ShellResourceDispatcherHostDelegate
* resource_dispatcher_host_delegate() {
47 return resource_dispatcher_host_delegate_
.get();
49 ShellBrowserMainParts
* shell_browser_main_parts() {
50 return shell_browser_main_parts_
;
54 scoped_ptr
<ShellResourceDispatcherHostDelegate
>
55 resource_dispatcher_host_delegate_
;
57 ShellBrowserMainParts
* shell_browser_main_parts_
;
60 } // namespace content
62 #endif // CONTENT_SHELL_SHELL_CONTENT_BROWSER_CLIENT_H_