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

Side by Side Diff: chrome/browser/ui/window_sizer/window_sizer_ash_unittest.cc

Issue 1865213004: Convert //chrome/browser/ui from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 8 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 (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 #include "ash/scoped_target_root_window.h" 5 #include "ash/scoped_target_root_window.h"
6 #include "ash/screen_util.h" 6 #include "ash/screen_util.h"
7 #include "ash/shell.h" 7 #include "ash/shell.h"
8 #include "ash/test/ash_test_base.h" 8 #include "ash/test/ash_test_base.h"
9 #include "ash/test/test_shell_delegate.h" 9 #include "ash/test/test_shell_delegate.h"
10 #include "ash/wm/window_positioner.h" 10 #include "ash/wm/window_positioner.h"
11 #include "ash/wm/window_resizer.h" 11 #include "ash/wm/window_resizer.h"
12 #include "ash/wm/window_state.h" 12 #include "ash/wm/window_state.h"
13 #include "base/compiler_specific.h" 13 #include "base/compiler_specific.h"
14 #include "base/memory/ptr_util.h"
14 #include "build/build_config.h" 15 #include "build/build_config.h"
15 #include "chrome/browser/ui/ash/ash_util.h" 16 #include "chrome/browser/ui/ash/ash_util.h"
16 #include "chrome/browser/ui/browser.h" 17 #include "chrome/browser/ui/browser.h"
17 #include "chrome/browser/ui/window_sizer/window_sizer_common_unittest.h" 18 #include "chrome/browser/ui/window_sizer/window_sizer_common_unittest.h"
18 #include "chrome/common/chrome_switches.h" 19 #include "chrome/common/chrome_switches.h"
19 #include "chrome/test/base/test_browser_window_aura.h" 20 #include "chrome/test/base/test_browser_window_aura.h"
20 #include "chrome/test/base/testing_profile.h" 21 #include "chrome/test/base/testing_profile.h"
21 #include "content/public/test/render_view_test.h" 22 #include "content/public/test/render_view_test.h"
22 #include "testing/gtest/include/gtest/gtest.h" 23 #include "testing/gtest/include/gtest/gtest.h"
23 #include "ui/aura/client/aura_constants.h" 24 #include "ui/aura/client/aura_constants.h"
24 #include "ui/aura/env.h" 25 #include "ui/aura/env.h"
25 #include "ui/aura/test/test_windows.h" 26 #include "ui/aura/test/test_windows.h"
26 #include "ui/aura/window_event_dispatcher.h" 27 #include "ui/aura/window_event_dispatcher.h"
27 #include "ui/gfx/screen.h" 28 #include "ui/gfx/screen.h"
28 #include "ui/wm/public/activation_client.h" 29 #include "ui/wm/public/activation_client.h"
29 30
30 typedef ash::test::AshTestBase WindowSizerAshTest; 31 typedef ash::test::AshTestBase WindowSizerAshTest;
31 32
32 namespace { 33 namespace {
33 34
34 scoped_ptr<Browser> CreateTestBrowser(aura::Window* window, 35 std::unique_ptr<Browser> CreateTestBrowser(aura::Window* window,
35 const gfx::Rect& bounds, 36 const gfx::Rect& bounds,
36 Browser::CreateParams* params) { 37 Browser::CreateParams* params) {
37 if (!bounds.IsEmpty()) 38 if (!bounds.IsEmpty())
38 window->SetBounds(bounds); 39 window->SetBounds(bounds);
39 scoped_ptr<Browser> browser = 40 std::unique_ptr<Browser> browser =
40 chrome::CreateBrowserWithAuraTestWindowForParams(make_scoped_ptr(window), 41 chrome::CreateBrowserWithAuraTestWindowForParams(base::WrapUnique(window),
41 params); 42 params);
42 if (browser->is_type_tabbed() || browser->is_app()) { 43 if (browser->is_type_tabbed() || browser->is_app()) {
43 ash::wm::GetWindowState(browser->window()->GetNativeWindow()) 44 ash::wm::GetWindowState(browser->window()->GetNativeWindow())
44 ->set_window_position_managed(true); 45 ->set_window_position_managed(true);
45 } 46 }
46 return browser; 47 return browser;
47 } 48 }
48 49
49 } // namespace 50 } // namespace
50 51
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after
419 // tests which expect ash sizes: http://crbug.com/303862 420 // tests which expect ash sizes: http://crbug.com/303862
420 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) 421 #if defined(OS_LINUX) && !defined(OS_CHROMEOS)
421 #define MAYBE_PlaceNewWindows DISABLED_PlaceNewWindows 422 #define MAYBE_PlaceNewWindows DISABLED_PlaceNewWindows
422 #else 423 #else
423 #define MAYBE_PlaceNewWindows PlaceNewWindows 424 #define MAYBE_PlaceNewWindows PlaceNewWindows
424 #endif 425 #endif
425 426
426 // Test the placement of newly created windows. 427 // Test the placement of newly created windows.
427 TEST_F(WindowSizerAshTest, MAYBE_PlaceNewWindows) { 428 TEST_F(WindowSizerAshTest, MAYBE_PlaceNewWindows) {
428 // Create a browser to pass into the GetWindowBounds function. 429 // Create a browser to pass into the GetWindowBounds function.
429 scoped_ptr<TestingProfile> profile(new TestingProfile()); 430 std::unique_ptr<TestingProfile> profile(new TestingProfile());
430 // Creating a popup handler here to make sure it does not interfere with the 431 // Creating a popup handler here to make sure it does not interfere with the
431 // existing windows. 432 // existing windows.
432 Browser::CreateParams native_params(profile.get()); 433 Browser::CreateParams native_params(profile.get());
433 scoped_ptr<Browser> browser( 434 std::unique_ptr<Browser> browser(
434 chrome::CreateBrowserWithTestWindowForParams(&native_params)); 435 chrome::CreateBrowserWithTestWindowForParams(&native_params));
435 436
436 // Creating a popup handler here to make sure it does not interfere with the 437 // Creating a popup handler here to make sure it does not interfere with the
437 // existing windows. 438 // existing windows.
438 Browser::CreateParams params2(profile.get()); 439 Browser::CreateParams params2(profile.get());
439 scoped_ptr<Browser> browser2(CreateTestBrowser( 440 std::unique_ptr<Browser> browser2(CreateTestBrowser(
440 CreateTestWindowInShellWithId(0), gfx::Rect(16, 32, 640, 320), &params2)); 441 CreateTestWindowInShellWithId(0), gfx::Rect(16, 32, 640, 320), &params2));
441 BrowserWindow* browser_window = browser2->window(); 442 BrowserWindow* browser_window = browser2->window();
442 443
443 // Creating a popup to make sure it does not interfere with the positioning. 444 // Creating a popup to make sure it does not interfere with the positioning.
444 Browser::CreateParams params_popup(Browser::TYPE_POPUP, profile.get()); 445 Browser::CreateParams params_popup(Browser::TYPE_POPUP, profile.get());
445 scoped_ptr<Browser> browser_popup( 446 std::unique_ptr<Browser> browser_popup(
446 CreateTestBrowser(CreateTestWindowInShellWithId(1), 447 CreateTestBrowser(CreateTestWindowInShellWithId(1),
447 gfx::Rect(16, 32, 128, 256), &params_popup)); 448 gfx::Rect(16, 32, 128, 256), &params_popup));
448 449
449 // Creating a panel to make sure it does not interfere with the positioning. 450 // Creating a panel to make sure it does not interfere with the positioning.
450 Browser::CreateParams params_panel(Browser::TYPE_POPUP, profile.get()); 451 Browser::CreateParams params_panel(Browser::TYPE_POPUP, profile.get());
451 scoped_ptr<Browser> browser_panel( 452 std::unique_ptr<Browser> browser_panel(
452 CreateTestBrowser(CreateTestWindowInShellWithId(2), 453 CreateTestBrowser(CreateTestWindowInShellWithId(2),
453 gfx::Rect(32, 48, 256, 512), &params_panel)); 454 gfx::Rect(32, 48, 256, 512), &params_panel));
454 455
455 browser_window->Show(); 456 browser_window->Show();
456 { // Make sure that popups do not get changed. 457 { // Make sure that popups do not get changed.
457 gfx::Rect window_bounds; 458 gfx::Rect window_bounds;
458 GetWindowBounds(p1600x1200, p1600x1200, gfx::Rect(), 459 GetWindowBounds(p1600x1200, p1600x1200, gfx::Rect(),
459 gfx::Rect(50, 100, 300, 150), bottom_s1600x1200, PERSISTED, 460 gfx::Rect(50, 100, 300, 150), bottom_s1600x1200, PERSISTED,
460 browser_popup.get(), gfx::Rect(), &window_bounds); 461 browser_popup.get(), gfx::Rect(), &window_bounds);
461 EXPECT_EQ("50,100 300x150", window_bounds.ToString()); 462 EXPECT_EQ("50,100 300x150", window_bounds.ToString());
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
495 #define MAYBE_PlaceNewBrowserWindowOnEmptyDesktop DISABLED_PlaceNewBrowserWindow OnEmptyDesktop 496 #define MAYBE_PlaceNewBrowserWindowOnEmptyDesktop DISABLED_PlaceNewBrowserWindow OnEmptyDesktop
496 #else 497 #else
497 #define MAYBE_PlaceNewBrowserWindowOnEmptyDesktop PlaceNewBrowserWindowOnEmptyDe sktop 498 #define MAYBE_PlaceNewBrowserWindowOnEmptyDesktop PlaceNewBrowserWindowOnEmptyDe sktop
498 #endif 499 #endif
499 500
500 // Test the placement of newly created windows on an empty desktop. 501 // Test the placement of newly created windows on an empty desktop.
501 // This test supplements "PlaceNewWindows" by testing the creation of a newly 502 // This test supplements "PlaceNewWindows" by testing the creation of a newly
502 // created browser window on an empty desktop. 503 // created browser window on an empty desktop.
503 TEST_F(WindowSizerAshTest, MAYBE_PlaceNewBrowserWindowOnEmptyDesktop) { 504 TEST_F(WindowSizerAshTest, MAYBE_PlaceNewBrowserWindowOnEmptyDesktop) {
504 // Create a browser to pass into the GetWindowBoundsAndShowState function. 505 // Create a browser to pass into the GetWindowBoundsAndShowState function.
505 scoped_ptr<TestingProfile> profile(new TestingProfile()); 506 std::unique_ptr<TestingProfile> profile(new TestingProfile());
506 Browser::CreateParams native_params(profile.get()); 507 Browser::CreateParams native_params(profile.get());
507 scoped_ptr<Browser> browser( 508 std::unique_ptr<Browser> browser(
508 chrome::CreateBrowserWithTestWindowForParams(&native_params)); 509 chrome::CreateBrowserWithTestWindowForParams(&native_params));
509 510
510 // A common screen size for Chrome OS devices where this behavior is 511 // A common screen size for Chrome OS devices where this behavior is
511 // desirable. 512 // desirable.
512 const gfx::Rect p1366x768(0, 0, 1366, 768); 513 const gfx::Rect p1366x768(0, 0, 1366, 768);
513 514
514 // If there is no previous state the window should get maximized if the 515 // If there is no previous state the window should get maximized if the
515 // screen is less than or equal to our limit (1366 pixels width). 516 // screen is less than or equal to our limit (1366 pixels width).
516 gfx::Rect window_bounds; 517 gfx::Rect window_bounds;
517 ui::WindowShowState out_show_state1 = ui::SHOW_STATE_DEFAULT; 518 ui::WindowShowState out_show_state1 = ui::SHOW_STATE_DEFAULT;
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
580 // Test the placement of newly created windows on multiple dislays. 581 // Test the placement of newly created windows on multiple dislays.
581 TEST_F(WindowSizerAshTest, MAYBE_PlaceNewWindowsOnMultipleDisplays) { 582 TEST_F(WindowSizerAshTest, MAYBE_PlaceNewWindowsOnMultipleDisplays) {
582 UpdateDisplay("1600x1200,1600x1200"); 583 UpdateDisplay("1600x1200,1600x1200");
583 gfx::Rect primary_bounds = 584 gfx::Rect primary_bounds =
584 gfx::Screen::GetScreen()->GetPrimaryDisplay().bounds(); 585 gfx::Screen::GetScreen()->GetPrimaryDisplay().bounds();
585 gfx::Rect secondary_bounds = ash::ScreenUtil::GetSecondaryDisplay().bounds(); 586 gfx::Rect secondary_bounds = ash::ScreenUtil::GetSecondaryDisplay().bounds();
586 587
587 ash::Shell::GetInstance()->set_target_root_window( 588 ash::Shell::GetInstance()->set_target_root_window(
588 ash::Shell::GetPrimaryRootWindow()); 589 ash::Shell::GetPrimaryRootWindow());
589 590
590 scoped_ptr<TestingProfile> profile(new TestingProfile()); 591 std::unique_ptr<TestingProfile> profile(new TestingProfile());
591 592
592 // Create browser windows that are used as reference. 593 // Create browser windows that are used as reference.
593 Browser::CreateParams params(profile.get()); 594 Browser::CreateParams params(profile.get());
594 scoped_ptr<Browser> browser(CreateTestBrowser( 595 std::unique_ptr<Browser> browser(CreateTestBrowser(
595 CreateTestWindowInShellWithId(0), gfx::Rect(10, 10, 200, 200), &params)); 596 CreateTestWindowInShellWithId(0), gfx::Rect(10, 10, 200, 200), &params));
596 BrowserWindow* browser_window = browser->window(); 597 BrowserWindow* browser_window = browser->window();
597 gfx::NativeWindow native_window = browser_window->GetNativeWindow(); 598 gfx::NativeWindow native_window = browser_window->GetNativeWindow();
598 browser_window->Show(); 599 browser_window->Show();
599 EXPECT_EQ(native_window->GetRootWindow(), ash::Shell::GetTargetRootWindow()); 600 EXPECT_EQ(native_window->GetRootWindow(), ash::Shell::GetTargetRootWindow());
600 601
601 Browser::CreateParams another_params(profile.get()); 602 Browser::CreateParams another_params(profile.get());
602 scoped_ptr<Browser> another_browser( 603 std::unique_ptr<Browser> another_browser(
603 CreateTestBrowser(CreateTestWindowInShellWithId(1), 604 CreateTestBrowser(CreateTestWindowInShellWithId(1),
604 gfx::Rect(400, 10, 300, 300), &another_params)); 605 gfx::Rect(400, 10, 300, 300), &another_params));
605 BrowserWindow* another_browser_window = another_browser->window(); 606 BrowserWindow* another_browser_window = another_browser->window();
606 gfx::NativeWindow another_native_window = 607 gfx::NativeWindow another_native_window =
607 another_browser_window->GetNativeWindow(); 608 another_browser_window->GetNativeWindow();
608 another_browser_window->Show(); 609 another_browser_window->Show();
609 610
610 // Creating a new window to verify the new placement. 611 // Creating a new window to verify the new placement.
611 Browser::CreateParams new_params(profile.get()); 612 Browser::CreateParams new_params(profile.get());
612 scoped_ptr<Browser> new_browser(CreateTestBrowser( 613 std::unique_ptr<Browser> new_browser(CreateTestBrowser(
613 CreateTestWindowInShellWithId(0), gfx::Rect(), &new_params)); 614 CreateTestWindowInShellWithId(0), gfx::Rect(), &new_params));
614 615
615 // Make sure the primary root is active. 616 // Make sure the primary root is active.
616 ASSERT_EQ(ash::Shell::GetPrimaryRootWindow(), 617 ASSERT_EQ(ash::Shell::GetPrimaryRootWindow(),
617 ash::Shell::GetTargetRootWindow()); 618 ash::Shell::GetTargetRootWindow());
618 619
619 // First new window should be in the primary. 620 // First new window should be in the primary.
620 { 621 {
621 gfx::Rect window_bounds; 622 gfx::Rect window_bounds;
622 GetWindowBounds(p1600x1200, p1600x1200, secondary_bounds, gfx::Rect(), 623 GetWindowBounds(p1600x1200, p1600x1200, secondary_bounds, gfx::Rect(),
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
673 // On desktop linux aura, we currently don't use the ash frame, breaking some 674 // On desktop linux aura, we currently don't use the ash frame, breaking some
674 // tests which expect ash sizes: http://crbug.com/303862 675 // tests which expect ash sizes: http://crbug.com/303862
675 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) 676 #if defined(OS_LINUX) && !defined(OS_CHROMEOS)
676 #define MAYBE_TestShowState DISABLED_TestShowState 677 #define MAYBE_TestShowState DISABLED_TestShowState
677 #else 678 #else
678 #define MAYBE_TestShowState TestShowState 679 #define MAYBE_TestShowState TestShowState
679 #endif 680 #endif
680 681
681 // Test that the show state is properly returned for non default cases. 682 // Test that the show state is properly returned for non default cases.
682 TEST_F(WindowSizerAshTest, MAYBE_TestShowState) { 683 TEST_F(WindowSizerAshTest, MAYBE_TestShowState) {
683 scoped_ptr<TestingProfile> profile(new TestingProfile()); 684 std::unique_ptr<TestingProfile> profile(new TestingProfile());
684 685
685 // Creating a browser & window to play with. 686 // Creating a browser & window to play with.
686 Browser::CreateParams params(Browser::TYPE_TABBED, profile.get()); 687 Browser::CreateParams params(Browser::TYPE_TABBED, profile.get());
687 scoped_ptr<Browser> browser(CreateTestBrowser( 688 std::unique_ptr<Browser> browser(CreateTestBrowser(
688 CreateTestWindowInShellWithId(0), gfx::Rect(16, 32, 640, 320), &params)); 689 CreateTestWindowInShellWithId(0), gfx::Rect(16, 32, 640, 320), &params));
689 690
690 // Create also a popup browser since that behaves different. 691 // Create also a popup browser since that behaves different.
691 Browser::CreateParams params_popup(Browser::TYPE_POPUP, profile.get()); 692 Browser::CreateParams params_popup(Browser::TYPE_POPUP, profile.get());
692 scoped_ptr<Browser> browser_popup( 693 std::unique_ptr<Browser> browser_popup(
693 CreateTestBrowser(CreateTestWindowInShellWithId(1), 694 CreateTestBrowser(CreateTestWindowInShellWithId(1),
694 gfx::Rect(16, 32, 640, 320), &params_popup)); 695 gfx::Rect(16, 32, 640, 320), &params_popup));
695 696
696 // Tabbed windows should retrieve the saved window state - since there is a 697 // Tabbed windows should retrieve the saved window state - since there is a
697 // top window. 698 // top window.
698 EXPECT_EQ(ui::SHOW_STATE_MAXIMIZED, 699 EXPECT_EQ(ui::SHOW_STATE_MAXIMIZED,
699 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_NORMAL, 700 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_NORMAL,
700 BOTH, browser.get(), p1600x1200, p1600x1200)); 701 BOTH, browser.get(), p1600x1200, p1600x1200));
701 // A window that is smaller than the whole work area is set to default state. 702 // A window that is smaller than the whole work area is set to default state.
702 EXPECT_EQ(ui::SHOW_STATE_DEFAULT, 703 EXPECT_EQ(ui::SHOW_STATE_DEFAULT,
(...skipping 11 matching lines...) Expand all
714 // The non tabbed window will take the status of the last active of its kind. 715 // The non tabbed window will take the status of the last active of its kind.
715 EXPECT_EQ( 716 EXPECT_EQ(
716 ui::SHOW_STATE_NORMAL, 717 ui::SHOW_STATE_NORMAL,
717 GetWindowShowState(ui::SHOW_STATE_DEFAULT, ui::SHOW_STATE_NORMAL, BOTH, 718 GetWindowShowState(ui::SHOW_STATE_DEFAULT, ui::SHOW_STATE_NORMAL, BOTH,
718 browser_popup.get(), p1600x1200, p1600x1200)); 719 browser_popup.get(), p1600x1200, p1600x1200));
719 720
720 // Now create a top level window and check again for both. Only the tabbed 721 // Now create a top level window and check again for both. Only the tabbed
721 // window should follow the top level window's state. 722 // window should follow the top level window's state.
722 // Creating a browser & window to play with. 723 // Creating a browser & window to play with.
723 Browser::CreateParams params2(Browser::TYPE_TABBED, profile.get()); 724 Browser::CreateParams params2(Browser::TYPE_TABBED, profile.get());
724 scoped_ptr<Browser> browser2(CreateTestBrowser( 725 std::unique_ptr<Browser> browser2(CreateTestBrowser(
725 CreateTestWindowInShellWithId(3), gfx::Rect(16, 32, 640, 320), &params2)); 726 CreateTestWindowInShellWithId(3), gfx::Rect(16, 32, 640, 320), &params2));
726 727
727 // A tabbed window should now take the top level window state. 728 // A tabbed window should now take the top level window state.
728 EXPECT_EQ(ui::SHOW_STATE_DEFAULT, 729 EXPECT_EQ(ui::SHOW_STATE_DEFAULT,
729 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_DEFAULT, 730 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_DEFAULT,
730 BOTH, browser.get(), p1600x1200, p1600x1200)); 731 BOTH, browser.get(), p1600x1200, p1600x1200));
731 // Non tabbed windows should always follow the window saved visibility state. 732 // Non tabbed windows should always follow the window saved visibility state.
732 EXPECT_EQ( 733 EXPECT_EQ(
733 ui::SHOW_STATE_MAXIMIZED, 734 ui::SHOW_STATE_MAXIMIZED,
734 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_MINIMIZED, 735 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_MINIMIZED,
(...skipping 12 matching lines...) Expand all
747 EXPECT_EQ( 748 EXPECT_EQ(
748 ui::SHOW_STATE_MAXIMIZED, 749 ui::SHOW_STATE_MAXIMIZED,
749 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_DEFAULT, 750 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_DEFAULT,
750 BOTH, browser2.get(), tiny_screen, tiny_screen)); 751 BOTH, browser2.get(), tiny_screen, tiny_screen));
751 } 752 }
752 } 753 }
753 754
754 // Test that the default show state override behavior is properly handled. 755 // Test that the default show state override behavior is properly handled.
755 TEST_F(WindowSizerAshTest, TestShowStateDefaults) { 756 TEST_F(WindowSizerAshTest, TestShowStateDefaults) {
756 // Creating a browser & window to play with. 757 // Creating a browser & window to play with.
757 scoped_ptr<TestingProfile> profile(new TestingProfile()); 758 std::unique_ptr<TestingProfile> profile(new TestingProfile());
758 759
759 Browser::CreateParams params(Browser::TYPE_TABBED, profile.get()); 760 Browser::CreateParams params(Browser::TYPE_TABBED, profile.get());
760 scoped_ptr<Browser> browser(CreateTestBrowser( 761 std::unique_ptr<Browser> browser(CreateTestBrowser(
761 CreateTestWindowInShellWithId(0), gfx::Rect(16, 32, 640, 320), &params)); 762 CreateTestWindowInShellWithId(0), gfx::Rect(16, 32, 640, 320), &params));
762 763
763 // Create also a popup browser since that behaves slightly different for 764 // Create also a popup browser since that behaves slightly different for
764 // defaults. 765 // defaults.
765 Browser::CreateParams params_popup(Browser::TYPE_POPUP, profile.get()); 766 Browser::CreateParams params_popup(Browser::TYPE_POPUP, profile.get());
766 scoped_ptr<Browser> browser_popup( 767 std::unique_ptr<Browser> browser_popup(
767 CreateTestBrowser(CreateTestWindowInShellWithId(1), 768 CreateTestBrowser(CreateTestWindowInShellWithId(1),
768 gfx::Rect(16, 32, 128, 256), &params_popup)); 769 gfx::Rect(16, 32, 128, 256), &params_popup));
769 770
770 // Check that a browser creation state always get used if not given as 771 // Check that a browser creation state always get used if not given as
771 // SHOW_STATE_DEFAULT. On Windows ASH it should be SHOW_STATE_MAXIMIZED. 772 // SHOW_STATE_DEFAULT. On Windows ASH it should be SHOW_STATE_MAXIMIZED.
772 ui::WindowShowState window_show_state = 773 ui::WindowShowState window_show_state =
773 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_MAXIMIZED, 774 GetWindowShowState(ui::SHOW_STATE_MAXIMIZED, ui::SHOW_STATE_MAXIMIZED,
774 DEFAULT, browser.get(), p1600x1200, p1600x1200); 775 DEFAULT, browser.get(), p1600x1200, p1600x1200);
775 #if defined(OS_WIN) 776 #if defined(OS_WIN)
776 EXPECT_EQ(window_show_state, ui::SHOW_STATE_MAXIMIZED); 777 EXPECT_EQ(window_show_state, ui::SHOW_STATE_MAXIMIZED);
(...skipping 28 matching lines...) Expand all
805 806
806 // The popup should favor the initial show state over the command line. 807 // The popup should favor the initial show state over the command line.
807 EXPECT_EQ( 808 EXPECT_EQ(
808 GetWindowShowState(ui::SHOW_STATE_NORMAL, ui::SHOW_STATE_NORMAL, BOTH, 809 GetWindowShowState(ui::SHOW_STATE_NORMAL, ui::SHOW_STATE_NORMAL, BOTH,
809 browser_popup.get(), p1600x1200, p1600x1200), 810 browser_popup.get(), p1600x1200, p1600x1200),
810 ui::SHOW_STATE_NORMAL); 811 ui::SHOW_STATE_NORMAL);
811 } 812 }
812 813
813 TEST_F(WindowSizerAshTest, DefaultStateBecomesMaximized) { 814 TEST_F(WindowSizerAshTest, DefaultStateBecomesMaximized) {
814 // Create a browser to pass into the GetWindowBounds function. 815 // Create a browser to pass into the GetWindowBounds function.
815 scoped_ptr<TestingProfile> profile(new TestingProfile()); 816 std::unique_ptr<TestingProfile> profile(new TestingProfile());
816 Browser::CreateParams native_params(profile.get()); 817 Browser::CreateParams native_params(profile.get());
817 scoped_ptr<Browser> browser( 818 std::unique_ptr<Browser> browser(
818 chrome::CreateBrowserWithTestWindowForParams(&native_params)); 819 chrome::CreateBrowserWithTestWindowForParams(&native_params));
819 820
820 gfx::Rect display_bounds = 821 gfx::Rect display_bounds =
821 gfx::Screen::GetScreen()->GetPrimaryDisplay().bounds(); 822 gfx::Screen::GetScreen()->GetPrimaryDisplay().bounds();
822 gfx::Rect specified_bounds = display_bounds; 823 gfx::Rect specified_bounds = display_bounds;
823 824
824 // Make a window bigger than the display work area. 825 // Make a window bigger than the display work area.
825 specified_bounds.Inset(-20, -20); 826 specified_bounds.Inset(-20, -20);
826 ui::WindowShowState show_state = ui::SHOW_STATE_DEFAULT; 827 ui::WindowShowState show_state = ui::SHOW_STATE_DEFAULT;
827 gfx::Rect bounds; 828 gfx::Rect bounds;
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
874 std::string(), 875 std::string(),
875 gfx::Rect(), 876 gfx::Rect(),
876 NULL, 877 NULL,
877 &bounds, 878 &bounds,
878 &show_state); 879 &show_state);
879 EXPECT_TRUE(second_root->GetBoundsInScreen().Contains(bounds)); 880 EXPECT_TRUE(second_root->GetBoundsInScreen().Contains(bounds));
880 } 881 }
881 } 882 }
882 883
883 TEST_F(WindowSizerAshTest, TrustedPopupBehavior) { 884 TEST_F(WindowSizerAshTest, TrustedPopupBehavior) {
884 scoped_ptr<TestingProfile> profile(new TestingProfile()); 885 std::unique_ptr<TestingProfile> profile(new TestingProfile());
885 Browser::CreateParams trusted_popup_create_params(Browser::TYPE_POPUP, 886 Browser::CreateParams trusted_popup_create_params(Browser::TYPE_POPUP,
886 profile.get()); 887 profile.get());
887 trusted_popup_create_params.trusted_source = true; 888 trusted_popup_create_params.trusted_source = true;
888 889
889 scoped_ptr<Browser> trusted_popup(CreateTestBrowser( 890 std::unique_ptr<Browser> trusted_popup(CreateTestBrowser(
890 CreateTestWindowInShellWithId(1), gfx::Rect(16, 32, 640, 320), 891 CreateTestWindowInShellWithId(1), gfx::Rect(16, 32, 640, 320),
891 &trusted_popup_create_params)); 892 &trusted_popup_create_params));
892 // Trusted popup windows should follow the saved show state and ignore the 893 // Trusted popup windows should follow the saved show state and ignore the
893 // last show state. 894 // last show state.
894 EXPECT_EQ( 895 EXPECT_EQ(
895 ui::SHOW_STATE_DEFAULT, 896 ui::SHOW_STATE_DEFAULT,
896 GetWindowShowState(ui::SHOW_STATE_DEFAULT, ui::SHOW_STATE_NORMAL, BOTH, 897 GetWindowShowState(ui::SHOW_STATE_DEFAULT, ui::SHOW_STATE_NORMAL, BOTH,
897 trusted_popup.get(), p1280x1024, p1600x1200)); 898 trusted_popup.get(), p1280x1024, p1600x1200));
898 // A popup that is sized to occupy the whole work area has default state. 899 // A popup that is sized to occupy the whole work area has default state.
899 EXPECT_EQ( 900 EXPECT_EQ(
900 ui::SHOW_STATE_DEFAULT, 901 ui::SHOW_STATE_DEFAULT,
901 GetWindowShowState(ui::SHOW_STATE_DEFAULT, ui::SHOW_STATE_NORMAL, BOTH, 902 GetWindowShowState(ui::SHOW_STATE_DEFAULT, ui::SHOW_STATE_NORMAL, BOTH,
902 trusted_popup.get(), p1600x1200, p1600x1200)); 903 trusted_popup.get(), p1600x1200, p1600x1200));
903 } 904 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/window_sizer/window_sizer.cc ('k') | chrome/browser/ui/window_sizer/window_sizer_common_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698