| Index: ash/wm/overview/window_selector_item.h
|
| diff --git a/ash/wm/overview/window_selector_item.h b/ash/wm/overview/window_selector_item.h
|
| index 6e77d73f8beff17812b244910bc405040c72af2f..8116b176b2b749254a5484679ad2c6e81848ef21 100644
|
| --- a/ash/wm/overview/window_selector_item.h
|
| +++ b/ash/wm/overview/window_selector_item.h
|
| @@ -29,6 +29,7 @@ class ImageButton;
|
| namespace ash {
|
|
|
| class WindowSelector;
|
| +class WindowGrid;
|
|
|
| // This class represents an item in overview mode.
|
| class ASH_EXPORT WindowSelectorItem : public views::ButtonListener,
|
| @@ -47,7 +48,9 @@ class ASH_EXPORT WindowSelectorItem : public views::ButtonListener,
|
| DISALLOW_COPY_AND_ASSIGN(OverviewCloseButton);
|
| };
|
|
|
| - WindowSelectorItem(aura::Window* window, WindowSelector* window_selector);
|
| + WindowSelectorItem(aura::Window* window,
|
| + WindowSelector* window_selector,
|
| + WindowGrid* window_grid);
|
| ~WindowSelectorItem() override;
|
|
|
| aura::Window* GetWindow();
|
| @@ -120,6 +123,11 @@ class ASH_EXPORT WindowSelectorItem : public views::ButtonListener,
|
| void OnWindowDestroying(aura::Window* window) override;
|
| void OnWindowTitleChanged(aura::Window* window) override;
|
|
|
| + // Handle the mouse/gesture event and facilitate dragging the item.
|
| + void HandlePressEvent(const gfx::Point& location_in_screen);
|
| + void HandleReleaseEvent(const gfx::Point& location_in_screen);
|
| + void HandleDragEvent(const gfx::Point& location_in_screen);
|
| +
|
| private:
|
| class CaptionContainerView;
|
| class RoundedContainerView;
|
| @@ -166,6 +174,16 @@ class ASH_EXPORT WindowSelectorItem : public views::ButtonListener,
|
|
|
| aura::Window* GetOverviewWindowForMinimizedStateForTest();
|
|
|
| + // Called before dragging. Scales up the window a little bit to indicate its
|
| + // selection and stacks the window at the top of the Z order in order to keep
|
| + // it visible while dragging around.
|
| + void StartDrag();
|
| +
|
| + // Called after dragging. Inserts the window back to its original stacking
|
| + // order so that the order of windows is the same as when they entering
|
| + // overview.
|
| + void EndDrag();
|
| +
|
| // True if the item is being shown in the overview, false if it's being
|
| // filtered.
|
| bool dimmed_;
|
| @@ -215,6 +233,10 @@ class ASH_EXPORT WindowSelectorItem : public views::ButtonListener,
|
| // which is the only textured layer used by the |item_widget_|.
|
| RoundedContainerView* background_view_;
|
|
|
| + // Pointer to the WindowGrid that contains |this|. Guaranteed to be non-null
|
| + // for the lifetime of |this|.
|
| + WindowGrid* window_grid_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(WindowSelectorItem);
|
| };
|
|
|
|
|