OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 ASH_WM_PANELS_PANEL_FRAME_VIEW_H_ | 5 #ifndef ASH_WM_PANELS_PANEL_FRAME_VIEW_H_ |
6 #define ASH_WM_PANELS_PANEL_FRAME_VIEW_H_ | 6 #define ASH_WM_PANELS_PANEL_FRAME_VIEW_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "ash/ash_export.h" | 10 #include "ash/ash_export.h" |
11 #include "base/macros.h" | 11 #include "base/macros.h" |
12 #include "ui/views/window/non_client_view.h" | 12 #include "ui/views/window/non_client_view.h" |
13 | 13 |
14 namespace views { | 14 namespace views { |
15 class ImageView; | 15 class ImageView; |
16 } | 16 } |
17 | 17 |
18 namespace ash { | 18 namespace ash { |
19 class DefaultHeaderPainter; | 19 class DefaultHeaderPainter; |
20 class FrameCaptionButtonContainerView; | 20 class FrameCaptionButtonContainerView; |
21 class FrameBorderHitTestController; | 21 class FrameBorderHitTestController; |
22 | 22 |
23 class ASH_EXPORT PanelFrameView : public views::NonClientFrameView { | 23 class ASH_EXPORT PanelFrameView : public views::NonClientFrameView { |
24 public: | 24 public: |
25 // Internal class name. | 25 // Internal class name. |
26 static const char kViewClassName[]; | 26 static const char kViewClassName[]; |
27 | 27 |
28 enum FrameType { | 28 enum FrameType { FRAME_NONE, FRAME_ASH }; |
29 FRAME_NONE, | |
30 FRAME_ASH | |
31 }; | |
32 | 29 |
33 PanelFrameView(views::Widget* frame, FrameType frame_type); | 30 PanelFrameView(views::Widget* frame, FrameType frame_type); |
34 ~PanelFrameView() override; | 31 ~PanelFrameView() override; |
35 | 32 |
36 // Sets the active and inactive frame colors. Note the inactive frame color | 33 // Sets the active and inactive frame colors. Note the inactive frame color |
37 // will have some transparency added when the frame is drawn. | 34 // will have some transparency added when the frame is drawn. |
38 void SetFrameColors(SkColor active_frame_color, SkColor inactive_frame_color); | 35 void SetFrameColors(SkColor active_frame_color, SkColor inactive_frame_color); |
39 | 36 |
40 // Overridden from views::View: | 37 // Overridden from views::View: |
41 const char* GetClassName() const override; | 38 const char* GetClassName() const override; |
(...skipping 29 matching lines...) Expand all Loading... |
71 | 68 |
72 // Helper class for painting the header. | 69 // Helper class for painting the header. |
73 std::unique_ptr<DefaultHeaderPainter> header_painter_; | 70 std::unique_ptr<DefaultHeaderPainter> header_painter_; |
74 | 71 |
75 // Updates the hittest bounds overrides based on the window state type. | 72 // Updates the hittest bounds overrides based on the window state type. |
76 std::unique_ptr<FrameBorderHitTestController> | 73 std::unique_ptr<FrameBorderHitTestController> |
77 frame_border_hit_test_controller_; | 74 frame_border_hit_test_controller_; |
78 | 75 |
79 DISALLOW_COPY_AND_ASSIGN(PanelFrameView); | 76 DISALLOW_COPY_AND_ASSIGN(PanelFrameView); |
80 }; | 77 }; |
81 | |
82 } | 78 } |
83 | 79 |
84 #endif // ASH_WM_PANELS_PANEL_FRAME_VIEW_H_ | 80 #endif // ASH_WM_PANELS_PANEL_FRAME_VIEW_H_ |
OLD | NEW |