Roll tools/swarming_client/ to 2558daf70a0eb67cc15eb8f7b7f885347523e77c.
[chromium-blink-merge.git] / ui / views_content_client / views_content_main_delegate.h
blob51839f76e4d48b44b418d59ccff7bbc0ba41f47b
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 UI_VIEWS_CONTENT_CLIENT_VIEWS_CONTENT_MAIN_DELEGATE_H_
6 #define UI_VIEWS_CONTENT_CLIENT_VIEWS_CONTENT_MAIN_DELEGATE_H_
8 #include "base/macros.h"
9 #include "base/memory/scoped_ptr.h"
10 #include "content/public/app/content_main_delegate.h"
11 #include "content/shell/common/shell_content_client.h"
13 namespace ui {
15 class ViewsContentBrowserClient;
16 class ViewsContentClient;
18 class ViewsContentMainDelegate : public content::ContentMainDelegate {
19 public:
20 explicit ViewsContentMainDelegate(ViewsContentClient* views_content_client);
21 ~ViewsContentMainDelegate() override;
23 // content::ContentMainDelegate implementation
24 bool BasicStartupComplete(int* exit_code) override;
25 void PreSandboxStartup() override;
26 content::ContentBrowserClient* CreateContentBrowserClient() override;
28 private:
29 scoped_ptr<ViewsContentBrowserClient> browser_client_;
30 content::ShellContentClient content_client_;
31 ViewsContentClient* views_content_client_;
33 DISALLOW_COPY_AND_ASSIGN(ViewsContentMainDelegate);
36 } // namespace ui
38 #endif // UI_VIEWS_CONTENT_CLIENT_VIEWS_CONTENT_MAIN_DELEGATE_H_