Updating trunk VERSION from 2139.0 to 2140.0
[chromium-blink-merge.git] / extensions / shell / browser / shell_app_window_controller.h
blob65d9d8e990e65291c022350189918479d05c5517
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.
5 #ifndef EXTENSIONS_SHELL_BROWSER_SHELL_APP_WINDOW_CONTROLLER_H_
6 #define EXTENSIONS_SHELL_BROWSER_SHELL_APP_WINDOW_CONTROLLER_H_
8 namespace content {
9 class BrowserContext;
12 namespace extensions {
14 class Extension;
15 class ShellAppWindow;
17 class ShellAppWindowController {
18 public:
19 virtual ~ShellAppWindowController() {}
21 // Creates a new app window and adds it to the desktop. This class should
22 // maintain the ownership of the window.
23 virtual ShellAppWindow* CreateAppWindow(content::BrowserContext* context,
24 const Extension* extension) = 0;
26 // Closes and destroys the app windows. Must be called before the extension
27 // is destroyed.
28 virtual void CloseAppWindows() = 0;
31 } // namespace extensions
33 #endif // EXTENSIONS_SHELL_BROWSER_SHELL_APP_WINDOW_CONTROLLER_H_