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 10class Browser; 11 12namespace extensions { 13class Extension; 14} 15 16class 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