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

Side by Side Diff: chrome/browser/ui/ash/launcher/chrome_launcher_controller_browsertest.cc

Issue 23606016: Refactor LauncherItemController and LauncherItemDelegate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix for LauncherTest and observing LauncherModel in DelegateManager Created 7 years, 3 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 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h" 5 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h"
6 6
7 #include "apps/native_app_window.h" 7 #include "apps/native_app_window.h"
8 #include "apps/shell_window.h" 8 #include "apps/shell_window.h"
9 #include "apps/shell_window_registry.h" 9 #include "apps/shell_window_registry.h"
10 #include "ash/ash_switches.h" 10 #include "ash/ash_switches.h"
(...skipping 14 matching lines...) Expand all
25 #include "chrome/browser/chrome_notification_types.h" 25 #include "chrome/browser/chrome_notification_types.h"
26 #include "chrome/browser/extensions/extension_apitest.h" 26 #include "chrome/browser/extensions/extension_apitest.h"
27 #include "chrome/browser/extensions/extension_browsertest.h" 27 #include "chrome/browser/extensions/extension_browsertest.h"
28 #include "chrome/browser/extensions/extension_function_test_utils.h" 28 #include "chrome/browser/extensions/extension_function_test_utils.h"
29 #include "chrome/browser/extensions/extension_service.h" 29 #include "chrome/browser/extensions/extension_service.h"
30 #include "chrome/browser/extensions/extension_system.h" 30 #include "chrome/browser/extensions/extension_system.h"
31 #include "chrome/browser/extensions/extension_test_message_listener.h" 31 #include "chrome/browser/extensions/extension_test_message_listener.h"
32 #include "chrome/browser/profiles/profile.h" 32 #include "chrome/browser/profiles/profile.h"
33 #include "chrome/browser/ui/app_list/app_list_service.h" 33 #include "chrome/browser/ui/app_list/app_list_service.h"
34 #include "chrome/browser/ui/ash/launcher/browser_shortcut_launcher_item_controll er.h" 34 #include "chrome/browser/ui/ash/launcher/browser_shortcut_launcher_item_controll er.h"
35 #include "chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.h"
35 #include "chrome/browser/ui/ash/launcher/launcher_item_controller.h" 36 #include "chrome/browser/ui/ash/launcher/launcher_item_controller.h"
36 #include "chrome/browser/ui/browser.h" 37 #include "chrome/browser/ui/browser.h"
37 #include "chrome/browser/ui/browser_commands.h" 38 #include "chrome/browser/ui/browser_commands.h"
38 #include "chrome/browser/ui/browser_finder.h" 39 #include "chrome/browser/ui/browser_finder.h"
39 #include "chrome/browser/ui/browser_list.h" 40 #include "chrome/browser/ui/browser_list.h"
40 #include "chrome/browser/ui/browser_window.h" 41 #include "chrome/browser/ui/browser_window.h"
41 #include "chrome/browser/ui/extensions/application_launch.h" 42 #include "chrome/browser/ui/extensions/application_launch.h"
42 #include "chrome/browser/ui/host_desktop.h" 43 #include "chrome/browser/ui/host_desktop.h"
43 #include "chrome/browser/ui/tabs/tab_strip_model.h" 44 #include "chrome/browser/ui/tabs/tab_strip_model.h"
44 #include "chrome/common/chrome_switches.h" 45 #include "chrome/common/chrome_switches.h"
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 } 143 }
143 144
144 LauncherItemController* GetItemController(ash::LauncherID id) { 145 LauncherItemController* GetItemController(ash::LauncherID id) {
145 return controller_->id_to_item_controller_map_[id]; 146 return controller_->id_to_item_controller_map_[id];
146 } 147 }
147 148
148 // Returns the number of menu items, ignoring separators. 149 // Returns the number of menu items, ignoring separators.
149 int GetNumApplicationMenuItems(const ash::LauncherItem& item) { 150 int GetNumApplicationMenuItems(const ash::LauncherItem& item) {
150 const int event_flags = 0; 151 const int event_flags = 0;
151 scoped_ptr<ash::LauncherMenuModel> menu( 152 scoped_ptr<ash::LauncherMenuModel> menu(
152 controller_->CreateApplicationMenu(item, event_flags)); 153 new LauncherApplicationMenuItemModel(
154 controller_->GetApplicationList(item, event_flags)));
153 int num_items = 0; 155 int num_items = 0;
154 for (int i = 0; i < menu->GetItemCount(); ++i) { 156 for (int i = 0; i < menu->GetItemCount(); ++i) {
155 if (menu->GetTypeAt(i) != ui::MenuModel::TYPE_SEPARATOR) 157 if (menu->GetTypeAt(i) != ui::MenuModel::TYPE_SEPARATOR)
156 ++num_items; 158 ++num_items;
157 } 159 }
158 return num_items; 160 return num_items;
159 } 161 }
160 162
161 // Activate the launcher item with the given |id|. 163 // Activate the launcher item with the given |id|.
162 void ActivateLauncherItem(int id) { 164 void ActivateLauncherItem(int id) {
(...skipping 486 matching lines...) Expand 10 before | Expand all | Expand 10 after
649 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 651 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
650 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 652 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
651 // Confirm that a controller item was created and is the correct state. 653 // Confirm that a controller item was created and is the correct state.
652 const ash::LauncherItem& item1 = GetLastLauncherItem(); 654 const ash::LauncherItem& item1 = GetLastLauncherItem();
653 LauncherItemController* item1_controller = GetItemController(item1.id); 655 LauncherItemController* item1_controller = GetItemController(item1.id);
654 EXPECT_EQ(ash::TYPE_PLATFORM_APP, item1.type); 656 EXPECT_EQ(ash::TYPE_PLATFORM_APP, item1.type);
655 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status); 657 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status);
656 EXPECT_EQ(LauncherItemController::TYPE_APP, item1_controller->type()); 658 EXPECT_EQ(LauncherItemController::TYPE_APP, item1_controller->type());
657 // Clicking the item should have no effect. 659 // Clicking the item should have no effect.
658 TestEvent click_event(ui::ET_MOUSE_PRESSED); 660 TestEvent click_event(ui::ET_MOUSE_PRESSED);
659 item1_controller->Clicked(click_event); 661 item1_controller->ItemSelected(click_event);
660 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 662 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
661 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 663 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
662 // Minimize the window and confirm that the controller item is updated. 664 // Minimize the window and confirm that the controller item is updated.
663 window1->GetBaseWindow()->Minimize(); 665 window1->GetBaseWindow()->Minimize();
664 EXPECT_FALSE(window1->GetNativeWindow()->IsVisible()); 666 EXPECT_FALSE(window1->GetNativeWindow()->IsVisible());
665 EXPECT_FALSE(window1->GetBaseWindow()->IsActive()); 667 EXPECT_FALSE(window1->GetBaseWindow()->IsActive());
666 EXPECT_EQ(ash::STATUS_RUNNING, item1.status); 668 EXPECT_EQ(ash::STATUS_RUNNING, item1.status);
667 // Clicking the item should activate the window. 669 // Clicking the item should activate the window.
668 item1_controller->Clicked(click_event); 670 item1_controller->ItemSelected(click_event);
669 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 671 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
670 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 672 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
671 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status); 673 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status);
672 // Maximizing a window should preserve state after minimize + click. 674 // Maximizing a window should preserve state after minimize + click.
673 window1->GetBaseWindow()->Maximize(); 675 window1->GetBaseWindow()->Maximize();
674 window1->GetBaseWindow()->Minimize(); 676 window1->GetBaseWindow()->Minimize();
675 item1_controller->Clicked(click_event); 677 item1_controller->ItemSelected(click_event);
676 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 678 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
677 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 679 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
678 EXPECT_TRUE(window1->GetBaseWindow()->IsMaximized()); 680 EXPECT_TRUE(window1->GetBaseWindow()->IsMaximized());
679 } 681 }
680 682
681 // Confirm the minimizing click behavior for apps. 683 // Confirm the minimizing click behavior for apps.
682 IN_PROC_BROWSER_TEST_F(LauncherAppBrowserMinimizeOnClick, 684 IN_PROC_BROWSER_TEST_F(LauncherAppBrowserMinimizeOnClick,
683 PackagedAppClickBehaviorInMinimizeMode) { 685 PackagedAppClickBehaviorInMinimizeMode) {
684 // Launch one platform app and create a window for it. 686 // Launch one platform app and create a window for it.
685 const Extension* extension1 = LoadAndLaunchPlatformApp("launch"); 687 const Extension* extension1 = LoadAndLaunchPlatformApp("launch");
686 ShellWindow* window1 = CreateShellWindow(extension1); 688 ShellWindow* window1 = CreateShellWindow(extension1);
687 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 689 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
688 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 690 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
689 691
690 // Confirm that a controller item was created and is the correct state. 692 // Confirm that a controller item was created and is the correct state.
691 const ash::LauncherItem& item1 = GetLastLauncherItem(); 693 const ash::LauncherItem& item1 = GetLastLauncherItem();
692 LauncherItemController* item1_controller = GetItemController(item1.id); 694 LauncherItemController* item1_controller = GetItemController(item1.id);
693 EXPECT_EQ(ash::TYPE_PLATFORM_APP, item1.type); 695 EXPECT_EQ(ash::TYPE_PLATFORM_APP, item1.type);
694 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status); 696 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status);
695 EXPECT_EQ(LauncherItemController::TYPE_APP, item1_controller->type()); 697 EXPECT_EQ(LauncherItemController::TYPE_APP, item1_controller->type());
696 // Since it is already active, clicking it should minimize. 698 // Since it is already active, clicking it should minimize.
697 TestEvent click_event(ui::ET_MOUSE_PRESSED); 699 TestEvent click_event(ui::ET_MOUSE_PRESSED);
698 item1_controller->Clicked(click_event); 700 item1_controller->ItemSelected(click_event);
699 EXPECT_FALSE(window1->GetNativeWindow()->IsVisible()); 701 EXPECT_FALSE(window1->GetNativeWindow()->IsVisible());
700 EXPECT_FALSE(window1->GetBaseWindow()->IsActive()); 702 EXPECT_FALSE(window1->GetBaseWindow()->IsActive());
701 EXPECT_TRUE(window1->GetBaseWindow()->IsMinimized()); 703 EXPECT_TRUE(window1->GetBaseWindow()->IsMinimized());
702 EXPECT_EQ(ash::STATUS_RUNNING, item1.status); 704 EXPECT_EQ(ash::STATUS_RUNNING, item1.status);
703 // Clicking the item again should activate the window again. 705 // Clicking the item again should activate the window again.
704 item1_controller->Clicked(click_event); 706 item1_controller->ItemSelected(click_event);
705 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 707 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
706 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 708 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
707 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status); 709 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status);
708 // Maximizing a window should preserve state after minimize + click. 710 // Maximizing a window should preserve state after minimize + click.
709 window1->GetBaseWindow()->Maximize(); 711 window1->GetBaseWindow()->Maximize();
710 window1->GetBaseWindow()->Minimize(); 712 window1->GetBaseWindow()->Minimize();
711 item1_controller->Clicked(click_event); 713 item1_controller->ItemSelected(click_event);
712 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 714 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
713 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 715 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
714 EXPECT_TRUE(window1->GetBaseWindow()->IsMaximized()); 716 EXPECT_TRUE(window1->GetBaseWindow()->IsMaximized());
715 window1->GetBaseWindow()->Restore(); 717 window1->GetBaseWindow()->Restore();
716 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 718 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
717 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 719 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
718 EXPECT_FALSE(window1->GetBaseWindow()->IsMaximized()); 720 EXPECT_FALSE(window1->GetBaseWindow()->IsMaximized());
719 721
720 // Creating a second window of the same type should change the behavior so 722 // Creating a second window of the same type should change the behavior so
721 // that a click does not change the activation state. 723 // that a click does not change the activation state.
722 ShellWindow* window1a = CreateShellWindow(extension1); 724 ShellWindow* window1a = CreateShellWindow(extension1);
723 EXPECT_TRUE(window1a->GetNativeWindow()->IsVisible()); 725 EXPECT_TRUE(window1a->GetNativeWindow()->IsVisible());
724 EXPECT_TRUE(window1a->GetBaseWindow()->IsActive()); 726 EXPECT_TRUE(window1a->GetBaseWindow()->IsActive());
725 // The first click does nothing. 727 // The first click does nothing.
726 item1_controller->Clicked(click_event); 728 item1_controller->ItemSelected(click_event);
727 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 729 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
728 EXPECT_TRUE(window1a->GetNativeWindow()->IsVisible()); 730 EXPECT_TRUE(window1a->GetNativeWindow()->IsVisible());
729 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 731 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
730 EXPECT_FALSE(window1a->GetBaseWindow()->IsActive()); 732 EXPECT_FALSE(window1a->GetBaseWindow()->IsActive());
731 // The second neither. 733 // The second neither.
732 item1_controller->Clicked(click_event); 734 item1_controller->ItemSelected(click_event);
733 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible()); 735 EXPECT_TRUE(window1->GetNativeWindow()->IsVisible());
734 EXPECT_TRUE(window1a->GetNativeWindow()->IsVisible()); 736 EXPECT_TRUE(window1a->GetNativeWindow()->IsVisible());
735 EXPECT_TRUE(window1->GetBaseWindow()->IsActive()); 737 EXPECT_TRUE(window1->GetBaseWindow()->IsActive());
736 EXPECT_FALSE(window1a->GetBaseWindow()->IsActive()); 738 EXPECT_FALSE(window1a->GetBaseWindow()->IsActive());
737 } 739 }
738 740
739 // Confirm that click behavior for app panels is correct. 741 // Confirm that click behavior for app panels is correct.
740 IN_PROC_BROWSER_TEST_F(LauncherPlatformAppBrowserTest, AppPanelClickBehavior) { 742 IN_PROC_BROWSER_TEST_F(LauncherPlatformAppBrowserTest, AppPanelClickBehavior) {
741 // Enable experimental APIs to allow panel creation. 743 // Enable experimental APIs to allow panel creation.
742 CommandLine::ForCurrentProcess()->AppendSwitch( 744 CommandLine::ForCurrentProcess()->AppendSwitch(
743 extensions::switches::kEnableExperimentalExtensionApis); 745 extensions::switches::kEnableExperimentalExtensionApis);
744 // Launch a platform app and create a panel window for it. 746 // Launch a platform app and create a panel window for it.
745 const Extension* extension1 = LoadAndLaunchPlatformApp("launch"); 747 const Extension* extension1 = LoadAndLaunchPlatformApp("launch");
746 ShellWindow::CreateParams params; 748 ShellWindow::CreateParams params;
747 params.window_type = ShellWindow::WINDOW_TYPE_PANEL; 749 params.window_type = ShellWindow::WINDOW_TYPE_PANEL;
748 params.focused = false; 750 params.focused = false;
749 ShellWindow* panel = CreateShellWindowFromParams(extension1, params); 751 ShellWindow* panel = CreateShellWindowFromParams(extension1, params);
750 EXPECT_TRUE(panel->GetNativeWindow()->IsVisible()); 752 EXPECT_TRUE(panel->GetNativeWindow()->IsVisible());
751 // Panels should not be active by default. 753 // Panels should not be active by default.
752 EXPECT_FALSE(panel->GetBaseWindow()->IsActive()); 754 EXPECT_FALSE(panel->GetBaseWindow()->IsActive());
753 // Confirm that a controller item was created and is the correct state. 755 // Confirm that a controller item was created and is the correct state.
754 const ash::LauncherItem& item1 = GetLastLauncherPanelItem(); 756 const ash::LauncherItem& item1 = GetLastLauncherPanelItem();
755 LauncherItemController* item1_controller = GetItemController(item1.id); 757 LauncherItemController* item1_controller = GetItemController(item1.id);
756 EXPECT_EQ(ash::TYPE_APP_PANEL, item1.type); 758 EXPECT_EQ(ash::TYPE_APP_PANEL, item1.type);
757 EXPECT_EQ(ash::STATUS_RUNNING, item1.status); 759 EXPECT_EQ(ash::STATUS_RUNNING, item1.status);
758 EXPECT_EQ(LauncherItemController::TYPE_APP_PANEL, item1_controller->type()); 760 EXPECT_EQ(LauncherItemController::TYPE_APP_PANEL, item1_controller->type());
759 // Click the item and confirm that the panel is activated. 761 // Click the item and confirm that the panel is activated.
760 TestEvent click_event(ui::ET_MOUSE_PRESSED); 762 TestEvent click_event(ui::ET_MOUSE_PRESSED);
761 item1_controller->Clicked(click_event); 763 item1_controller->ItemSelected(click_event);
762 EXPECT_TRUE(panel->GetBaseWindow()->IsActive()); 764 EXPECT_TRUE(panel->GetBaseWindow()->IsActive());
763 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status); 765 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status);
764 // Click the item again and confirm that the panel is minimized. 766 // Click the item again and confirm that the panel is minimized.
765 item1_controller->Clicked(click_event); 767 item1_controller->ItemSelected(click_event);
766 EXPECT_TRUE(panel->GetBaseWindow()->IsMinimized()); 768 EXPECT_TRUE(panel->GetBaseWindow()->IsMinimized());
767 EXPECT_EQ(ash::STATUS_RUNNING, item1.status); 769 EXPECT_EQ(ash::STATUS_RUNNING, item1.status);
768 // Click the item again and confirm that the panel is activated. 770 // Click the item again and confirm that the panel is activated.
769 item1_controller->Clicked(click_event); 771 item1_controller->ItemSelected(click_event);
770 EXPECT_TRUE(panel->GetNativeWindow()->IsVisible()); 772 EXPECT_TRUE(panel->GetNativeWindow()->IsVisible());
771 EXPECT_TRUE(panel->GetBaseWindow()->IsActive()); 773 EXPECT_TRUE(panel->GetBaseWindow()->IsActive());
772 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status); 774 EXPECT_EQ(ash::STATUS_ACTIVE, item1.status);
773 } 775 }
774 776
775 IN_PROC_BROWSER_TEST_F(LauncherPlatformAppBrowserTest, BrowserActivation) { 777 IN_PROC_BROWSER_TEST_F(LauncherPlatformAppBrowserTest, BrowserActivation) {
776 int item_count = launcher_model()->item_count(); 778 int item_count = launcher_model()->item_count();
777 779
778 // First run app. 780 // First run app.
779 const Extension* extension1 = LoadAndLaunchPlatformApp("launch"); 781 const Extension* extension1 = LoadAndLaunchPlatformApp("launch");
(...skipping 575 matching lines...) Expand 10 before | Expand all | Expand 10 after
1355 EXPECT_EQ(ash::TYPE_APP_PANEL, item.type); 1357 EXPECT_EQ(ash::TYPE_APP_PANEL, item.type);
1356 EXPECT_EQ(ash::STATUS_RUNNING, item.status); 1358 EXPECT_EQ(ash::STATUS_RUNNING, item.status);
1357 EXPECT_EQ(LauncherItemController::TYPE_APP_PANEL, item_controller->type()); 1359 EXPECT_EQ(LauncherItemController::TYPE_APP_PANEL, item_controller->type());
1358 1360
1359 // App windows should go to attention state. 1361 // App windows should go to attention state.
1360 panel->GetNativeWindow()->SetProperty(aura::client::kDrawAttentionKey, true); 1362 panel->GetNativeWindow()->SetProperty(aura::client::kDrawAttentionKey, true);
1361 EXPECT_EQ(ash::STATUS_ATTENTION, item.status); 1363 EXPECT_EQ(ash::STATUS_ATTENTION, item.status);
1362 1364
1363 // Click the item and confirm that the panel is activated. 1365 // Click the item and confirm that the panel is activated.
1364 TestEvent click_event(ui::ET_MOUSE_PRESSED); 1366 TestEvent click_event(ui::ET_MOUSE_PRESSED);
1365 item_controller->Clicked(click_event); 1367 item_controller->ItemSelected(click_event);
1366 EXPECT_TRUE(panel->GetBaseWindow()->IsActive()); 1368 EXPECT_TRUE(panel->GetBaseWindow()->IsActive());
1367 EXPECT_EQ(ash::STATUS_ACTIVE, item.status); 1369 EXPECT_EQ(ash::STATUS_ACTIVE, item.status);
1368 1370
1369 // Active windows don't show attention. 1371 // Active windows don't show attention.
1370 panel->GetNativeWindow()->SetProperty(aura::client::kDrawAttentionKey, true); 1372 panel->GetNativeWindow()->SetProperty(aura::client::kDrawAttentionKey, true);
1371 EXPECT_EQ(ash::STATUS_ACTIVE, item.status); 1373 EXPECT_EQ(ash::STATUS_ACTIVE, item.status);
1372 } 1374 }
1373 1375
1374 // Checks that the browser Alt "tabbing" is properly done. 1376 // Checks that the browser Alt "tabbing" is properly done.
1375 IN_PROC_BROWSER_TEST_F(LauncherAppBrowserTestNoDefaultBrowser, 1377 IN_PROC_BROWSER_TEST_F(LauncherAppBrowserTestNoDefaultBrowser,
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
1461 // Check that the LRU browser list does only contain the original browser. 1463 // Check that the LRU browser list does only contain the original browser.
1462 BrowserList* ash_browser_list = 1464 BrowserList* ash_browser_list =
1463 BrowserList::GetInstance(chrome::HOST_DESKTOP_TYPE_ASH); 1465 BrowserList::GetInstance(chrome::HOST_DESKTOP_TYPE_ASH);
1464 BrowserList::const_reverse_iterator it = 1466 BrowserList::const_reverse_iterator it =
1465 ash_browser_list->begin_last_active(); 1467 ash_browser_list->begin_last_active();
1466 EXPECT_EQ(*it, browser()); 1468 EXPECT_EQ(*it, browser());
1467 ++it; 1469 ++it;
1468 EXPECT_EQ(it, ash_browser_list->end_last_active()); 1470 EXPECT_EQ(it, ash_browser_list->end_last_active());
1469 1471
1470 // Now request to either activate an existing app or create a new one. 1472 // Now request to either activate an existing app or create a new one.
1471 controller_->ItemSelected(*model_->ItemByID(shortcut_id), 1473 LauncherItemController* item_controller =
1472 ui::KeyEvent(ui::ET_KEY_RELEASED, 1474 controller_->GetLauncherItemController(shortcut_id);
1475 item_controller->ItemSelected(ui::KeyEvent(ui::ET_KEY_RELEASED,
1473 ui::VKEY_RETURN, 1476 ui::VKEY_RETURN,
1474 0, 1477 0,
1475 false)); 1478 false));
1476 1479
1477 // Check that we have set focus on the existing application and nothing new 1480 // Check that we have set focus on the existing application and nothing new
1478 // was created. 1481 // was created.
1479 EXPECT_EQ(2u, chrome::GetTotalBrowserCount()); 1482 EXPECT_EQ(2u, chrome::GetTotalBrowserCount());
1480 EXPECT_EQ(tab_count1, tab_strip->count()); 1483 EXPECT_EQ(tab_count1, tab_strip->count());
1481 EXPECT_EQ(tab_count2, tab_strip2->count()); 1484 EXPECT_EQ(tab_count2, tab_strip2->count());
1482 EXPECT_EQ(chrome::FindBrowserWithWindow(ash::wm::GetActiveWindow()), 1485 EXPECT_EQ(chrome::FindBrowserWithWindow(ash::wm::GetActiveWindow()),
(...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after
1771 // Now show overflow bubble. 1774 // Now show overflow bubble.
1772 test.ShowOverflowBubble(); 1775 test.ShowOverflowBubble();
1773 EXPECT_TRUE(launcher_->IsShowingOverflowBubble()); 1776 EXPECT_TRUE(launcher_->IsShowingOverflowBubble());
1774 1777
1775 // Unpin first pinned app and there should be no crash. 1778 // Unpin first pinned app and there should be no crash.
1776 controller_->UnpinAppWithID(std::string("fake_app_0")); 1779 controller_->UnpinAppWithID(std::string("fake_app_0"));
1777 1780
1778 test.RunMessageLoopUntilAnimationsDone(); 1781 test.RunMessageLoopUntilAnimationsDone();
1779 EXPECT_FALSE(launcher_->IsShowingOverflowBubble()); 1782 EXPECT_FALSE(launcher_->IsShowingOverflowBubble());
1780 } 1783 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698