| // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_BROWSER_CHROME_BROWSER_MAIN_EXTRA_PARTS_H_ |
| #define CHROME_BROWSER_CHROME_BROWSER_MAIN_EXTRA_PARTS_H_ |
| |
| // Interface class for Parts owned by ChromeBrowserMainParts. |
| // The default implementation for all methods is empty. |
| |
| // Most of these map to content::BrowserMainParts methods. This interface is |
| // separate to allow stages to be further subdivided for Chrome specific |
| // initialization stages (e.g. browser process init, profile init). |
| |
| // While ChromeBrowserMainParts are platform-specific, |
| // ChromeBrowserMainExtraParts are used to do further initialization for various |
| // Chrome toolkits (e.g., GTK, VIEWS, ASH, AURA, etc.; see |
| // ChromeContentBrowserClient::CreateBrowserMainParts()). |
| |
| class ChromeBrowserMainExtraParts { |
| public: |
| virtual ~ChromeBrowserMainExtraParts() {} |
| |
| // EarlyInitialization methods. |
| virtual void PreEarlyInitialization() {} |
| virtual void PostEarlyInitialization() {} |
| |
| // ToolkitInitialized methods. |
| virtual void ToolkitInitialized() {} |
| |
| // MainMessageLoopStart methods. |
| virtual void PreMainMessageLoopStart() {} |
| virtual void PostMainMessageLoopStart() {} |
| |
| // MainMessageLoopRun methods. |
| virtual void PreCreateThreads() {} |
| virtual void PostCreateThreads() {} |
| virtual void PreProfileInit() {} |
| virtual void PostProfileInit() {} |
| virtual void PreBrowserStart() {} |
| virtual void PostBrowserStart() {} |
| virtual void PreMainMessageLoopRun() {} |
| virtual void PostMainMessageLoopRun() {} |
| }; |
| |
| #endif // CHROME_BROWSER_CHROME_BROWSER_MAIN_EXTRA_PARTS_H_ |