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_MAIN_DELEGATE_H_ 6 #define ASH_SHELL_CONTENT_CLIENT_SHELL_MAIN_DELEGATE_H_ 7 8 #include "base/compiler_specific.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 13 namespace content { 14 class ShellContentRendererClient; 15 class ShellContentPluginClient; 16 class ShellContentUtilityClient; 17 } 18 19 namespace ash { 20 namespace shell { 21 22 class ShellContentBrowserClient; 23 24 class ShellMainDelegate : public content::ContentMainDelegate { 25 public: 26 ShellMainDelegate(); 27 virtual ~ShellMainDelegate(); 28 29 virtual bool BasicStartupComplete(int* exit_code) OVERRIDE; 30 virtual void PreSandboxStartup() OVERRIDE; 31 virtual content::ContentBrowserClient* CreateContentBrowserClient() OVERRIDE; 32 33 private: 34 void InitializeResourceBundle(); 35 36 scoped_ptr<ShellContentBrowserClient> browser_client_; 37 content::ShellContentClient content_client_; 38 39 DISALLOW_COPY_AND_ASSIGN(ShellMainDelegate); 40 }; 41 42 } // namespace shell 43 } // namespace ash 44 45 #endif // ASH_SHELL_CONTENT_CLIENT_SHELL_MAIN_DELEGATE_H_ 46