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 <algorithm> | 9 #include <algorithm> |
10 #include <map> | 10 #include <map> |
(...skipping 30 matching lines...) Expand all Loading... |
41 #include "chrome/browser/chromeos/login/users/fake_chrome_user_manager.h" | 41 #include "chrome/browser/chromeos/login/users/fake_chrome_user_manager.h" |
42 #include "chrome/browser/chromeos/login/users/scoped_user_manager_enabler.h" | 42 #include "chrome/browser/chromeos/login/users/scoped_user_manager_enabler.h" |
43 #include "chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h" | 43 #include "chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h" |
44 #include "chrome/browser/extensions/extension_service.h" | 44 #include "chrome/browser/extensions/extension_service.h" |
45 #include "chrome/browser/extensions/test_extension_system.h" | 45 #include "chrome/browser/extensions/test_extension_system.h" |
46 #include "chrome/browser/lifetime/scoped_keep_alive.h" | 46 #include "chrome/browser/lifetime/scoped_keep_alive.h" |
47 #include "chrome/browser/ui/app_list/app_list_syncable_service_factory.h" | 47 #include "chrome/browser/ui/app_list/app_list_syncable_service_factory.h" |
48 #include "chrome/browser/ui/app_list/arc/arc_app_list_prefs.h" | 48 #include "chrome/browser/ui/app_list/arc/arc_app_list_prefs.h" |
49 #include "chrome/browser/ui/app_list/arc/arc_app_test.h" | 49 #include "chrome/browser/ui/app_list/arc/arc_app_test.h" |
50 #include "chrome/browser/ui/app_list/arc/arc_app_utils.h" | 50 #include "chrome/browser/ui/app_list/arc/arc_app_utils.h" |
| 51 #include "chrome/browser/ui/app_list/arc/arc_default_app_list.h" |
51 #include "chrome/browser/ui/apps/chrome_app_delegate.h" | 52 #include "chrome/browser/ui/apps/chrome_app_delegate.h" |
52 #include "chrome/browser/ui/ash/chrome_launcher_prefs.h" | 53 #include "chrome/browser/ui/ash/chrome_launcher_prefs.h" |
53 #include "chrome/browser/ui/ash/launcher/app_window_launcher_controller.h" | 54 #include "chrome/browser/ui/ash/launcher/app_window_launcher_controller.h" |
| 55 #include "chrome/browser/ui/ash/launcher/arc_app_deferred_launcher_controller.h" |
54 #include "chrome/browser/ui/ash/launcher/browser_status_monitor.h" | 56 #include "chrome/browser/ui/ash/launcher/browser_status_monitor.h" |
55 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller_util.h" | 57 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller_util.h" |
56 #include "chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_cont
roller.h" | 58 #include "chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_cont
roller.h" |
57 #include "chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.h" | 59 #include "chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.h" |
58 #include "chrome/browser/ui/ash/launcher/launcher_controller_helper.h" | 60 #include "chrome/browser/ui/ash/launcher/launcher_controller_helper.h" |
59 #include "chrome/browser/ui/ash/launcher/launcher_item_controller.h" | 61 #include "chrome/browser/ui/ash/launcher/launcher_item_controller.h" |
60 #include "chrome/browser/ui/ash/multi_user/multi_user_util.h" | 62 #include "chrome/browser/ui/ash/multi_user/multi_user_util.h" |
61 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h" | 63 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h" |
62 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager_chromeos.h" | 64 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager_chromeos.h" |
63 #include "chrome/browser/ui/browser.h" | 65 #include "chrome/browser/ui/browser.h" |
(...skipping 3474 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3538 | 3540 |
3539 views::Widget* window_none_ = nullptr; | 3541 views::Widget* window_none_ = nullptr; |
3540 views::Widget* window_landscape_ = nullptr; | 3542 views::Widget* window_landscape_ = nullptr; |
3541 views::Widget* window_portrait_ = nullptr; | 3543 views::Widget* window_portrait_ = nullptr; |
3542 views::Widget* window_current_ = nullptr; | 3544 views::Widget* window_current_ = nullptr; |
3543 | 3545 |
3544 private: | 3546 private: |
3545 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerOrientationTest); | 3547 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerOrientationTest); |
3546 }; | 3548 }; |
3547 | 3549 |
| 3550 class ChromeLauncherControllerArcDefaultAppsTest |
| 3551 : public ChromeLauncherControllerImplTest { |
| 3552 public: |
| 3553 ChromeLauncherControllerArcDefaultAppsTest() {} |
| 3554 ~ChromeLauncherControllerArcDefaultAppsTest() override {} |
| 3555 |
| 3556 protected: |
| 3557 void SetUp() override { |
| 3558 ArcDefaultAppList::UseTestAppsDirectory(); |
| 3559 ChromeLauncherControllerImplTest::SetUp(); |
| 3560 } |
| 3561 |
| 3562 private: |
| 3563 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerArcDefaultAppsTest); |
| 3564 }; |
| 3565 |
3548 } // namespace | 3566 } // namespace |
3549 | 3567 |
3550 TEST_F(ChromeLauncherControllerOrientationTest, ArcOrientationLock) { | 3568 TEST_F(ChromeLauncherControllerOrientationTest, ArcOrientationLock) { |
3551 ASSERT_TRUE(display::Display::HasInternalDisplay()); | 3569 ASSERT_TRUE(display::Display::HasInternalDisplay()); |
3552 | 3570 |
3553 extension_service_->AddExtension(arc_support_host_.get()); | 3571 extension_service_->AddExtension(arc_support_host_.get()); |
3554 arc_test_.SetUp(profile()); | 3572 arc_test_.SetUp(profile()); |
3555 EnableArc(true); | 3573 EnableArc(true); |
3556 EnableTabletMode(true); | 3574 EnableTabletMode(true); |
3557 | 3575 |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3701 EXPECT_FALSE(controller->rotation_locked()); | 3719 EXPECT_FALSE(controller->rotation_locked()); |
3702 EXPECT_EQ(display::Display::ROTATE_0, | 3720 EXPECT_EQ(display::Display::ROTATE_0, |
3703 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); | 3721 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); |
3704 | 3722 |
3705 NotifyOnTaskOrientationLockRequested(task_id_current_, | 3723 NotifyOnTaskOrientationLockRequested(task_id_current_, |
3706 OrientationLock::CURRENT); | 3724 OrientationLock::CURRENT); |
3707 EXPECT_TRUE(controller->rotation_locked()); | 3725 EXPECT_TRUE(controller->rotation_locked()); |
3708 EXPECT_EQ(display::Display::ROTATE_0, | 3726 EXPECT_EQ(display::Display::ROTATE_0, |
3709 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); | 3727 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); |
3710 } | 3728 } |
| 3729 |
| 3730 TEST_F(ChromeLauncherControllerArcDefaultAppsTest, DefaultApps) { |
| 3731 arc_test_.SetUp(profile()); |
| 3732 InitLauncherController(); |
| 3733 ChromeLauncherController::set_instance(launcher_controller_.get()); |
| 3734 |
| 3735 ArcAppListPrefs* const prefs = arc_test_.arc_app_list_prefs(); |
| 3736 EnableArc(false); |
| 3737 EXPECT_FALSE(arc_test_.arc_auth_service()->IsArcEnabled()); |
| 3738 ASSERT_TRUE(prefs->GetAppIds().size()); |
| 3739 |
| 3740 const std::string app_id = |
| 3741 ArcAppTest::GetAppId(arc_test_.fake_default_apps()[0]); |
| 3742 EXPECT_EQ(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3743 EXPECT_TRUE(arc::LaunchApp(profile(), app_id)); |
| 3744 EXPECT_TRUE(arc_test_.arc_auth_service()->IsArcEnabled()); |
| 3745 EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3746 |
| 3747 // Stop Arc again. Shelf item should go away. |
| 3748 EnableArc(false); |
| 3749 EXPECT_EQ(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3750 |
| 3751 EXPECT_TRUE(arc::LaunchApp(profile(), app_id)); |
| 3752 EXPECT_TRUE(arc_test_.arc_auth_service()->IsArcEnabled()); |
| 3753 |
| 3754 EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3755 EXPECT_TRUE(launcher_controller_->GetArcDeferredLauncher()->HasApp(app_id)); |
| 3756 |
| 3757 std::string window_app_id("org.chromium.arc.1"); |
| 3758 CreateArcWindow(window_app_id); |
| 3759 arc_test_.app_instance()->SendTaskCreated(1, |
| 3760 arc_test_.fake_default_apps()[0]); |
| 3761 |
| 3762 EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3763 EXPECT_FALSE(launcher_controller_->GetArcDeferredLauncher()->HasApp(app_id)); |
| 3764 } |
OLD | NEW |