OLD | NEW |
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_impl.h" | 5 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include "ash/common/ash_switches.h" | 9 #include "ash/common/ash_switches.h" |
| 10 #include "ash/common/shelf/app_list_button.h" |
10 #include "ash/common/shelf/shelf_constants.h" | 11 #include "ash/common/shelf/shelf_constants.h" |
11 #include "ash/common/shelf/shelf_model.h" | 12 #include "ash/common/shelf/shelf_model.h" |
12 #include "ash/common/wm/window_state.h" | 13 #include "ash/common/wm/window_state.h" |
13 #include "ash/shelf/app_list_button.h" | 14 #include "ash/common/wm_shell.h" |
14 #include "ash/shelf/shelf.h" | 15 #include "ash/shelf/shelf.h" |
15 #include "ash/shelf/shelf_button.h" | 16 #include "ash/shelf/shelf_button.h" |
16 #include "ash/shelf/shelf_util.h" | 17 #include "ash/shelf/shelf_util.h" |
17 #include "ash/shelf/shelf_view.h" | 18 #include "ash/shelf/shelf_view.h" |
18 #include "ash/shell.h" | 19 #include "ash/shell.h" |
19 #include "ash/test/shelf_test_api.h" | 20 #include "ash/test/shelf_test_api.h" |
20 #include "ash/test/shelf_view_test_api.h" | 21 #include "ash/test/shelf_view_test_api.h" |
21 #include "ash/test/shell_test_api.h" | 22 #include "ash/test/shell_test_api.h" |
22 #include "ash/wm/window_state_aura.h" | 23 #include "ash/wm/window_state_aura.h" |
23 #include "ash/wm/window_util.h" | 24 #include "ash/wm/window_util.h" |
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
264 | 265 |
265 class ShelfAppBrowserTest : public ExtensionBrowserTest { | 266 class ShelfAppBrowserTest : public ExtensionBrowserTest { |
266 protected: | 267 protected: |
267 ShelfAppBrowserTest() : shelf_(NULL), model_(NULL), controller_(NULL) { | 268 ShelfAppBrowserTest() : shelf_(NULL), model_(NULL), controller_(NULL) { |
268 } | 269 } |
269 | 270 |
270 ~ShelfAppBrowserTest() override {} | 271 ~ShelfAppBrowserTest() override {} |
271 | 272 |
272 void RunTestOnMainThreadLoop() override { | 273 void RunTestOnMainThreadLoop() override { |
273 shelf_ = ash::Shelf::ForPrimaryDisplay(); | 274 shelf_ = ash::Shelf::ForPrimaryDisplay(); |
274 model_ = ash::test::ShellTestApi(ash::Shell::GetInstance()).shelf_model(); | 275 model_ = ash::WmShell::Get()->shelf_model(); |
275 controller_ = GetChromeLauncherControllerImpl(); | 276 controller_ = GetChromeLauncherControllerImpl(); |
276 return ExtensionBrowserTest::RunTestOnMainThreadLoop(); | 277 return ExtensionBrowserTest::RunTestOnMainThreadLoop(); |
277 } | 278 } |
278 | 279 |
279 size_t NumberOfDetectedLauncherBrowsers(bool show_all_tabs) { | 280 size_t NumberOfDetectedLauncherBrowsers(bool show_all_tabs) { |
280 LauncherItemController* item_controller = | 281 LauncherItemController* item_controller = |
281 controller_->GetBrowserShortcutLauncherItemController(); | 282 controller_->GetBrowserShortcutLauncherItemController(); |
282 int items = item_controller->GetApplicationList( | 283 int items = item_controller->GetApplicationList( |
283 show_all_tabs ? ui::EF_SHIFT_DOWN : 0).size(); | 284 show_all_tabs ? ui::EF_SHIFT_DOWN : 0).size(); |
284 // If we have at least one item, we have also a title which we remove here. | 285 // If we have at least one item, we have also a title which we remove here. |
(...skipping 1242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1527 EXPECT_TRUE(panel->GetBaseWindow()->IsActive()); | 1528 EXPECT_TRUE(panel->GetBaseWindow()->IsActive()); |
1528 EXPECT_EQ(ash::STATUS_ACTIVE, item.status); | 1529 EXPECT_EQ(ash::STATUS_ACTIVE, item.status); |
1529 | 1530 |
1530 // Active windows don't show attention. | 1531 // Active windows don't show attention. |
1531 panel->GetNativeWindow()->SetProperty(aura::client::kDrawAttentionKey, true); | 1532 panel->GetNativeWindow()->SetProperty(aura::client::kDrawAttentionKey, true); |
1532 EXPECT_EQ(ash::STATUS_ACTIVE, item.status); | 1533 EXPECT_EQ(ash::STATUS_ACTIVE, item.status); |
1533 } | 1534 } |
1534 | 1535 |
1535 IN_PROC_BROWSER_TEST_F(LauncherPlatformAppBrowserTest, | 1536 IN_PROC_BROWSER_TEST_F(LauncherPlatformAppBrowserTest, |
1536 ShowInShelfWindowsWithWindowKeySet) { | 1537 ShowInShelfWindowsWithWindowKeySet) { |
1537 ash::ShelfModel* shelf_model = ash::Shell::GetInstance()->shelf_model(); | 1538 ash::ShelfModel* shelf_model = ash::WmShell::Get()->shelf_model(); |
1538 | 1539 |
1539 // Add a window with shelf True, close it | 1540 // Add a window with shelf True, close it |
1540 int item_count = shelf_model->item_count(); | 1541 int item_count = shelf_model->item_count(); |
1541 const Extension* extension = LoadAndLaunchPlatformApp("launch", "Launched"); | 1542 const Extension* extension = LoadAndLaunchPlatformApp("launch", "Launched"); |
1542 AppWindow::CreateParams params; | 1543 AppWindow::CreateParams params; |
1543 | 1544 |
1544 params.show_in_shelf = true; | 1545 params.show_in_shelf = true; |
1545 params.window_key = "window1"; | 1546 params.window_key = "window1"; |
1546 AppWindow* window1 = | 1547 AppWindow* window1 = |
1547 CreateAppWindowFromParams(browser()->profile(), extension, params); | 1548 CreateAppWindowFromParams(browser()->profile(), extension, params); |
(...skipping 714 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2262 TabStripModel::CLOSE_NONE); | 2263 TabStripModel::CLOSE_NONE); |
2263 // Make sure that the app is really gone. | 2264 // Make sure that the app is really gone. |
2264 base::RunLoop().RunUntilIdle(); | 2265 base::RunLoop().RunUntilIdle(); |
2265 EXPECT_EQ(ash::STATUS_CLOSED, model_->ItemByID(id)->status); | 2266 EXPECT_EQ(ash::STATUS_CLOSED, model_->ItemByID(id)->status); |
2266 } | 2267 } |
2267 | 2268 |
2268 // Checks that a opening a settings window creates a new launcher item. | 2269 // Checks that a opening a settings window creates a new launcher item. |
2269 IN_PROC_BROWSER_TEST_F(ShelfAppBrowserTest, SettingsWindow) { | 2270 IN_PROC_BROWSER_TEST_F(ShelfAppBrowserTest, SettingsWindow) { |
2270 chrome::SettingsWindowManager* settings_manager = | 2271 chrome::SettingsWindowManager* settings_manager = |
2271 chrome::SettingsWindowManager::GetInstance(); | 2272 chrome::SettingsWindowManager::GetInstance(); |
2272 ash::ShelfModel* shelf_model = ash::Shell::GetInstance()->shelf_model(); | 2273 ash::ShelfModel* shelf_model = ash::WmShell::Get()->shelf_model(); |
2273 | 2274 |
2274 // Get the number of items in the shelf and browser menu. | 2275 // Get the number of items in the shelf and browser menu. |
2275 int item_count = shelf_model->item_count(); | 2276 int item_count = shelf_model->item_count(); |
2276 size_t browser_count = NumberOfDetectedLauncherBrowsers(false); | 2277 size_t browser_count = NumberOfDetectedLauncherBrowsers(false); |
2277 | 2278 |
2278 // Open a settings window. Number of browser items should remain unchanged, | 2279 // Open a settings window. Number of browser items should remain unchanged, |
2279 // number of shelf items should increase. | 2280 // number of shelf items should increase. |
2280 settings_manager->ShowChromePageForProfile( | 2281 settings_manager->ShowChromePageForProfile( |
2281 browser()->profile(), | 2282 browser()->profile(), |
2282 chrome::GetSettingsUrl(std::string())); | 2283 chrome::GetSettingsUrl(std::string())); |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2408 // Close all windows. | 2409 // Close all windows. |
2409 CloseBrowserWindow(browser(), menu1.get(), LauncherContextMenu::MENU_CLOSE); | 2410 CloseBrowserWindow(browser(), menu1.get(), LauncherContextMenu::MENU_CLOSE); |
2410 EXPECT_EQ(0u, BrowserList::GetInstance()->size()); | 2411 EXPECT_EQ(0u, BrowserList::GetInstance()->size()); |
2411 | 2412 |
2412 // Check if "Close" is removed from the context menu. | 2413 // Check if "Close" is removed from the context menu. |
2413 std::unique_ptr<LauncherContextMenu> menu2 = | 2414 std::unique_ptr<LauncherContextMenu> menu2 = |
2414 CreateLauncherContextMenu(ash::TYPE_BROWSER_SHORTCUT); | 2415 CreateLauncherContextMenu(ash::TYPE_BROWSER_SHORTCUT); |
2415 ASSERT_FALSE( | 2416 ASSERT_FALSE( |
2416 IsItemPresentInMenu(menu2.get(), LauncherContextMenu::MENU_CLOSE)); | 2417 IsItemPresentInMenu(menu2.get(), LauncherContextMenu::MENU_CLOSE)); |
2417 } | 2418 } |
OLD | NEW |