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. 4 5#ifndef UI_VIEWS_CONTENT_CLIENT_VIEWS_CONTENT_MAIN_DELEGATE_H_ 6#define UI_VIEWS_CONTENT_CLIENT_VIEWS_CONTENT_MAIN_DELEGATE_H_ 7 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" 12 13namespace ui { 14 15class ViewsContentBrowserClient; 16class ViewsContentClient; 17 18class ViewsContentMainDelegate : public content::ContentMainDelegate { 19 public: 20 explicit ViewsContentMainDelegate(ViewsContentClient* views_content_client); 21 virtual ~ViewsContentMainDelegate(); 22 23 // content::ContentMainDelegate implementation 24 virtual bool BasicStartupComplete(int* exit_code) OVERRIDE; 25 virtual void PreSandboxStartup() OVERRIDE; 26 virtual content::ContentBrowserClient* CreateContentBrowserClient() OVERRIDE; 27 28 private: 29 scoped_ptr<ViewsContentBrowserClient> browser_client_; 30 content::ShellContentClient content_client_; 31 ViewsContentClient* views_content_client_; 32 33 DISALLOW_COPY_AND_ASSIGN(ViewsContentMainDelegate); 34}; 35 36} // namespace ui 37 38#endif // UI_VIEWS_CONTENT_CLIENT_VIEWS_CONTENT_MAIN_DELEGATE_H_ 39