Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Side by Side Diff: chrome/browser/ui/views/frame/browser_non_client_frame_view_ash.h

Issue 2552903003: Remove unreleased web app frame code from ChromeOS (Closed)
Patch Set: Nits Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_NON_CLIENT_FRAME_VIEW_ASH_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_NON_CLIENT_FRAME_VIEW_ASH_H_
6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_NON_CLIENT_FRAME_VIEW_ASH_H_ 6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_NON_CLIENT_FRAME_VIEW_ASH_H_
7 7
8 #include <memory> 8 #include <memory>
9 9
10 #include "ash/common/shell_observer.h" 10 #include "ash/common/shell_observer.h"
11 #include "base/gtest_prod_util.h" 11 #include "base/gtest_prod_util.h"
12 #include "base/macros.h" 12 #include "base/macros.h"
13 #include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h" 13 #include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h"
14 #include "chrome/browser/ui/views/tab_icon_view_model.h" 14 #include "chrome/browser/ui/views/tab_icon_view_model.h"
15 15
16 class TabIconView; 16 class TabIconView;
17 class WebAppLeftHeaderView;
18 17
19 namespace ash { 18 namespace ash {
20 class FrameCaptionButtonContainerView; 19 class FrameCaptionButtonContainerView;
21 class HeaderPainter; 20 class HeaderPainter;
22 } 21 }
23 22
24 class BrowserNonClientFrameViewAsh : public BrowserNonClientFrameView, 23 class BrowserNonClientFrameViewAsh : public BrowserNonClientFrameView,
25 public ash::ShellObserver, 24 public ash::ShellObserver,
26 public TabIconViewModel { 25 public TabIconViewModel {
27 public: 26 public:
28 BrowserNonClientFrameViewAsh(BrowserFrame* frame, BrowserView* browser_view); 27 BrowserNonClientFrameViewAsh(BrowserFrame* frame, BrowserView* browser_view);
29 ~BrowserNonClientFrameViewAsh() override; 28 ~BrowserNonClientFrameViewAsh() override;
30 29
31 void Init(); 30 void Init();
32 31
33 // BrowserNonClientFrameView: 32 // BrowserNonClientFrameView:
34 gfx::Rect GetBoundsForTabStrip(views::View* tabstrip) const override; 33 gfx::Rect GetBoundsForTabStrip(views::View* tabstrip) const override;
35 int GetTopInset(bool restored) const override; 34 int GetTopInset(bool restored) const override;
36 int GetThemeBackgroundXInset() const override; 35 int GetThemeBackgroundXInset() const override;
37 void UpdateThrobber(bool running) override; 36 void UpdateThrobber(bool running) override;
38 void UpdateToolbar() override;
39 views::View* GetLocationIconView() const override;
40 37
41 // views::NonClientFrameView: 38 // views::NonClientFrameView:
42 gfx::Rect GetBoundsForClientView() const override; 39 gfx::Rect GetBoundsForClientView() const override;
43 gfx::Rect GetWindowBoundsForClientBounds( 40 gfx::Rect GetWindowBoundsForClientBounds(
44 const gfx::Rect& client_bounds) const override; 41 const gfx::Rect& client_bounds) const override;
45 int NonClientHitTest(const gfx::Point& point) override; 42 int NonClientHitTest(const gfx::Point& point) override;
46 void GetWindowMask(const gfx::Size& size, gfx::Path* window_mask) override; 43 void GetWindowMask(const gfx::Size& size, gfx::Path* window_mask) override;
47 void ResetWindowControls() override; 44 void ResetWindowControls() override;
48 void UpdateWindowIcon() override; 45 void UpdateWindowIcon() override;
49 void UpdateWindowTitle() override; 46 void UpdateWindowTitle() override;
(...skipping 24 matching lines...) Expand all
74 private: 71 private:
75 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest, WindowHeader); 72 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest, WindowHeader);
76 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest, 73 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest,
77 NonImmersiveFullscreen); 74 NonImmersiveFullscreen);
78 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest, 75 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest,
79 ImmersiveFullscreen); 76 ImmersiveFullscreen);
80 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest, 77 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest,
81 ToggleMaximizeModeRelayout); 78 ToggleMaximizeModeRelayout);
82 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest, 79 FRIEND_TEST_ALL_PREFIXES(BrowserNonClientFrameViewAshTest,
83 AvatarDisplayOnTeleportedWindow); 80 AvatarDisplayOnTeleportedWindow);
84 FRIEND_TEST_ALL_PREFIXES(WebAppLeftHeaderViewTest, BackButton);
85 FRIEND_TEST_ALL_PREFIXES(WebAppLeftHeaderViewTest, LocationIcon);
86 friend class BrowserHeaderPainterAsh; 81 friend class BrowserHeaderPainterAsh;
87 82
88 // Distance between the left edge of the NonClientFrameView and the tab strip. 83 // Distance between the left edge of the NonClientFrameView and the tab strip.
89 int GetTabStripLeftInset() const; 84 int GetTabStripLeftInset() const;
90 85
91 // Distance between the right edge of the NonClientFrameView and the tab 86 // Distance between the right edge of the NonClientFrameView and the tab
92 // strip. 87 // strip.
93 int GetTabStripRightInset() const; 88 int GetTabStripRightInset() const;
94 89
95 // Returns true if we should use a super short header with light bars instead 90 // Returns true if we should use a super short header with light bars instead
96 // of regular tabs. This header is used in immersive fullscreen when the 91 // of regular tabs. This header is used in immersive fullscreen when the
97 // top-of-window views are not revealed. 92 // top-of-window views are not revealed.
98 bool UseImmersiveLightbarHeaderStyle() const; 93 bool UseImmersiveLightbarHeaderStyle() const;
99 94
100 // Returns true if the header should be painted so that it looks the same as 95 // Returns true if the header should be painted so that it looks the same as
101 // the header used for packaged apps. Packaged apps use a different color 96 // the header used for packaged apps. Packaged apps use a different color
102 // scheme than browser windows. 97 // scheme than browser windows.
103 bool UsePackagedAppHeaderStyle() const; 98 bool UsePackagedAppHeaderStyle() const;
104 99
105 // Returns true if the header should be painted with a WebApp header style.
106 // The WebApp header style has a back button and title along with the usual
107 // accoutrements.
108 bool UseWebAppHeaderStyle() const;
109
110 void LayoutProfileIndicatorIcon(); 100 void LayoutProfileIndicatorIcon();
111 101
112 // Returns true if there is anything to paint. Some fullscreen windows do not 102 // Returns true if there is anything to paint. Some fullscreen windows do not
113 // need their frames painted. 103 // need their frames painted.
114 bool ShouldPaint() const; 104 bool ShouldPaint() const;
115 105
116 void PaintToolbarBackground(gfx::Canvas* canvas); 106 void PaintToolbarBackground(gfx::Canvas* canvas);
117 107
118 // View which contains the window controls. 108 // View which contains the window controls.
119 ash::FrameCaptionButtonContainerView* caption_button_container_; 109 ash::FrameCaptionButtonContainerView* caption_button_container_;
120 110
121 // The holder for the buttons on the left side of the header. This is included
122 // for web app style frames, and includes a back button and location icon.
123 WebAppLeftHeaderView* web_app_left_header_view_;
124
125 // For popups, the window icon. 111 // For popups, the window icon.
126 TabIconView* window_icon_; 112 TabIconView* window_icon_;
127 113
128 // Helper class for painting the header. 114 // Helper class for painting the header.
129 std::unique_ptr<ash::HeaderPainter> header_painter_; 115 std::unique_ptr<ash::HeaderPainter> header_painter_;
130 116
131 DISALLOW_COPY_AND_ASSIGN(BrowserNonClientFrameViewAsh); 117 DISALLOW_COPY_AND_ASSIGN(BrowserNonClientFrameViewAsh);
132 }; 118 };
133 119
134 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_NON_CLIENT_FRAME_VIEW_ASH_H_ 120 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_NON_CLIENT_FRAME_VIEW_ASH_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698