| Index: chrome/browser/ui/panels/stacked_panel_collection.h
|
| diff --git a/chrome/browser/ui/panels/stacked_panel_collection.h b/chrome/browser/ui/panels/stacked_panel_collection.h
|
| deleted file mode 100644
|
| index adb314f667ac9194c25b0bbf8796c9bc1ddcd8bb..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/ui/panels/stacked_panel_collection.h
|
| +++ /dev/null
|
| @@ -1,180 +0,0 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef CHROME_BROWSER_UI_PANELS_STACKED_PANEL_COLLECTION_H_
|
| -#define CHROME_BROWSER_UI_PANELS_STACKED_PANEL_COLLECTION_H_
|
| -
|
| -#include <list>
|
| -#include <vector>
|
| -
|
| -#include "base/macros.h"
|
| -#include "chrome/browser/ui/panels/native_panel_stack_window.h"
|
| -#include "chrome/browser/ui/panels/panel_collection.h"
|
| -#include "chrome/browser/ui/panels/panel_constants.h"
|
| -#include "ui/gfx/geometry/rect.h"
|
| -
|
| -class PanelManager;
|
| -namespace gfx {
|
| -class Vector2d;
|
| -}
|
| -
|
| -class StackedPanelCollection : public PanelCollection,
|
| - public NativePanelStackWindowDelegate {
|
| - public:
|
| - typedef std::list<Panel*> Panels;
|
| -
|
| - explicit StackedPanelCollection(PanelManager* panel_manager);
|
| - ~StackedPanelCollection() override;
|
| -
|
| - // PanelCollection OVERRIDES:
|
| - void OnDisplayChanged() override;
|
| - void RefreshLayout() override;
|
| - void AddPanel(Panel* panel, PositioningMask positioning_mask) override;
|
| - void RemovePanel(Panel* panel, RemovalReason reason) override;
|
| - void CloseAll() override;
|
| - void ResizePanelWindow(Panel* panel,
|
| - const gfx::Size& preferred_window_size) override;
|
| - panel::Resizability GetPanelResizability(const Panel* panel) const override;
|
| - void OnPanelResizedByMouse(Panel* panel,
|
| - const gfx::Rect& new_bounds) override;
|
| - void OnPanelAttentionStateChanged(Panel* panel) override;
|
| - void OnPanelTitlebarClicked(Panel* panel,
|
| - panel::ClickModifier modifier) override;
|
| - void ActivatePanel(Panel* panel) override;
|
| - void MinimizePanel(Panel* panel) override;
|
| - void RestorePanel(Panel* panel) override;
|
| - void OnMinimizeButtonClicked(Panel* panel,
|
| - panel::ClickModifier modifier) override;
|
| - void OnRestoreButtonClicked(Panel* panel,
|
| - panel::ClickModifier modifier) override;
|
| - bool CanShowMinimizeButton(const Panel* panel) const override;
|
| - bool CanShowRestoreButton(const Panel* panel) const override;
|
| - bool IsPanelMinimized(const Panel* panel) const override;
|
| - bool UsesAlwaysOnTopPanels() const override;
|
| - void SavePanelPlacement(Panel* panel) override;
|
| - void RestorePanelToSavedPlacement() override;
|
| - void DiscardSavedPanelPlacement() override;
|
| - void UpdatePanelOnCollectionChange(Panel* panel) override;
|
| - void OnPanelExpansionStateChanged(Panel* panel) override;
|
| - void OnPanelActiveStateChanged(Panel* panel) override;
|
| - gfx::Rect GetInitialPanelBounds(
|
| - const gfx::Rect& requested_bounds) const override;
|
| -
|
| - Panel* GetPanelAbove(Panel* panel) const;
|
| - Panel* GetPanelBelow(Panel* panel) const;
|
| - bool HasPanel(Panel* panel) const;
|
| -
|
| - void MoveAllDraggingPanelsInstantly(const gfx::Vector2d& delta_origin);
|
| -
|
| - bool IsMinimized() const;
|
| - bool IsAnimatingPanelBounds(Panel* panel) const;
|
| -
|
| - // Returns the maximum available space from the bottom of the stack. The
|
| - // maximum available space is defined as the distance between the bottom
|
| - // of the stack and the bottom of the working area, assuming that all inactive
|
| - // panels are collapsed.
|
| - int GetMaximiumAvailableBottomSpace() const;
|
| -
|
| - int num_panels() const { return panels_.size(); }
|
| - const Panels& panels() const { return panels_; }
|
| - Panel* top_panel() const { return panels_.empty() ? NULL : panels_.front(); }
|
| - Panel* bottom_panel() const {
|
| - return panels_.empty() ? NULL : panels_.back();
|
| - }
|
| - Panel* most_recently_active_panel() const {
|
| - return most_recently_active_panels_.empty() ?
|
| - NULL : most_recently_active_panels_.front();
|
| - }
|
| -
|
| - private:
|
| - struct PanelPlacement {
|
| - Panel* panel;
|
| - gfx::Point position;
|
| - // Used to remember the top panel, if different from |panel|, for use when
|
| - // restoring it. When there're only 2 panels in the stack and the bottom
|
| - // panel is being dragged out of the stack, both panels will be moved to
|
| - // the detached collection. We need to track the top panel in order to
|
| - // put it back to the same stack of the dragging panel.
|
| - Panel* top_panel;
|
| -
|
| - PanelPlacement() : panel(NULL), top_panel(NULL) { }
|
| - };
|
| -
|
| - // Overridden from PanelBoundsBatchUpdateObserver:
|
| - base::string16 GetTitle() const override;
|
| - gfx::Image GetIcon() const override;
|
| - void PanelBoundsBatchUpdateCompleted() override;
|
| -
|
| - // Returns the enclosing bounds that include all panels in the stack.
|
| - gfx::Rect GetEnclosingBounds() const;
|
| -
|
| - // Returns the work area where the stack resides. If the stack spans across
|
| - // multiple displays, return the work area of the display that most closely
|
| - // intersects the stack.
|
| - gfx::Rect GetWorkArea() const;
|
| -
|
| - // Refresh all panel layouts, with top panel poisitoned at |start_position|.
|
| - // All panels should have same width as |common_width|.
|
| - void RefreshLayoutWithTopPanelStartingAt(const gfx::Point& start_position,
|
| - int common_width);
|
| -
|
| - // Tries to collapse panels in the least recently active order in order to get
|
| - // enough bottom space for |needed_space|. Returns the current available space
|
| - // so far if all panels that could be collapsed have been collapsed.
|
| - int MinimizePanelsForSpace(int needed_space);
|
| -
|
| - // Returns the current available space above the top of the stack. The current
|
| - // available space is defined as the distance between the top of the working
|
| - // area and the top of the stack.
|
| - int GetCurrentAvailableTopSpace() const;
|
| -
|
| - // Returns the current available space below the bottom of the stack. The
|
| - // current available space is defined as the distance between the bottom
|
| - // of the stack and the bottom of the working area.
|
| - int GetCurrentAvailableBottomSpace() const;
|
| -
|
| - // Minimizes or restores all panels in the collection.
|
| - void MinimizeAll();
|
| - void RestoreAll(Panel* panel_clicked);
|
| -
|
| - void UpdatePanelCornerStyle(Panel* panel);
|
| -
|
| - NativePanelStackWindow* GetStackWindowForPanel(Panel* panel) const;
|
| -
|
| - PanelManager* panel_manager_;
|
| -
|
| - // Both stack window pointers are weak pointers and self owned. Once a stack
|
| - // window is created, it will only be destructed by calling Close when it is
|
| - // not longer needed as in RemovePanel and CloseAll.
|
| -
|
| - // The main background window that encloses all panels in the stack when
|
| - // stacking is not occuring, or existing panels otherwise.
|
| - // This window provides:
|
| - // 1) the shadow around the the outer area of all panels.
|
| - // 2) the consolidated taskbar icon and the consolidated preview
|
| - // (Windows only)
|
| - NativePanelStackWindow* primary_stack_window_;
|
| -
|
| - // The additional background window that encloses those panels that are
|
| - // being added to the stack when the stacking is occuring. Since those panels
|
| - // have not been fully aligned with existing panels in the stack before the
|
| - // stacking ends, we put those panels in a separate background window that
|
| - // only provides the shadow around the outer area of those panels.
|
| - NativePanelStackWindow* secondary_stack_window_;
|
| -
|
| - Panels panels_; // The top panel is in the front of the list.
|
| -
|
| - // Keeps track of the panels in their active order. The most recently active
|
| - // panel is in the front of the list.
|
| - Panels most_recently_active_panels_;
|
| -
|
| - // Used to save the placement information for a panel.
|
| - PanelPlacement saved_panel_placement_;
|
| -
|
| - bool minimizing_all_; // True while minimizing all panels.
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(StackedPanelCollection);
|
| -};
|
| -
|
| -#endif // CHROME_BROWSER_UI_PANELS_STACKED_PANEL_COLLECTION_H_
|
|
|