OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_APPS_GLASS_APP_WINDOW_FRAME_VIEW_WIN_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_APPS_GLASS_APP_WINDOW_FRAME_VIEW_WIN_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_APPS_GLASS_APP_WINDOW_FRAME_VIEW_WIN_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_APPS_GLASS_APP_WINDOW_FRAME_VIEW_WIN_H_ |
7 | 7 |
8 #include "ui/gfx/geometry/insets.h" | 8 #include "ui/gfx/geometry/insets.h" |
9 #include "ui/views/window/non_client_view.h" | 9 #include "ui/views/window/non_client_view.h" |
10 | 10 |
11 namespace extensions { | 11 namespace extensions { |
12 class NativeAppWindow; | 12 class NativeAppWindow; |
13 } | 13 } |
14 | 14 |
15 // A glass style app window frame view. | 15 // A glass style app window frame view. |
16 class GlassAppWindowFrameViewWin : public views::NonClientFrameView { | 16 class GlassAppWindowFrameViewWin : public views::NonClientFrameView { |
17 public: | 17 public: |
18 static const char kViewClassName[]; | 18 static const char kViewClassName[]; |
19 | 19 |
20 explicit GlassAppWindowFrameViewWin(extensions::NativeAppWindow* window, | 20 explicit GlassAppWindowFrameViewWin(extensions::NativeAppWindow* window, |
21 views::Widget* widget); | 21 views::Widget* widget); |
22 virtual ~GlassAppWindowFrameViewWin(); | 22 ~GlassAppWindowFrameViewWin() override; |
23 | 23 |
24 gfx::Insets GetGlassInsets() const; | 24 gfx::Insets GetGlassInsets() const; |
25 | 25 |
26 private: | 26 private: |
27 // views::NonClientFrameView implementation. | 27 // views::NonClientFrameView implementation. |
28 virtual gfx::Rect GetBoundsForClientView() const override; | 28 gfx::Rect GetBoundsForClientView() const override; |
29 virtual gfx::Rect GetWindowBoundsForClientBounds( | 29 gfx::Rect GetWindowBoundsForClientBounds( |
30 const gfx::Rect& client_bounds) const override; | 30 const gfx::Rect& client_bounds) const override; |
31 virtual int NonClientHitTest(const gfx::Point& point) override; | 31 int NonClientHitTest(const gfx::Point& point) override; |
32 virtual void GetWindowMask(const gfx::Size& size, | 32 void GetWindowMask(const gfx::Size& size, gfx::Path* window_mask) override; |
33 gfx::Path* window_mask) override; | 33 void ResetWindowControls() override {} |
34 virtual void ResetWindowControls() override {} | 34 void UpdateWindowIcon() override {} |
35 virtual void UpdateWindowIcon() override {} | 35 void UpdateWindowTitle() override {} |
36 virtual void UpdateWindowTitle() override {} | 36 void SizeConstraintsChanged() override {} |
37 virtual void SizeConstraintsChanged() override {} | |
38 | 37 |
39 // views::View implementation. | 38 // views::View implementation. |
40 virtual gfx::Size GetPreferredSize() const override; | 39 gfx::Size GetPreferredSize() const override; |
41 virtual const char* GetClassName() const override; | 40 const char* GetClassName() const override; |
42 virtual gfx::Size GetMinimumSize() const override; | 41 gfx::Size GetMinimumSize() const override; |
43 virtual gfx::Size GetMaximumSize() const override; | 42 gfx::Size GetMaximumSize() const override; |
44 | 43 |
45 extensions::NativeAppWindow* window_; | 44 extensions::NativeAppWindow* window_; |
46 views::Widget* widget_; | 45 views::Widget* widget_; |
47 | 46 |
48 DISALLOW_COPY_AND_ASSIGN(GlassAppWindowFrameViewWin); | 47 DISALLOW_COPY_AND_ASSIGN(GlassAppWindowFrameViewWin); |
49 }; | 48 }; |
50 | 49 |
51 #endif // CHROME_BROWSER_UI_VIEWS_APPS_GLASS_APP_WINDOW_FRAME_VIEW_WIN_H_ | 50 #endif // CHROME_BROWSER_UI_VIEWS_APPS_GLASS_APP_WINDOW_FRAME_VIEW_WIN_H_ |
OLD | NEW |