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

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

Issue 1624773002: Clean up frame code a bit: (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Resync, fix compile Created 4 years, 11 months 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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 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_FRAME_OPAQUE_BROWSER_FRAME_VIEW_LAYOUT_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_LAYOUT_H_
6 #define CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_LAYOUT_H_ 6 #define CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_LAYOUT_H_
7 7
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "chrome/browser/ui/views/frame/opaque_browser_frame_view.h" 9 #include "chrome/browser/ui/views/frame/opaque_browser_frame_view.h"
10 #include "ui/views/layout/layout_manager.h" 10 #include "ui/views/layout/layout_manager.h"
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 bool IsTitleBarCondensed() const; 100 bool IsTitleBarCondensed() const;
101 101
102 private: 102 private:
103 // Whether a specific button should be inserted on the leading or trailing 103 // Whether a specific button should be inserted on the leading or trailing
104 // side. 104 // side.
105 enum ButtonAlignment { 105 enum ButtonAlignment {
106 ALIGN_LEADING, 106 ALIGN_LEADING,
107 ALIGN_TRAILING 107 ALIGN_TRAILING
108 }; 108 };
109 109
110 // Determines whether the avatar should be shown on the right side of the tab 110 // Determines whether the incognito icon should be shown on the right side of
111 // strip (instead of the usual left). 111 // the tab strip (instead of the usual left).
112 bool ShouldAvatarBeOnRight() const; 112 bool ShouldIncognitoIconBeOnRight() const;
113 113
114 // Determines the amount of spacing between the New Tab button and the element 114 // Determines the amount of spacing between the New Tab button and the element
115 // to its immediate right. 115 // to its immediate right.
116 int NewTabCaptionSpacing() const; 116 int NewTabCaptionSpacing() const;
117 117
118 // Layout various sub-components of this view. 118 // Layout various sub-components of this view.
119 void LayoutWindowControls(views::View* host); 119 void LayoutWindowControls(views::View* host);
120 void LayoutTitleBar(views::View* host); 120 void LayoutTitleBar(views::View* host);
121 void LayoutAvatar(views::View* host); 121 void LayoutIncognitoIcon(views::View* host);
122 void LayoutNewStyleAvatar(views::View* host); 122 void LayoutNewStyleAvatar(views::View* host);
123 123
124 void ConfigureButton(views::View* host, 124 void ConfigureButton(views::View* host,
125 views::FrameButton button_id, 125 views::FrameButton button_id,
126 ButtonAlignment align, 126 ButtonAlignment align,
127 int caption_y); 127 int caption_y);
128 128
129 // Sets the visibility of all buttons associated with |button_id| to false. 129 // Sets the visibility of all buttons associated with |button_id| to false.
130 void HideButton(views::FrameButton button_id); 130 void HideButton(views::FrameButton button_id);
131 131
132 // Adds a window caption button to either the leading or trailing side. 132 // Adds a window caption button to either the leading or trailing side.
133 void SetBoundsForButton(views::View* host, 133 void SetBoundsForButton(views::View* host,
134 views::ImageButton* button, 134 views::ImageButton* button,
135 ButtonAlignment align, 135 ButtonAlignment align,
136 int caption_y); 136 int caption_y);
137 137
138 // Internal implementation of ViewAdded() and ViewRemoved(). 138 // Internal implementation of ViewAdded() and ViewRemoved().
139 void SetView(int id, views::View* view); 139 void SetView(int id, views::View* view);
140 140
141 // Overriden from views::LayoutManager: 141 // Overriden from views::LayoutManager:
142 void Layout(views::View* host) override; 142 void Layout(views::View* host) override;
143 gfx::Size GetPreferredSize(const views::View* host) const override; 143 gfx::Size GetPreferredSize(const views::View* host) const override;
144 void ViewAdded(views::View* host, views::View* view) override; 144 void ViewAdded(views::View* host, views::View* view) override;
145 void ViewRemoved(views::View* host, views::View* view) override; 145 void ViewRemoved(views::View* host, views::View* view) override;
146 146
147 OpaqueBrowserFrameViewLayoutDelegate* delegate_; 147 OpaqueBrowserFrameViewLayoutDelegate* delegate_;
148 148
149 // The layout rect of the avatar icon, if visible.
150 gfx::Rect avatar_bounds_;
151
152 // The bounds of the ClientView. 149 // The bounds of the ClientView.
153 gfx::Rect client_view_bounds_; 150 gfx::Rect client_view_bounds_;
154 151
155 // The layout of the window icon, if visible. 152 // The layout of the window icon, if visible.
156 gfx::Rect window_icon_bounds_; 153 gfx::Rect window_icon_bounds_;
157 154
158 // How far from the leading/trailing edge of the view the next window control 155 // How far from the leading/trailing edge of the view the next window control
159 // should be placed. 156 // should be placed.
160 int leading_button_start_; 157 int leading_button_start_;
161 int trailing_button_start_; 158 int trailing_button_start_;
(...skipping 26 matching lines...) Expand all
188 AvatarMenuButton* avatar_button_; 185 AvatarMenuButton* avatar_button_;
189 views::View* new_avatar_button_; 186 views::View* new_avatar_button_;
190 187
191 std::vector<views::FrameButton> leading_buttons_; 188 std::vector<views::FrameButton> leading_buttons_;
192 std::vector<views::FrameButton> trailing_buttons_; 189 std::vector<views::FrameButton> trailing_buttons_;
193 190
194 DISALLOW_COPY_AND_ASSIGN(OpaqueBrowserFrameViewLayout); 191 DISALLOW_COPY_AND_ASSIGN(OpaqueBrowserFrameViewLayout);
195 }; 192 };
196 193
197 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_LAYOUT_H_ 194 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_LAYOUT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698