| Index: chrome/browser/ui/panels/panel_manager.h
|
| diff --git a/chrome/browser/ui/panels/panel_manager.h b/chrome/browser/ui/panels/panel_manager.h
|
| index 679236c123bb50e3b0c0ec06d4cca8811b25e591..b75187b3188fa0c7e278fb83379b1c4b1df41d2c 100644
|
| --- a/chrome/browser/ui/panels/panel_manager.h
|
| +++ b/chrome/browser/ui/panels/panel_manager.h
|
| @@ -5,6 +5,7 @@
|
| #ifndef CHROME_BROWSER_UI_PANELS_PANEL_MANAGER_H_
|
| #define CHROME_BROWSER_UI_PANELS_PANEL_MANAGER_H_
|
|
|
| +#include <list>
|
| #include <vector>
|
| #include "base/basictypes.h"
|
| #include "base/lazy_instance.h"
|
| @@ -21,11 +22,14 @@ class GURL;
|
| class PanelDragController;
|
| class PanelResizeController;
|
| class PanelMouseWatcher;
|
| +class StackedPanelCollection;
|
|
|
| // This class manages a set of panels.
|
| class PanelManager : public DisplaySettingsProvider::DisplayAreaObserver,
|
| public DisplaySettingsProvider::FullScreenObserver {
|
| public:
|
| + typedef std::list<StackedPanelCollection*> Stacks;
|
| +
|
| enum CreateMode {
|
| CREATE_AS_DOCKED, // Creates a docked panel. The default.
|
| CREATE_AS_DETACHED // Creates a detached panel.
|
| @@ -63,6 +67,12 @@ class PanelManager : public DisplaySettingsProvider::DisplayAreaObserver,
|
| // Asynchronous confirmation of panel having been closed.
|
| void OnPanelClosed(Panel* panel);
|
|
|
| + // Creates a StackedPanelCollection and returns it.
|
| + StackedPanelCollection* CreateStack();
|
| +
|
| + // Deletes |stack|. The stack must be empty at the time of deletion.
|
| + void RemoveStack(StackedPanelCollection* stack);
|
| +
|
| // Returns the maximum size that panel can be auto-resized or resized by the
|
| // API.
|
| int GetMaxPanelWidth() const;
|
| @@ -96,9 +106,14 @@ class PanelManager : public DisplaySettingsProvider::DisplayAreaObserver,
|
| // Brings up or down the titlebars for all minimized panels.
|
| void BringUpOrDownTitlebars(bool bring_up);
|
|
|
| + std::vector<Panel*> GetDetachedAndStackedPanels() const;
|
| +
|
| int num_panels() const;
|
| std::vector<Panel*> panels() const;
|
|
|
| + const Stacks& stacks() const { return stacks_; }
|
| + int num_stacks() const { return stacks_.size(); }
|
| +
|
| PanelDragController* drag_controller() const {
|
| return drag_controller_.get();
|
| }
|
| @@ -183,6 +198,7 @@ class PanelManager : public DisplaySettingsProvider::DisplayAreaObserver,
|
|
|
| scoped_ptr<DetachedPanelCollection> detached_collection_;
|
| scoped_ptr<DockedPanelCollection> docked_collection_;
|
| + Stacks stacks_;
|
|
|
| scoped_ptr<PanelDragController> drag_controller_;
|
| scoped_ptr<PanelResizeController> resize_controller_;
|
|
|