shell_browser_main_delegate.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  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. #ifndef EXTENSIONS_SHELL_BROWSER_SHELL_BROWSER_MAIN_DELEGATE_H_
  5. #define EXTENSIONS_SHELL_BROWSER_SHELL_BROWSER_MAIN_DELEGATE_H_
  6. namespace content {
  7. class BrowserContext;
  8. }
  9. namespace extensions {
  10. class DesktopController;
  11. class ShellBrowserMainDelegate {
  12. public:
  13. virtual ~ShellBrowserMainDelegate() {}
  14. // Called to start an application after all initialization processes that are
  15. // necessary to run apps are completed.
  16. virtual void Start(content::BrowserContext* context) = 0;
  17. // Called after the main message looop has stopped, but before
  18. // other services such as BrowserContext / extension system are shut down.
  19. virtual void Shutdown() = 0;
  20. // Creates the ShellDesktopControllerAura instance to initialize the root
  21. // window and window manager. Subclass may return its subclass to customize
  22. // the window manager.
  23. virtual DesktopController* CreateDesktopController(
  24. content::BrowserContext* context) = 0;
  25. };
  26. } // namespace extensions
  27. #endif // EXTENSIONS_SHELL_BROWSER_SHELL_BROWSER_MAIN_DELEGATE_H_