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

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

Issue 63173016: DevTools: place DevTools WebContents underneath inspected WebContents. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 7 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_VIEW_LAYOUT_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_H_
6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_H_ 6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/gtest_prod_util.h" 10 #include "base/gtest_prod_util.h"
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "ui/gfx/rect.h" 12 #include "ui/gfx/rect.h"
13 #include "ui/views/layout/layout_manager.h" 13 #include "ui/views/layout/layout_manager.h"
14 14
15 class BookmarkBarView; 15 class BookmarkBarView;
16 class Browser; 16 class Browser;
17 class BrowserViewLayoutDelegate; 17 class BrowserViewLayoutDelegate;
18 class ContentsContainer; 18 class ContentsLayoutManager;
19 class ImmersiveModeController; 19 class ImmersiveModeController;
20 class InfoBarContainerView; 20 class InfoBarContainerView;
21 class TabContentsContainer; 21 class TabContentsContainer;
22 class TabStrip; 22 class TabStrip;
23 23
24 namespace gfx { 24 namespace gfx {
25 class Point; 25 class Point;
26 class Size; 26 class Size;
27 } 27 }
28 28
(...skipping 17 matching lines...) Expand all
46 46
47 // Sets all the views to be managed. Takes ownership of |delegate|. 47 // Sets all the views to be managed. Takes ownership of |delegate|.
48 // |browser_view| may be NULL in tests. 48 // |browser_view| may be NULL in tests.
49 void Init(BrowserViewLayoutDelegate* delegate, 49 void Init(BrowserViewLayoutDelegate* delegate,
50 Browser* browser, 50 Browser* browser,
51 views::ClientView* browser_view, 51 views::ClientView* browser_view,
52 views::View* top_container, 52 views::View* top_container,
53 TabStrip* tab_strip, 53 TabStrip* tab_strip,
54 views::View* toolbar, 54 views::View* toolbar,
55 InfoBarContainerView* infobar_container, 55 InfoBarContainerView* infobar_container,
56 views::View* contents_split, 56 views::View* contents_container,
57 ContentsContainer* contents_container, 57 ContentsLayoutManager* contents_layout_manager,
58 ImmersiveModeController* immersive_mode_controller); 58 ImmersiveModeController* immersive_mode_controller);
59 59
60 // Sets or updates views that are not available when |this| is initialized. 60 // Sets or updates views that are not available when |this| is initialized.
61 void set_tab_strip(TabStrip* tab_strip) { 61 void set_tab_strip(TabStrip* tab_strip) {
62 tab_strip_ = tab_strip; 62 tab_strip_ = tab_strip;
63 } 63 }
64 void set_bookmark_bar(BookmarkBarView* bookmark_bar) { 64 void set_bookmark_bar(BookmarkBarView* bookmark_bar) {
65 bookmark_bar_ = bookmark_bar; 65 bookmark_bar_ = bookmark_bar;
66 } 66 }
67 void set_download_shelf(views::View* download_shelf) { 67 void set_download_shelf(views::View* download_shelf) {
(...skipping 27 matching lines...) Expand all
95 Browser* browser() { return browser_; } 95 Browser* browser() { return browser_; }
96 96
97 // Layout the following controls, starting at |top|, returns the coordinate 97 // Layout the following controls, starting at |top|, returns the coordinate
98 // of the bottom of the control, for laying out the next control. 98 // of the bottom of the control, for laying out the next control.
99 int LayoutTabStripRegion(int top); 99 int LayoutTabStripRegion(int top);
100 int LayoutToolbar(int top); 100 int LayoutToolbar(int top);
101 int LayoutBookmarkAndInfoBars(int top, int browser_view_y); 101 int LayoutBookmarkAndInfoBars(int top, int browser_view_y);
102 int LayoutBookmarkBar(int top); 102 int LayoutBookmarkBar(int top);
103 int LayoutInfoBar(int top); 103 int LayoutInfoBar(int top);
104 104
105 // Layout the |contents_split_| view between the coordinates |top| and 105 // Layout the |contents_container_| view between the coordinates |top| and
106 // |bottom|. See browser_view.h for details of the relationship between 106 // |bottom|. See browser_view.h for details of the relationship between
107 // |contents_split_| and other views. 107 // |contents_container_| and other views.
108 void LayoutContentsSplitView(int top, int bottom); 108 void LayoutContentsContainerView(int top, int bottom);
109 109
110 // Updates |top_container_|'s bounds. The new bounds depend on the size of 110 // Updates |top_container_|'s bounds. The new bounds depend on the size of
111 // the bookmark bar and the toolbar. 111 // the bookmark bar and the toolbar.
112 void UpdateTopContainerBounds(); 112 void UpdateTopContainerBounds();
113 113
114 // Returns the vertical offset for the web contents to account for a 114 // Returns the vertical offset for the web contents to account for a
115 // detached bookmarks bar. 115 // detached bookmarks bar.
116 int GetContentsOffsetForBookmarkBar(); 116 int GetContentsOffsetForBookmarkBar();
117 117
118 // Returns the top margin to adjust the contents_container_ by. This is used 118 // Returns the top margin to adjust the contents_container_ by. This is used
(...skipping 18 matching lines...) Expand all
137 views::ClientView* browser_view_; 137 views::ClientView* browser_view_;
138 138
139 // Child views that the layout manager manages. 139 // Child views that the layout manager manages.
140 // NOTE: If you add a view, try to add it as a views::View, which makes 140 // NOTE: If you add a view, try to add it as a views::View, which makes
141 // testing much easier. 141 // testing much easier.
142 views::View* top_container_; 142 views::View* top_container_;
143 TabStrip* tab_strip_; 143 TabStrip* tab_strip_;
144 views::View* toolbar_; 144 views::View* toolbar_;
145 BookmarkBarView* bookmark_bar_; 145 BookmarkBarView* bookmark_bar_;
146 InfoBarContainerView* infobar_container_; 146 InfoBarContainerView* infobar_container_;
147 views::View* contents_split_; 147 views::View* contents_container_;
148 ContentsContainer* contents_container_; 148 ContentsLayoutManager* contents_layout_manager_;
149 views::View* download_shelf_; 149 views::View* download_shelf_;
150 150
151 ImmersiveModeController* immersive_mode_controller_; 151 ImmersiveModeController* immersive_mode_controller_;
152 152
153 // The bounds within which the vertically-stacked contents of the BrowserView 153 // The bounds within which the vertically-stacked contents of the BrowserView
154 // should be laid out within. This is just the local bounds of the 154 // should be laid out within. This is just the local bounds of the
155 // BrowserView. 155 // BrowserView.
156 // TODO(jamescook): Remove this and just use browser_view_->GetLocalBounds(). 156 // TODO(jamescook): Remove this and just use browser_view_->GetLocalBounds().
157 gfx::Rect vertical_layout_rect_; 157 gfx::Rect vertical_layout_rect_;
158 158
159 // The host for use in positioning the web contents modal dialog. 159 // The host for use in positioning the web contents modal dialog.
160 scoped_ptr<WebContentsModalDialogHostViews> dialog_host_; 160 scoped_ptr<WebContentsModalDialogHostViews> dialog_host_;
161 161
162 // The latest dialog position applied during a layout pass. 162 // The latest dialog position applied during a layout pass.
163 gfx::Point latest_dialog_position_; 163 gfx::Point latest_dialog_position_;
164 164
165 // The distance the web contents modal dialog is from the top of the window, 165 // The distance the web contents modal dialog is from the top of the window,
166 // in pixels. 166 // in pixels.
167 int web_contents_modal_dialog_top_y_; 167 int web_contents_modal_dialog_top_y_;
168 168
169 DISALLOW_COPY_AND_ASSIGN(BrowserViewLayout); 169 DISALLOW_COPY_AND_ASSIGN(BrowserViewLayout);
170 }; 170 };
171 171
172 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_H_ 172 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_H_
OLDNEW
« no previous file with comments | « chrome/browser/ui/views/frame/browser_view_interactive_uitest.cc ('k') | chrome/browser/ui/views/frame/browser_view_layout.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698