• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 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 CHROME_BROWSER_CHROME_BROWSER_MAIN_EXTRA_PARTS_H_
6 #define CHROME_BROWSER_CHROME_BROWSER_MAIN_EXTRA_PARTS_H_
7 
8 // Interface class for Parts owned by ChromeBrowserMainParts.
9 // The default implementation for all methods is empty.
10 
11 // Most of these map to content::BrowserMainParts methods. This interface is
12 // separate to allow stages to be further subdivided for Chrome specific
13 // initialization stages (e.g. browser process init, profile init).
14 
15 // While ChromeBrowserMainParts are platform-specific,
16 // ChromeBrowserMainExtraParts are used to do further initialization for various
17 // Chrome toolkits (e.g., GTK, VIEWS, ASH, AURA, etc.; see
18 // ChromeContentBrowserClient::CreateBrowserMainParts()).
19 
20 class ChromeBrowserMainExtraParts {
21  public:
~ChromeBrowserMainExtraParts()22   virtual ~ChromeBrowserMainExtraParts() {}
23 
24   // EarlyInitialization methods.
PreEarlyInitialization()25   virtual void PreEarlyInitialization() {}
PostEarlyInitialization()26   virtual void PostEarlyInitialization() {}
27 
28   // ToolkitInitialized methods.
ToolkitInitialized()29   virtual void ToolkitInitialized() {}
30 
31   // MainMessageLoopStart methods.
PreMainMessageLoopStart()32   virtual void PreMainMessageLoopStart() {}
PostMainMessageLoopStart()33   virtual void PostMainMessageLoopStart() {}
34 
35   // MainMessageLoopRun methods.
PreCreateThreads()36   virtual void PreCreateThreads() {}
PreProfileInit()37   virtual void PreProfileInit() {}
PostProfileInit()38   virtual void PostProfileInit() {}
PreBrowserStart()39   virtual void PreBrowserStart() {}
PostBrowserStart()40   virtual void PostBrowserStart() {}
PreMainMessageLoopRun()41   virtual void PreMainMessageLoopRun() {}
PostMainMessageLoopRun()42   virtual void PostMainMessageLoopRun() {}
43 };
44 
45 #endif  // CHROME_BROWSER_CHROME_BROWSER_MAIN_EXTRA_PARTS_H_
46