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

Side by Side Diff: chrome/browser/ui/cocoa/browser_window_layout_unittest.mm

Issue 1989633002: Revert "[Material][Mac] Reduced the area above tabs by 2 pts" (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 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 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 #import <Cocoa/Cocoa.h> 5 #import <Cocoa/Cocoa.h>
6 6
7 #include "base/mac/scoped_nsobject.h" 7 #include "base/mac/scoped_nsobject.h"
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #import "chrome/browser/ui/cocoa/browser_window_layout.h" 9 #import "chrome/browser/ui/cocoa/browser_window_layout.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
11 #import "testing/gtest_mac.h" 11 #import "testing/gtest_mac.h"
12 #include "ui/base/material_design/material_design_controller.h"
13
14 namespace {
15
16 // In Material Design, the tabstrip's height is 2px smaller. As such, the
17 // expected y values in the tests need to take account of the offset.
18
19 int TabStripYOffset() {
20 return ui::MaterialDesignController::IsModeMaterial() ? 2 : 0;
21 }
22
23 int AvatarYOffset() {
24 return ui::MaterialDesignController::IsModeMaterial() ? 1 : 0;
25 }
26
27 } // namespace
28 12
29 class BrowserWindowLayoutTest : public testing::Test { 13 class BrowserWindowLayoutTest : public testing::Test {
30 public: 14 public:
31 BrowserWindowLayoutTest() {} 15 BrowserWindowLayoutTest() {}
32 void SetUp() override { 16 void SetUp() override {
33 layout.reset([[BrowserWindowLayout alloc] init]); 17 layout.reset([[BrowserWindowLayout alloc] init]);
34 18
35 [layout setContentViewSize:NSMakeSize(600, 600)]; 19 [layout setContentViewSize:NSMakeSize(600, 600)];
36 [layout setWindowSize:NSMakeSize(600, 622)]; 20 [layout setWindowSize:NSMakeSize(600, 622)];
37 [layout setInAnyFullscreen:NO]; 21 [layout setInAnyFullscreen:NO];
(...skipping 27 matching lines...) Expand all
65 [layout setFullscreenMenubarOffset:0]; 49 [layout setFullscreenMenubarOffset:0];
66 [layout setFullscreenToolbarFraction:0]; 50 [layout setFullscreenToolbarFraction:0];
67 [layout setFullscreenButtonFrame:NSZeroRect]; 51 [layout setFullscreenButtonFrame:NSZeroRect];
68 } 52 }
69 53
70 private: 54 private:
71 DISALLOW_COPY_AND_ASSIGN(BrowserWindowLayoutTest); 55 DISALLOW_COPY_AND_ASSIGN(BrowserWindowLayoutTest);
72 }; 56 };
73 57
74 TEST_F(BrowserWindowLayoutTest, TestAllViews) { 58 TEST_F(BrowserWindowLayoutTest, TestAllViews) {
75 int yOffset = TabStripYOffset();
76 chrome::LayoutOutput output = [layout computeLayout]; 59 chrome::LayoutOutput output = [layout computeLayout];
77 60
78 EXPECT_NSEQ(NSMakeRect(0, 585 + yOffset, 600, 37 - yOffset), 61 EXPECT_NSEQ(NSMakeRect(0, 585, 600, 37), output.tabStripLayout.frame);
79 output.tabStripLayout.frame); 62 EXPECT_NSEQ(NSMakeRect(502, 589, 63, 28), output.tabStripLayout.avatarFrame);
80 EXPECT_NSEQ(NSMakeRect(502, 589 + AvatarYOffset(), 63, 28),
81 output.tabStripLayout.avatarFrame);
82 EXPECT_EQ(70, output.tabStripLayout.leftIndent); 63 EXPECT_EQ(70, output.tabStripLayout.leftIndent);
83 EXPECT_EQ(98, output.tabStripLayout.rightIndent); 64 EXPECT_EQ(98, output.tabStripLayout.rightIndent);
84 65 EXPECT_NSEQ(NSMakeRect(0, 553, 600, 32), output.toolbarFrame);
85 EXPECT_NSEQ(NSMakeRect(0, 553 + yOffset, 600, 32), output.toolbarFrame); 66 EXPECT_NSEQ(NSMakeRect(0, 527, 600, 26), output.bookmarkFrame);
86 EXPECT_NSEQ(NSMakeRect(0, 527 + yOffset, 600, 26), output.bookmarkFrame);
87 EXPECT_NSEQ(NSZeroRect, output.fullscreenBackingBarFrame); 67 EXPECT_NSEQ(NSZeroRect, output.fullscreenBackingBarFrame);
88 EXPECT_EQ(527 + yOffset, output.findBarMaxY); 68 EXPECT_EQ(527, output.findBarMaxY);
89 EXPECT_NSEQ(NSMakeRect(0, 455 + yOffset, 600, 111), output.infoBarFrame); 69 EXPECT_NSEQ(NSMakeRect(0, 455, 600, 111), output.infoBarFrame);
90 EXPECT_NSEQ(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame); 70 EXPECT_NSEQ(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame);
91 EXPECT_NSEQ(NSMakeRect(0, 44, 600, 411 + yOffset), output.contentAreaFrame); 71 EXPECT_NSEQ(NSMakeRect(0, 44, 600, 411), output.contentAreaFrame);
92 } 72 }
93 73
94 TEST_F(BrowserWindowLayoutTest, TestAllViewsFullscreen) { 74 TEST_F(BrowserWindowLayoutTest, TestAllViewsFullscreen) {
95 ApplyStandardFullscreenLayoutParameters(); 75 ApplyStandardFullscreenLayoutParameters();
96 int yOffset = TabStripYOffset(); 76
97 chrome::LayoutOutput output = [layout computeLayout]; 77 chrome::LayoutOutput output = [layout computeLayout];
98 78
99 EXPECT_NSEQ(NSMakeRect(0, 585 + yOffset, 600, 37 - yOffset), 79 EXPECT_NSEQ(NSMakeRect(0, 585, 600, 37), output.tabStripLayout.frame);
100 output.tabStripLayout.frame); 80 EXPECT_NSEQ(NSMakeRect(533, 589, 63, 28), output.tabStripLayout.avatarFrame);
101 EXPECT_NSEQ(NSMakeRect(533, 589 + AvatarYOffset(), 63, 28),
102 output.tabStripLayout.avatarFrame);
103 EXPECT_EQ(0, output.tabStripLayout.leftIndent); 81 EXPECT_EQ(0, output.tabStripLayout.leftIndent);
104 EXPECT_FALSE(output.tabStripLayout.addCustomWindowControls); 82 EXPECT_FALSE(output.tabStripLayout.addCustomWindowControls);
105 EXPECT_EQ(67, output.tabStripLayout.rightIndent); 83 EXPECT_EQ(67, output.tabStripLayout.rightIndent);
106 EXPECT_NSEQ(NSMakeRect(0, 553 + yOffset, 600, 32), output.toolbarFrame); 84 EXPECT_NSEQ(NSMakeRect(0, 553, 600, 32), output.toolbarFrame);
107 EXPECT_NSEQ(NSMakeRect(0, 527 + yOffset, 600, 26), output.bookmarkFrame); 85 EXPECT_NSEQ(NSMakeRect(0, 527, 600, 26), output.bookmarkFrame);
108 EXPECT_NSEQ(NSMakeRect(0, 527 + yOffset, 600, 95 - yOffset), 86 EXPECT_NSEQ(NSMakeRect(0, 527, 600, 95), output.fullscreenBackingBarFrame);
109 output.fullscreenBackingBarFrame); 87 EXPECT_EQ(527, output.findBarMaxY);
110 EXPECT_EQ(527 + yOffset, output.findBarMaxY); 88 EXPECT_EQ(527, output.fullscreenExitButtonMaxY);
111 EXPECT_EQ(527 + yOffset, output.fullscreenExitButtonMaxY); 89 EXPECT_NSEQ(NSMakeRect(0, 455, 600, 111), output.infoBarFrame);
112 EXPECT_NSEQ(NSMakeRect(0, 455 + yOffset, 600, 111), output.infoBarFrame);
113 EXPECT_NSEQ(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame); 90 EXPECT_NSEQ(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame);
114 EXPECT_NSEQ(NSMakeRect(0, 44, 600, 411 + yOffset), output.contentAreaFrame); 91 EXPECT_NSEQ(NSMakeRect(0, 44, 600, 411), output.contentAreaFrame);
115 } 92 }
116 93
117 // In fullscreen mode for Yosemite, the tab strip's left indent should be 94 // In fullscreen mode for Yosemite, the tab strip's left indent should be
118 // sufficiently large to accomodate the addition of traffic light buttons. 95 // sufficiently large to accomodate the addition of traffic light buttons.
119 TEST_F(BrowserWindowLayoutTest, TestYosemiteFullscreenTrafficLights) { 96 TEST_F(BrowserWindowLayoutTest, TestYosemiteFullscreenTrafficLights) {
120 ApplyStandardFullscreenLayoutParameters(); 97 ApplyStandardFullscreenLayoutParameters();
121 [layout setOSYosemiteOrLater:YES]; 98 [layout setOSYosemiteOrLater:YES];
122 99
123 chrome::LayoutOutput output = [layout computeLayout]; 100 chrome::LayoutOutput output = [layout computeLayout];
124 101
125 EXPECT_EQ(70, output.tabStripLayout.leftIndent); 102 EXPECT_EQ(70, output.tabStripLayout.leftIndent);
126 EXPECT_TRUE(output.tabStripLayout.addCustomWindowControls); 103 EXPECT_TRUE(output.tabStripLayout.addCustomWindowControls);
127 } 104 }
128 105
129 TEST_F(BrowserWindowLayoutTest, TestAllViewsFullscreenMenuBarShowing) { 106 TEST_F(BrowserWindowLayoutTest, TestAllViewsFullscreenMenuBarShowing) {
130 ApplyStandardFullscreenLayoutParameters(); 107 ApplyStandardFullscreenLayoutParameters();
131 [layout setFullscreenMenubarOffset:-10]; 108 [layout setFullscreenMenubarOffset:-10];
132 109
133 int yOffset = TabStripYOffset();
134 chrome::LayoutOutput output = [layout computeLayout]; 110 chrome::LayoutOutput output = [layout computeLayout];
135 111
136 EXPECT_NSEQ(NSMakeRect(0, 575 + yOffset, 600, 37 - yOffset), 112 EXPECT_NSEQ(NSMakeRect(0, 575, 600, 37), output.tabStripLayout.frame);
137 output.tabStripLayout.frame); 113 EXPECT_NSEQ(NSMakeRect(533, 579, 63, 28), output.tabStripLayout.avatarFrame);
138 EXPECT_NSEQ(NSMakeRect(533, 579 + AvatarYOffset(), 63, 28),
139 output.tabStripLayout.avatarFrame);
140 EXPECT_EQ(0, output.tabStripLayout.leftIndent); 114 EXPECT_EQ(0, output.tabStripLayout.leftIndent);
141 EXPECT_FALSE(output.tabStripLayout.addCustomWindowControls); 115 EXPECT_FALSE(output.tabStripLayout.addCustomWindowControls);
142 EXPECT_EQ(67, output.tabStripLayout.rightIndent); 116 EXPECT_EQ(67, output.tabStripLayout.rightIndent);
143 EXPECT_NSEQ(NSMakeRect(0, 543 + yOffset, 600, 32), output.toolbarFrame); 117 EXPECT_NSEQ(NSMakeRect(0, 543, 600, 32), output.toolbarFrame);
144 EXPECT_NSEQ(NSMakeRect(0, 517 + yOffset, 600, 26), output.bookmarkFrame); 118 EXPECT_NSEQ(NSMakeRect(0, 517, 600, 26), output.bookmarkFrame);
145 EXPECT_NSEQ(NSMakeRect(0, 517 + yOffset, 600, 95 - yOffset), 119 EXPECT_NSEQ(NSMakeRect(0, 517, 600, 95), output.fullscreenBackingBarFrame);
146 output.fullscreenBackingBarFrame); 120 EXPECT_EQ(517, output.findBarMaxY);
147 EXPECT_EQ(517 + yOffset, output.findBarMaxY); 121 EXPECT_EQ(517, output.fullscreenExitButtonMaxY);
148 EXPECT_EQ(517 + yOffset, output.fullscreenExitButtonMaxY); 122 EXPECT_NSEQ(NSMakeRect(0, 445, 600, 111), output.infoBarFrame);
149 EXPECT_NSEQ(NSMakeRect(0, 445 + yOffset, 600, 111), output.infoBarFrame);
150 EXPECT_NSEQ(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame); 123 EXPECT_NSEQ(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame);
151 EXPECT_NSEQ(NSMakeRect(0, 44, 600, 411 + yOffset), output.contentAreaFrame); 124 EXPECT_NSEQ(NSMakeRect(0, 44, 600, 411), output.contentAreaFrame);
152 } 125 }
153 126
154 TEST_F(BrowserWindowLayoutTest, TestPopupWindow) { 127 TEST_F(BrowserWindowLayoutTest, TestPopupWindow) {
155 [layout setHasTabStrip:NO]; 128 [layout setHasTabStrip:NO];
156 [layout setHasToolbar:NO]; 129 [layout setHasToolbar:NO];
157 [layout setHasLocationBar:YES]; 130 [layout setHasLocationBar:YES];
158 [layout setBookmarkBarHidden:YES]; 131 [layout setBookmarkBarHidden:YES];
159 [layout setHasDownloadShelf:NO]; 132 [layout setHasDownloadShelf:NO];
160 133
161 chrome::LayoutOutput output = [layout computeLayout]; 134 chrome::LayoutOutput output = [layout computeLayout];
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
231 204
232 EXPECT_NSEQ(NSMakeRect(0, 528, 600, 72), output.infoBarFrame); 205 EXPECT_NSEQ(NSMakeRect(0, 528, 600, 72), output.infoBarFrame);
233 } 206 }
234 207
235 // Tests that the avatar button is not aligned on the half pixel. 208 // Tests that the avatar button is not aligned on the half pixel.
236 TEST_F(BrowserWindowLayoutTest, TestAvatarButtonPixelAlignment) { 209 TEST_F(BrowserWindowLayoutTest, TestAvatarButtonPixelAlignment) {
237 [layout setAvatarSize:NSMakeSize(28, 28)]; 210 [layout setAvatarSize:NSMakeSize(28, 28)];
238 211
239 chrome::LayoutOutput output = [layout computeLayout]; 212 chrome::LayoutOutput output = [layout computeLayout];
240 213
241 EXPECT_NSEQ(NSMakeRect(537, 589 + AvatarYOffset(), 28, 28), 214 EXPECT_NSEQ(NSMakeRect(537, 589, 28, 28), output.tabStripLayout.avatarFrame);
242 output.tabStripLayout.avatarFrame);
243 } 215 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/cocoa/browser_window_layout.mm ('k') | chrome/browser/ui/cocoa/tabs/tab_window_controller.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698