| 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 e7b8c5f013565777babd7093a1effd2b85256b4c..ec40684d34cc949ad0a3aeb91b5c379d1cf4e6c9 100644
|
| --- a/chrome/browser/ui/ash/launcher/chrome_launcher_controller_unittest.cc
|
| +++ b/chrome/browser/ui/ash/launcher/chrome_launcher_controller_unittest.cc
|
| @@ -5,7 +5,9 @@
|
| #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h"
|
|
|
| #include <stddef.h>
|
| +
|
| #include <algorithm>
|
| +#include <memory>
|
| #include <set>
|
| #include <string>
|
| #include <utility>
|
| @@ -21,7 +23,7 @@
|
| #include "base/compiler_specific.h"
|
| #include "base/files/file_path.h"
|
| #include "base/macros.h"
|
| -#include "base/memory/scoped_ptr.h"
|
| +#include "base/memory/ptr_util.h"
|
| #include "base/message_loop/message_loop.h"
|
| #include "base/strings/utf_string_conversions.h"
|
| #include "base/values.h"
|
| @@ -455,10 +457,11 @@ class ChromeLauncherControllerTest : public BrowserWithTestWindowTest {
|
| return CreateTestBrowserWindowAura();
|
| }
|
|
|
| - scoped_ptr<Browser> CreateBrowserWithTestWindowForProfile(Profile* profile) {
|
| + std::unique_ptr<Browser> CreateBrowserWithTestWindowForProfile(
|
| + Profile* profile) {
|
| TestBrowserWindow* browser_window = CreateTestBrowserWindowAura();
|
| new TestBrowserWindowOwner(browser_window);
|
| - return make_scoped_ptr(
|
| + return base::WrapUnique(
|
| CreateBrowser(profile, Browser::TYPE_TABBED, false, browser_window));
|
| }
|
|
|
| @@ -483,15 +486,15 @@ class ChromeLauncherControllerTest : public BrowserWithTestWindowTest {
|
| browser()->window()->Show();
|
| }
|
|
|
| - void SetAppIconLoader(scoped_ptr<AppIconLoader> loader) {
|
| - std::vector<scoped_ptr<AppIconLoader>> loaders;
|
| + void SetAppIconLoader(std::unique_ptr<AppIconLoader> loader) {
|
| + std::vector<std::unique_ptr<AppIconLoader>> loaders;
|
| loaders.push_back(std::move(loader));
|
| launcher_controller_->SetAppIconLoadersForTest(loaders);
|
| }
|
|
|
| - void SetAppIconLoaders(scoped_ptr<AppIconLoader> loader1,
|
| - scoped_ptr<AppIconLoader> loader2) {
|
| - std::vector<scoped_ptr<AppIconLoader>> loaders;
|
| + void SetAppIconLoaders(std::unique_ptr<AppIconLoader> loader1,
|
| + std::unique_ptr<AppIconLoader> loader2) {
|
| + std::vector<std::unique_ptr<AppIconLoader>> loaders;
|
| loaders.push_back(std::move(loader1));
|
| loaders.push_back(std::move(loader2));
|
| launcher_controller_->SetAppIconLoadersForTest(loaders);
|
| @@ -689,9 +692,9 @@ class ChromeLauncherControllerTest : public BrowserWithTestWindowTest {
|
| #if defined(OS_CHROMEOS)
|
| ArcAppTest arc_test_;
|
| #endif // defined(OS_CHROMEOS)
|
| - scoped_ptr<ChromeLauncherController> launcher_controller_;
|
| - scoped_ptr<TestShelfModelObserver> model_observer_;
|
| - scoped_ptr<ash::ShelfModel> model_;
|
| + std::unique_ptr<ChromeLauncherController> launcher_controller_;
|
| + std::unique_ptr<TestShelfModelObserver> model_observer_;
|
| + std::unique_ptr<ash::ShelfModel> model_;
|
|
|
| // |item_delegate_manager_| owns |test_controller_|.
|
| LauncherItemController* test_controller_;
|
| @@ -702,7 +705,7 @@ class ChromeLauncherControllerTest : public BrowserWithTestWindowTest {
|
|
|
| private:
|
| TestBrowserWindow* CreateTestBrowserWindowAura() {
|
| - scoped_ptr<aura::Window> window(new aura::Window(nullptr));
|
| + std::unique_ptr<aura::Window> window(new aura::Window(nullptr));
|
| window->set_id(0);
|
| window->SetType(ui::wm::WINDOW_TYPE_NORMAL);
|
| window->Init(ui::LAYER_TEXTURED);
|
| @@ -777,10 +780,10 @@ class V1App : public TestBrowserWindow {
|
|
|
| private:
|
| // The associated browser with this app.
|
| - scoped_ptr<Browser> browser_;
|
| + std::unique_ptr<Browser> browser_;
|
|
|
| // The native window we use.
|
| - scoped_ptr<aura::Window> native_window_;
|
| + std::unique_ptr<aura::Window> native_window_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(V1App);
|
| };
|
| @@ -815,7 +818,7 @@ class V2App {
|
| extensions::AppWindow* window() { return window_; }
|
|
|
| private:
|
| - scoped_ptr<content::WebContents> creator_web_contents_;
|
| + std::unique_ptr<content::WebContents> creator_web_contents_;
|
|
|
| // The app window which represents the application. Note that the window
|
| // deletes itself asynchronously after window_->GetBaseWindow()->Close() gets
|
| @@ -920,10 +923,12 @@ class MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest
|
| }
|
|
|
| // Creates a browser with a |profile| and load a tab with a |title| and |url|.
|
| - scoped_ptr<Browser> CreateBrowserAndTabWithProfile(Profile* profile,
|
| - const std::string& title,
|
| - const std::string& url) {
|
| - scoped_ptr<Browser> browser(CreateBrowserWithTestWindowForProfile(profile));
|
| + std::unique_ptr<Browser> CreateBrowserAndTabWithProfile(
|
| + Profile* profile,
|
| + const std::string& title,
|
| + const std::string& url) {
|
| + std::unique_ptr<Browser> browser(
|
| + CreateBrowserWithTestWindowForProfile(profile));
|
| chrome::NewTab(browser.get());
|
|
|
| browser->window()->Show();
|
| @@ -981,8 +986,8 @@ class MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest
|
| user_manager::UserManager::Get());
|
| }
|
|
|
| - scoped_ptr<TestingProfileManager> profile_manager_;
|
| - scoped_ptr<chromeos::ScopedUserManagerEnabler> user_manager_enabler_;
|
| + std::unique_ptr<TestingProfileManager> profile_manager_;
|
| + std::unique_ptr<chromeos::ScopedUserManagerEnabler> user_manager_enabler_;
|
|
|
| ash::test::TestShellDelegate* shell_delegate_;
|
|
|
| @@ -1532,8 +1537,8 @@ TEST_F(MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest,
|
| EXPECT_EQ(2, model_->item_count());
|
| {
|
| // Create a "windowed gmail app".
|
| - scoped_ptr<V1App> v1_app(CreateRunningV1App(
|
| - profile(), extension_misc::kGmailAppId, gmail_url));
|
| + std::unique_ptr<V1App> v1_app(
|
| + CreateRunningV1App(profile(), extension_misc::kGmailAppId, gmail_url));
|
| EXPECT_EQ(3, model_->item_count());
|
|
|
| // After switching to a second user the item should be gone.
|
| @@ -1569,8 +1574,8 @@ TEST_F(MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest,
|
| multi_user_util::GetAccountIdFromProfile(profile()));
|
| {
|
| // Create a "windowed gmail app".
|
| - scoped_ptr<V1App> v1_app(CreateRunningV1App(
|
| - profile2, extension_misc::kGmailAppId, gmail_url));
|
| + std::unique_ptr<V1App> v1_app(
|
| + CreateRunningV1App(profile2, extension_misc::kGmailAppId, gmail_url));
|
| EXPECT_EQ(2, model_->item_count());
|
|
|
| // However - switching to the user should show it.
|
| @@ -1608,10 +1613,8 @@ TEST_F(MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest,
|
| multi_user_util::GetAccountIdFromProfile(profile2));
|
| {
|
| // Create a "windowed gmail app".
|
| - scoped_ptr<V1App> v1_app(CreateRunningV1App(
|
| - profile(),
|
| - extension_misc::kGmailAppId,
|
| - kGmailLaunchURL));
|
| + std::unique_ptr<V1App> v1_app(CreateRunningV1App(
|
| + profile(), extension_misc::kGmailAppId, kGmailLaunchURL));
|
| EXPECT_EQ(3, model_->item_count());
|
|
|
| // Transfer the app to the other screen and switch users.
|
| @@ -1628,10 +1631,8 @@ TEST_F(MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest,
|
| EXPECT_EQ(2, model_->item_count());
|
| {
|
| // Create a "windowed gmail app".
|
| - scoped_ptr<V1App> v1_app(CreateRunningV1App(
|
| - profile(),
|
| - extension_misc::kGmailAppId,
|
| - kGmailLaunchURL));
|
| + std::unique_ptr<V1App> v1_app(CreateRunningV1App(
|
| + profile(), extension_misc::kGmailAppId, kGmailLaunchURL));
|
| EXPECT_EQ(3, model_->item_count());
|
| }
|
| SwitchActiveUser(account_id2);
|
| @@ -1656,8 +1657,8 @@ TEST_F(MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest,
|
| SwitchActiveUser(account_id2);
|
| {
|
| // Create a "windowed gmail app".
|
| - scoped_ptr<V1App> v1_app(CreateRunningV1App(
|
| - profile(), extension_misc::kGmailAppId, gmail_url));
|
| + std::unique_ptr<V1App> v1_app(
|
| + CreateRunningV1App(profile(), extension_misc::kGmailAppId, gmail_url));
|
| EXPECT_EQ(2, model_->item_count());
|
|
|
| // However - switching to the user should show it.
|
| @@ -1696,7 +1697,7 @@ TEST_F(MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest,
|
|
|
| // Create a browser window with a native window for the current user.
|
| Browser::CreateParams params(profile());
|
| - scoped_ptr<Browser> browser(
|
| + std::unique_ptr<Browser> browser(
|
| chrome::CreateBrowserWithAuraTestWindowForParams(nullptr, ¶ms));
|
| BrowserWindow* browser_window = browser->window();
|
| aura::Window* window = browser_window->GetNativeWindow();
|
| @@ -2136,8 +2137,9 @@ bool CheckMenuCreation(ChromeLauncherController* controller,
|
| EXPECT_FALSE(items[i]->HasLeadingSeparator());
|
| }
|
|
|
| - scoped_ptr<ash::ShelfMenuModel> menu(new LauncherApplicationMenuItemModel(
|
| - controller->GetApplicationList(item, 0)));
|
| + std::unique_ptr<ash::ShelfMenuModel> menu(
|
| + new LauncherApplicationMenuItemModel(
|
| + controller->GetApplicationList(item, 0)));
|
| // The first element in the menu is a spacing separator. On some systems
|
| // (e.g. Windows) such things do not exist. As such we check the existence
|
| // and adjust dynamically.
|
| @@ -2178,7 +2180,7 @@ TEST_F(ChromeLauncherControllerTest, BrowserMenuGeneration) {
|
| launcher_controller_.get(), item_browser, 1, one_menu_item, true));
|
|
|
| // Create one more browser/window and check that one more was added.
|
| - scoped_ptr<Browser> browser2(
|
| + std::unique_ptr<Browser> browser2(
|
| CreateBrowserWithTestWindowForProfile(profile()));
|
| chrome::NewTab(browser2.get());
|
| browser2->window()->Show();
|
| @@ -2228,7 +2230,7 @@ TEST_F(MultiProfileMultiBrowserShelfLayoutChromeLauncherControllerTest,
|
| TestingProfile* profile2 = CreateMultiUserProfile(user2);
|
| const AccountId account_id2(
|
| multi_user_util::GetAccountIdFromProfile(profile2));
|
| - scoped_ptr<Browser> browser2(
|
| + std::unique_ptr<Browser> browser2(
|
| CreateBrowserAndTabWithProfile(profile2, user2, "http://test2"));
|
| base::string16 one_menu_item2[] = { ASCIIToUTF16(user2) };
|
| EXPECT_TRUE(CheckMenuCreation(
|
| @@ -2624,8 +2626,9 @@ TEST_F(ChromeLauncherControllerTest, V1AppMenuExecution) {
|
| // Execute the second item in the list (which shouldn't do anything since that
|
| // item is per definition already the active tab).
|
| {
|
| - scoped_ptr<ash::ShelfMenuModel> menu(new LauncherApplicationMenuItemModel(
|
| - launcher_controller_->GetApplicationList(item_gmail, 0)));
|
| + std::unique_ptr<ash::ShelfMenuModel> menu(
|
| + new LauncherApplicationMenuItemModel(
|
| + launcher_controller_->GetApplicationList(item_gmail, 0)));
|
| // The first element in the menu is a spacing separator. On some systems
|
| // (e.g. Windows) such things do not exist. As such we check the existence
|
| // and adjust dynamically.
|
| @@ -2637,8 +2640,9 @@ TEST_F(ChromeLauncherControllerTest, V1AppMenuExecution) {
|
|
|
| // Execute the first item.
|
| {
|
| - scoped_ptr<ash::ShelfMenuModel> menu(new LauncherApplicationMenuItemModel(
|
| - launcher_controller_->GetApplicationList(item_gmail, 0)));
|
| + std::unique_ptr<ash::ShelfMenuModel> menu(
|
| + new LauncherApplicationMenuItemModel(
|
| + launcher_controller_->GetApplicationList(item_gmail, 0)));
|
| int first_item =
|
| (menu->GetTypeAt(0) == ui::MenuModel::TYPE_SEPARATOR) ? 1 : 0;
|
| menu->ActivatedAt(first_item + 2);
|
| @@ -2698,7 +2702,7 @@ TEST_F(ChromeLauncherControllerTest, AppPanels) {
|
| // app_icon_loader is owned by ChromeLauncherController.
|
| TestAppIconLoaderImpl* app_icon_loader = new TestAppIconLoaderImpl();
|
| app_icon_loader->AddSupportedApp(app_id);
|
| - SetAppIconLoader(scoped_ptr<AppIconLoader>(app_icon_loader));
|
| + SetAppIconLoader(std::unique_ptr<AppIconLoader>(app_icon_loader));
|
|
|
| // Test adding an app panel
|
| AppWindowLauncherItemController* app_panel_controller =
|
| @@ -2880,7 +2884,7 @@ TEST_F(ChromeLauncherControllerTest, PersistPinned) {
|
| // app_icon_loader is owned by ChromeLauncherController.
|
| TestAppIconLoaderImpl* app_icon_loader = new TestAppIconLoaderImpl;
|
| app_icon_loader->AddSupportedApp("1");
|
| - SetAppIconLoader(scoped_ptr<AppIconLoader>(app_icon_loader));
|
| + SetAppIconLoader(std::unique_ptr<AppIconLoader>(app_icon_loader));
|
| EXPECT_EQ(0, app_icon_loader->fetch_count());
|
|
|
| launcher_controller_->PinAppWithID("1");
|
| @@ -2912,7 +2916,7 @@ TEST_F(ChromeLauncherControllerTest, PersistPinned) {
|
| // app_icon_loader is owned by ChromeLauncherController.
|
| app_icon_loader = new TestAppIconLoaderImpl;
|
| app_icon_loader->AddSupportedApp("1");
|
| - SetAppIconLoader(scoped_ptr<AppIconLoader>(app_icon_loader));
|
| + SetAppIconLoader(std::unique_ptr<AppIconLoader>(app_icon_loader));
|
| if (!ash::Shell::HasInstance()) {
|
| item_delegate_manager_ = new ash::ShelfItemDelegateManager(model_.get());
|
| SetShelfItemDelegateManager(item_delegate_manager_);
|
| @@ -2941,8 +2945,8 @@ TEST_F(ChromeLauncherControllerTest, MultipleAppIconLoaders) {
|
| TestAppIconLoaderImpl* app_icon_loader2 = new TestAppIconLoaderImpl();
|
| app_icon_loader1->AddSupportedApp(app_id1);
|
| app_icon_loader2->AddSupportedApp(app_id2);
|
| - SetAppIconLoaders(scoped_ptr<AppIconLoader>(app_icon_loader1),
|
| - scoped_ptr<AppIconLoader>(app_icon_loader2));
|
| + SetAppIconLoaders(std::unique_ptr<AppIconLoader>(app_icon_loader1),
|
| + std::unique_ptr<AppIconLoader>(app_icon_loader2));
|
|
|
| AppWindowLauncherItemController* app_panel_controller3 =
|
| new ExtensionAppWindowLauncherItemController(
|
|
|