Home | History | Annotate | Download | only in content_client
      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