Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / ash / shell / content_client / shell_content_browser_client.h
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.
4
5 #ifndef ASH_SHELL_CONTENT_CLIENT_SHELL_CONTENT_BROWSER_CLIENT_H_
6 #define ASH_SHELL_CONTENT_CLIENT_SHELL_CONTENT_BROWSER_CLIENT_H_
7
8 #include <string>
9
10 #include "base/compiler_specific.h"
11 #include "content/public/browser/content_browser_client.h"
12
13 namespace content {
14 class ShellBrowserContext;
15 class ShellBrowserMainParts;
16 class ShellResourceDispatcherHostDelegate;
17 }
18
19 namespace ash {
20 namespace shell {
21
22 class ShellBrowserMainParts;
23
24 class ShellContentBrowserClient : public content::ContentBrowserClient {
25  public:
26   ShellContentBrowserClient();
27   ~ShellContentBrowserClient() override;
28
29   // Overridden from content::ContentBrowserClient:
30   content::BrowserMainParts* CreateBrowserMainParts(
31       const content::MainFunctionParams& parameters) override;
32   net::URLRequestContextGetter* CreateRequestContext(
33       content::BrowserContext* browser_context,
34       content::ProtocolHandlerMap* protocol_handlers,
35       content::URLRequestInterceptorScopedVector request_interceptors) override;
36
37   content::ShellBrowserContext* browser_context();
38
39  private:
40   ShellBrowserMainParts* shell_browser_main_parts_;
41
42   DISALLOW_COPY_AND_ASSIGN(ShellContentBrowserClient);
43 };
44
45 }  // namespace shell
46 }  // namespace ash
47
48 #endif  // ASH_SHELL_CONTENT_CLIENT_SHELL_CONTENT_BROWSER_CLIENT_H_