| Index: chrome/browser/ui/ash/launcher/chrome_launcher_controller_unittest.cc
|
| diff --git a/chrome/browser/ui/ash/launcher/chrome_launcher_controller_unittest.cc b/chrome/browser/ui/ash/launcher/chrome_launcher_controller_unittest.cc
|
| index 92cdd60488b06e1538d96fe1cb64fd8b2ed50c4d..058a6d4ef2368929d826d6b0232f77d0772a7362 100644
|
| --- a/chrome/browser/ui/ash/launcher/chrome_launcher_controller_unittest.cc
|
| +++ b/chrome/browser/ui/ash/launcher/chrome_launcher_controller_unittest.cc
|
| @@ -33,6 +33,7 @@
|
| #include "chrome/browser/ui/ash/chrome_launcher_prefs.h"
|
| #include "chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_controller.h"
|
| #include "chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.h"
|
| +#include "chrome/browser/ui/ash/launcher/launcher_controller_helper.h"
|
| #include "chrome/browser/ui/ash/launcher/launcher_item_controller.h"
|
| #include "chrome/browser/ui/browser.h"
|
| #include "chrome/browser/ui/browser_commands.h"
|
| @@ -190,14 +191,13 @@ class TestAppIconLoaderImpl : public AppIconLoader {
|
| DISALLOW_COPY_AND_ASSIGN(TestAppIconLoaderImpl);
|
| };
|
|
|
| -// Test implementation of AppTabHelper.
|
| -class TestAppTabHelperImpl : public ChromeLauncherController::AppTabHelper {
|
| +// Test implementation of LauncherControllerHelper.
|
| +class TestLauncherControllerHelper : public LauncherControllerHelper {
|
| public:
|
| - TestAppTabHelperImpl() {}
|
| - ~TestAppTabHelperImpl() override {}
|
| + TestLauncherControllerHelper() : LauncherControllerHelper(nullptr) {}
|
| + ~TestLauncherControllerHelper() override {}
|
|
|
| - // Sets the id for the specified tab. The id is removed if Remove() is
|
| - // invoked.
|
| + // Sets the id for the specified tab.
|
| void SetAppID(content::WebContents* tab, const std::string& id) {
|
| tab_id_map_[tab] = id;
|
| }
|
| @@ -207,7 +207,7 @@ class TestAppTabHelperImpl : public ChromeLauncherController::AppTabHelper {
|
| return tab_id_map_.find(tab) != tab_id_map_.end();
|
| }
|
|
|
| - // AppTabHelper implementation:
|
| + // LauncherControllerHelper:
|
| std::string GetAppID(content::WebContents* tab) override {
|
| return tab_id_map_.find(tab) != tab_id_map_.end() ? tab_id_map_[tab] :
|
| std::string();
|
| @@ -231,7 +231,7 @@ class TestAppTabHelperImpl : public ChromeLauncherController::AppTabHelper {
|
|
|
| TabToStringMap tab_id_map_;
|
|
|
| - DISALLOW_COPY_AND_ASSIGN(TestAppTabHelperImpl);
|
| + DISALLOW_COPY_AND_ASSIGN(TestLauncherControllerHelper);
|
| };
|
|
|
| // Test implementation of a V2 app launcher item controller.
|
| @@ -501,8 +501,8 @@ class ChromeLauncherControllerTest : public BrowserWithTestWindowTest {
|
| launcher_controller_->SetAppIconLoadersForTest(loaders);
|
| }
|
|
|
| - void SetAppTabHelper(ChromeLauncherController::AppTabHelper* helper) {
|
| - launcher_controller_->SetAppTabHelperForTest(helper);
|
| + void SetLauncherControllerHelper(LauncherControllerHelper* helper) {
|
| + launcher_controller_->SetLauncherControllerHelperForTest(helper);
|
| }
|
|
|
| void SetShelfItemDelegateManager(ash::ShelfItemDelegateManager* manager) {
|
| @@ -940,21 +940,20 @@ class MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest
|
| }
|
|
|
| // Creates a running V1 application.
|
| - // Note that with the use of the app_tab_helper as done below, this is only
|
| - // usable with a single v1 application.
|
| + // Note that with the use of the launcher_controller_helper as done below,
|
| + // this is only usable with a single v1 application.
|
| V1App* CreateRunningV1App(Profile* profile,
|
| const std::string& app_name,
|
| const std::string& url) {
|
| V1App* v1_app = new V1App(profile, app_name);
|
| - // Create a new app tab helper and assign it to the launcher so that this
|
| - // app gets properly detected.
|
| - // TODO(skuhne): Create a more intelligent app tab helper which is able to
|
| - // detect all running apps properly.
|
| - TestAppTabHelperImpl* app_tab_helper = new TestAppTabHelperImpl;
|
| - app_tab_helper->SetAppID(
|
| - v1_app->browser()->tab_strip_model()->GetWebContentsAt(0),
|
| - app_name);
|
| - SetAppTabHelper(app_tab_helper);
|
| + // Create a new launcher controller helper and assign it to the launcher so
|
| + // that this app gets properly detected.
|
| + // TODO(skuhne): Create a more intelligent launcher contrller helper that is
|
| + // able to detect all running apps properly.
|
| + TestLauncherControllerHelper* helper = new TestLauncherControllerHelper;
|
| + helper->SetAppID(v1_app->browser()->tab_strip_model()->GetWebContentsAt(0),
|
| + app_name);
|
| + SetLauncherControllerHelper(helper);
|
|
|
| NavigateAndCommitActiveTabWithTitle(
|
| v1_app->browser(), GURL(url), ASCIIToUTF16(""));
|
| @@ -1590,8 +1589,7 @@ TEST_F(MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest,
|
| V1AppUpdateOnUserSwitchEdgecases2) {
|
| // Create a browser item in the LauncherController.
|
| InitLauncherController();
|
| - TestAppTabHelperImpl* app_tab_helper = new TestAppTabHelperImpl;
|
| - SetAppTabHelper(app_tab_helper);
|
| + SetLauncherControllerHelper(new TestLauncherControllerHelper);
|
|
|
| // First test: Create an app when the user is not active.
|
| std::string user2 = "user2";
|
| @@ -2753,8 +2751,8 @@ TEST_F(ChromeLauncherControllerTest, GmailOfflineMatching) {
|
| TEST_F(ChromeLauncherControllerTest, PersistLauncherItemPositions) {
|
| InitLauncherController();
|
|
|
| - TestAppTabHelperImpl* app_tab_helper = new TestAppTabHelperImpl;
|
| - SetAppTabHelper(app_tab_helper);
|
| + TestLauncherControllerHelper* helper = new TestLauncherControllerHelper;
|
| + SetLauncherControllerHelper(helper);
|
|
|
| EXPECT_EQ(ash::TYPE_APP_LIST, model_->items()[0].type);
|
| EXPECT_EQ(ash::TYPE_BROWSER_SHORTCUT, model_->items()[1].type);
|
| @@ -2764,8 +2762,8 @@ TEST_F(ChromeLauncherControllerTest, PersistLauncherItemPositions) {
|
| chrome::NewTab(browser());
|
| chrome::NewTab(browser());
|
| EXPECT_EQ(2, tab_strip_model->count());
|
| - app_tab_helper->SetAppID(tab_strip_model->GetWebContentsAt(0), "1");
|
| - app_tab_helper->SetAppID(tab_strip_model->GetWebContentsAt(1), "2");
|
| + helper->SetAppID(tab_strip_model->GetWebContentsAt(0), "1");
|
| + helper->SetAppID(tab_strip_model->GetWebContentsAt(1), "2");
|
|
|
| EXPECT_FALSE(launcher_controller_->IsAppPinned("1"));
|
| launcher_controller_->PinAppWithID("1");
|
| @@ -2798,10 +2796,10 @@ TEST_F(ChromeLauncherControllerTest, PersistLauncherItemPositions) {
|
| AddAppListLauncherItem();
|
| launcher_controller_.reset(
|
| ChromeLauncherController::CreateInstance(profile(), model_.get()));
|
| - app_tab_helper = new TestAppTabHelperImpl;
|
| - app_tab_helper->SetAppID(tab_strip_model->GetWebContentsAt(0), "1");
|
| - app_tab_helper->SetAppID(tab_strip_model->GetWebContentsAt(1), "2");
|
| - SetAppTabHelper(app_tab_helper);
|
| + helper = new TestLauncherControllerHelper;
|
| + helper->SetAppID(tab_strip_model->GetWebContentsAt(0), "1");
|
| + helper->SetAppID(tab_strip_model->GetWebContentsAt(1), "2");
|
| + SetLauncherControllerHelper(helper);
|
| if (!ash::Shell::HasInstance()) {
|
| item_delegate_manager_ = new ash::ShelfItemDelegateManager(model_.get());
|
| SetShelfItemDelegateManager(item_delegate_manager_);
|
| @@ -2823,9 +2821,9 @@ TEST_F(ChromeLauncherControllerTest, PersistPinned) {
|
| TabStripModel* tab_strip_model = browser()->tab_strip_model();
|
| EXPECT_EQ(1, tab_strip_model->count());
|
|
|
| - TestAppTabHelperImpl* app_tab_helper = new TestAppTabHelperImpl;
|
| - app_tab_helper->SetAppID(tab_strip_model->GetWebContentsAt(0), "1");
|
| - SetAppTabHelper(app_tab_helper);
|
| + TestLauncherControllerHelper* helper = new TestLauncherControllerHelper;
|
| + helper->SetAppID(tab_strip_model->GetWebContentsAt(0), "1");
|
| + SetLauncherControllerHelper(helper);
|
|
|
| // app_icon_loader is owned by ChromeLauncherController.
|
| TestAppIconLoaderImpl* app_icon_loader = new TestAppIconLoaderImpl;
|
| @@ -2856,9 +2854,9 @@ TEST_F(ChromeLauncherControllerTest, PersistPinned) {
|
| AddAppListLauncherItem();
|
| launcher_controller_.reset(
|
| ChromeLauncherController::CreateInstance(profile(), model_.get()));
|
| - app_tab_helper = new TestAppTabHelperImpl;
|
| - app_tab_helper->SetAppID(tab_strip_model->GetWebContentsAt(0), "1");
|
| - SetAppTabHelper(app_tab_helper);
|
| + helper = new TestLauncherControllerHelper;
|
| + helper->SetAppID(tab_strip_model->GetWebContentsAt(0), "1");
|
| + SetLauncherControllerHelper(helper);
|
| // app_icon_loader is owned by ChromeLauncherController.
|
| app_icon_loader = new TestAppIconLoaderImpl;
|
| app_icon_loader->AddSupportedApp("1");
|
|
|