OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_UI_VIEWS_PANELS_PANEL_STACK_VIEW_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_PANELS_PANEL_STACK_VIEW_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_PANELS_PANEL_STACK_VIEW_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_PANELS_PANEL_STACK_VIEW_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
10 #include "chrome/browser/ui/panels/native_panel_stack.h" | 10 #include "chrome/browser/ui/panels/native_panel_stack_window.h" |
11 #include "ui/views/focus/widget_focus_manager.h" | 11 #include "ui/views/focus/widget_focus_manager.h" |
12 #include "ui/views/widget/widget_delegate.h" | 12 #include "ui/views/widget/widget_delegate.h" |
13 #include "ui/views/widget/widget_observer.h" | 13 #include "ui/views/widget/widget_observer.h" |
14 | 14 |
15 class StackedPanelCollection; | 15 class StackedPanelCollection; |
16 class TaskbarWindowThumbnailerWin; | 16 class TaskbarWindowThumbnailerWin; |
17 | 17 |
18 // A native window that acts as the owner of all panels in the stack, in order | 18 // A native window that acts as the owner of all panels in the stack, in order |
19 // to make all panels appear as a single window on the taskbar or launcher. | 19 // to make all panels appear as a single window on the taskbar or launcher. |
20 class PanelStackView : public NativePanelStack, | 20 class PanelStackView : public NativePanelStackWindow, |
21 public views::WidgetObserver, | 21 public views::WidgetObserver, |
22 public views::WidgetDelegateView, | 22 public views::WidgetDelegateView, |
23 public views::WidgetFocusChangeListener { | 23 public views::WidgetFocusChangeListener { |
24 public: | 24 public: |
25 explicit PanelStackView( | 25 explicit PanelStackView( |
26 scoped_ptr<StackedPanelCollection> stacked_collection); | 26 scoped_ptr<StackedPanelCollection> stacked_collection); |
27 virtual ~PanelStackView(); | 27 virtual ~PanelStackView(); |
28 | 28 |
29 protected: | 29 protected: |
30 // Overridden from NativePanelStack: | 30 // Overridden from NativePanelStackWindow: |
31 virtual void Close() OVERRIDE; | 31 virtual void Close() OVERRIDE; |
32 virtual void OnPanelAddedOrRemoved(Panel* panel) OVERRIDE; | 32 virtual void OnPanelAddedOrRemoved(Panel* panel) OVERRIDE; |
33 virtual void SetBounds(const gfx::Rect& bounds) OVERRIDE; | 33 virtual void SetBounds(const gfx::Rect& bounds) OVERRIDE; |
34 virtual void Minimize() OVERRIDE; | 34 virtual void Minimize() OVERRIDE; |
35 virtual bool IsMinimized() const OVERRIDE; | 35 virtual bool IsMinimized() const OVERRIDE; |
36 virtual void DrawSystemAttention(bool draw_attention) OVERRIDE; | 36 virtual void DrawSystemAttention(bool draw_attention) OVERRIDE; |
37 | 37 |
38 private: | 38 private: |
39 // Overridden from views::WidgetDelegate: | 39 // Overridden from views::WidgetDelegate: |
40 virtual string16 GetWindowTitle() const OVERRIDE; | 40 virtual string16 GetWindowTitle() const OVERRIDE; |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 | 76 |
77 #if defined(OS_WIN) | 77 #if defined(OS_WIN) |
78 // Used to provide custom taskbar thumbnail for Windows 7 and later. | 78 // Used to provide custom taskbar thumbnail for Windows 7 and later. |
79 scoped_ptr<TaskbarWindowThumbnailerWin> thumbnailer_; | 79 scoped_ptr<TaskbarWindowThumbnailerWin> thumbnailer_; |
80 #endif | 80 #endif |
81 | 81 |
82 DISALLOW_COPY_AND_ASSIGN(PanelStackView); | 82 DISALLOW_COPY_AND_ASSIGN(PanelStackView); |
83 }; | 83 }; |
84 | 84 |
85 #endif // CHROME_BROWSER_UI_VIEWS_PANELS_PANEL_STACK_VIEW_H_ | 85 #endif // CHROME_BROWSER_UI_VIEWS_PANELS_PANEL_STACK_VIEW_H_ |
OLD | NEW |