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 CHROME_BROWSER_EXTENSIONS_BROWSER_EXTENSION_WINDOW_CONTROLLER_H_ 6 #define CHROME_BROWSER_EXTENSIONS_BROWSER_EXTENSION_WINDOW_CONTROLLER_H_ 7 8 #include "chrome/browser/extensions/window_controller.h" 9 10 class Browser; 11 12 namespace extensions { 13 class Extension; 14 } 15 16 class BrowserExtensionWindowController : public extensions::WindowController { 17 public: 18 explicit BrowserExtensionWindowController(Browser* browser); 19 virtual ~BrowserExtensionWindowController(); 20 21 // extensions::WindowController implementation. 22 virtual int GetWindowId() const OVERRIDE; 23 virtual std::string GetWindowTypeText() const OVERRIDE; 24 virtual base::DictionaryValue* CreateWindowValue() const OVERRIDE; 25 virtual base::DictionaryValue* CreateWindowValueWithTabs( 26 const extensions::Extension* extension) const OVERRIDE; 27 virtual base::DictionaryValue* CreateTabValue( 28 const extensions::Extension* extension, int tab_index) const OVERRIDE; 29 virtual bool CanClose(Reason* reason) const OVERRIDE; 30 virtual void SetFullscreenMode(bool is_fullscreen, 31 const GURL& extension_url) const OVERRIDE; 32 virtual Browser* GetBrowser() const OVERRIDE; 33 virtual bool IsVisibleToExtension( 34 const extensions::Extension* extension) const OVERRIDE; 35 36 private: 37 Browser* browser_; 38 39 DISALLOW_COPY_AND_ASSIGN(BrowserExtensionWindowController); 40 }; 41 42 #endif // CHROME_BROWSER_EXTENSIONS_BROWSER_EXTENSION_WINDOW_CONTROLLER_H_ 43