| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #import "base/mac/scoped_nsobject.h" | 7 #import "base/mac/scoped_nsobject.h" |
| 8 #include "base/strings/utf_string_conversions.h" | 8 #include "base/strings/utf_string_conversions.h" |
| 9 #include "chrome/browser/ui/cocoa/cocoa_test_helper.h" | 9 #include "chrome/browser/ui/cocoa/cocoa_test_helper.h" |
| 10 #import "chrome/browser/ui/cocoa/tabs/media_indicator_view.h" | 10 #import "chrome/browser/ui/cocoa/tabs/media_indicator_view.h" |
| (...skipping 350 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 361 EXPECT_FALSE([controller shouldShowCloseButton]); | 361 EXPECT_FALSE([controller shouldShowCloseButton]); |
| 362 | 362 |
| 363 // Setting the icon when tab is at min width should not show icon (bug 18359). | 363 // Setting the icon when tab is at min width should not show icon (bug 18359). |
| 364 ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance(); | 364 ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance(); |
| 365 base::scoped_nsobject<NSImage> image( | 365 base::scoped_nsobject<NSImage> image( |
| 366 rb.GetNativeImageNamed(IDR_DEFAULT_FAVICON).CopyNSImage()); | 366 rb.GetNativeImageNamed(IDR_DEFAULT_FAVICON).CopyNSImage()); |
| 367 [controller setIconImage:image]; | 367 [controller setIconImage:image]; |
| 368 NSView* newIcon = [controller iconView]; | 368 NSView* newIcon = [controller iconView]; |
| 369 EXPECT_TRUE([newIcon isHidden]); | 369 EXPECT_TRUE([newIcon isHidden]); |
| 370 | 370 |
| 371 // Tab is at selected minimum width. Since it's selected, the close box | 371 // Tab is at active minimum width. Since it's active, the close box |
| 372 // should be visible. | 372 // should be visible. |
| 373 [controller setSelected:YES]; | 373 [controller setActive:YES]; |
| 374 frame = [[controller view] frame]; | 374 frame = [[controller view] frame]; |
| 375 frame.size.width = [TabController minSelectedTabWidth]; | 375 frame.size.width = [TabController minActiveTabWidth]; |
| 376 [[controller view] setFrame:frame]; | 376 [[controller view] setFrame:frame]; |
| 377 EXPECT_FALSE([controller shouldShowIcon]); | 377 EXPECT_FALSE([controller shouldShowIcon]); |
| 378 EXPECT_TRUE([newIcon isHidden]); | 378 EXPECT_TRUE([newIcon isHidden]); |
| 379 EXPECT_TRUE([controller shouldShowCloseButton]); | 379 EXPECT_TRUE([controller shouldShowCloseButton]); |
| 380 | 380 |
| 381 // Test expanding the tab to max width and ensure the icon and close box | 381 // Test expanding the tab to max width and ensure the icon and close box |
| 382 // get put back, even when de-selected. | 382 // get put back, even when de-activated. |
| 383 frame.size.width = [TabController maxTabWidth]; | 383 frame.size.width = [TabController maxTabWidth]; |
| 384 [[controller view] setFrame:frame]; | 384 [[controller view] setFrame:frame]; |
| 385 EXPECT_TRUE([controller shouldShowIcon]); | 385 EXPECT_TRUE([controller shouldShowIcon]); |
| 386 EXPECT_FALSE([newIcon isHidden]); | 386 EXPECT_FALSE([newIcon isHidden]); |
| 387 EXPECT_TRUE([controller shouldShowCloseButton]); | 387 EXPECT_TRUE([controller shouldShowCloseButton]); |
| 388 [controller setSelected:NO]; | 388 [controller setActive:NO]; |
| 389 EXPECT_TRUE([controller shouldShowIcon]); | 389 EXPECT_TRUE([controller shouldShowIcon]); |
| 390 EXPECT_TRUE([controller shouldShowCloseButton]); | 390 EXPECT_TRUE([controller shouldShowCloseButton]); |
| 391 | 391 |
| 392 cap = [controller iconCapacity]; | 392 cap = [controller iconCapacity]; |
| 393 EXPECT_GT(cap, 0); | 393 EXPECT_GT(cap, 0); |
| 394 } | 394 } |
| 395 | 395 |
| 396 TEST_F(TabControllerTest, Menu) { | 396 TEST_F(TabControllerTest, Menu) { |
| 397 NSWindow* window = test_window(); | 397 NSWindow* window = test_window(); |
| 398 base::scoped_nsobject<TabController> controller([[TabController alloc] init]); | 398 base::scoped_nsobject<TabController> controller([[TabController alloc] init]); |
| (...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 517 [[controller mediaIndicatorView] updateIndicator:mediaState]; | 517 [[controller mediaIndicatorView] updateIndicator:mediaState]; |
| 518 [controller setIconImage:favicon]; | 518 [controller setIconImage:favicon]; |
| 519 | 519 |
| 520 // Test layout for every width from maximum to minimum. | 520 // Test layout for every width from maximum to minimum. |
| 521 NSRect tabFrame = [[controller view] frame]; | 521 NSRect tabFrame = [[controller view] frame]; |
| 522 int minWidth; | 522 int minWidth; |
| 523 if (isMiniTab) { | 523 if (isMiniTab) { |
| 524 tabFrame.size.width = minWidth = [TabController miniTabWidth]; | 524 tabFrame.size.width = minWidth = [TabController miniTabWidth]; |
| 525 } else { | 525 } else { |
| 526 tabFrame.size.width = [TabController maxTabWidth]; | 526 tabFrame.size.width = [TabController maxTabWidth]; |
| 527 minWidth = isActiveTab ? [TabController minSelectedTabWidth] : | 527 minWidth = isActiveTab ? [TabController minActiveTabWidth] : |
| 528 [TabController minTabWidth]; | 528 [TabController minTabWidth]; |
| 529 } | 529 } |
| 530 while (NSWidth(tabFrame) >= minWidth) { | 530 while (NSWidth(tabFrame) >= minWidth) { |
| 531 SCOPED_TRACE(::testing::Message() << "width=" << tabFrame.size.width); | 531 SCOPED_TRACE(::testing::Message() << "width=" << tabFrame.size.width); |
| 532 [[controller view] setFrame:tabFrame]; | 532 [[controller view] setFrame:tabFrame]; |
| 533 CheckForExpectedLayoutAndVisibilityOfSubviews(controller); | 533 CheckForExpectedLayoutAndVisibilityOfSubviews(controller); |
| 534 --tabFrame.size.width; | 534 --tabFrame.size.width; |
| 535 } | 535 } |
| 536 } | 536 } |
| 537 } | 537 } |
| 538 } | 538 } |
| 539 } | 539 } |
| 540 | 540 |
| 541 } // namespace | 541 } // namespace |
| OLD | NEW |