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 3553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3617 | 3619 |
3618 views::Widget* window_none_ = nullptr; | 3620 views::Widget* window_none_ = nullptr; |
3619 views::Widget* window_landscape_ = nullptr; | 3621 views::Widget* window_landscape_ = nullptr; |
3620 views::Widget* window_portrait_ = nullptr; | 3622 views::Widget* window_portrait_ = nullptr; |
3621 views::Widget* window_current_ = nullptr; | 3623 views::Widget* window_current_ = nullptr; |
3622 | 3624 |
3623 private: | 3625 private: |
3624 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerOrientationTest); | 3626 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerOrientationTest); |
3625 }; | 3627 }; |
3626 | 3628 |
| 3629 class ChromeLauncherControllerArcDefaultAppsTest |
| 3630 : public ChromeLauncherControllerImplTest { |
| 3631 public: |
| 3632 ChromeLauncherControllerArcDefaultAppsTest() {} |
| 3633 ~ChromeLauncherControllerArcDefaultAppsTest() override {} |
| 3634 |
| 3635 protected: |
| 3636 void SetUp() override { |
| 3637 ArcDefaultAppList::UseTestAppsDirectory(); |
| 3638 ChromeLauncherControllerImplTest::SetUp(); |
| 3639 } |
| 3640 |
| 3641 private: |
| 3642 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerArcDefaultAppsTest); |
| 3643 }; |
| 3644 |
3627 } // namespace | 3645 } // namespace |
3628 | 3646 |
3629 TEST_F(ChromeLauncherControllerOrientationTest, ArcOrientationLock) { | 3647 TEST_F(ChromeLauncherControllerOrientationTest, ArcOrientationLock) { |
3630 ASSERT_TRUE(display::Display::HasInternalDisplay()); | 3648 ASSERT_TRUE(display::Display::HasInternalDisplay()); |
3631 | 3649 |
3632 extension_service_->AddExtension(arc_support_host_.get()); | 3650 extension_service_->AddExtension(arc_support_host_.get()); |
3633 EnableArc(true); | 3651 EnableArc(true); |
3634 EnableTabletMode(true); | 3652 EnableTabletMode(true); |
3635 | 3653 |
3636 InitLauncherController(); | 3654 InitLauncherController(); |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3778 EXPECT_FALSE(controller->rotation_locked()); | 3796 EXPECT_FALSE(controller->rotation_locked()); |
3779 EXPECT_EQ(display::Display::ROTATE_0, | 3797 EXPECT_EQ(display::Display::ROTATE_0, |
3780 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); | 3798 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); |
3781 | 3799 |
3782 NotifyOnTaskOrientationLockRequested(task_id_current_, | 3800 NotifyOnTaskOrientationLockRequested(task_id_current_, |
3783 OrientationLock::CURRENT); | 3801 OrientationLock::CURRENT); |
3784 EXPECT_TRUE(controller->rotation_locked()); | 3802 EXPECT_TRUE(controller->rotation_locked()); |
3785 EXPECT_EQ(display::Display::ROTATE_0, | 3803 EXPECT_EQ(display::Display::ROTATE_0, |
3786 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); | 3804 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); |
3787 } | 3805 } |
| 3806 |
| 3807 TEST_F(ChromeLauncherControllerArcDefaultAppsTest, DefaultApps) { |
| 3808 arc_test_.SetUp(profile()); |
| 3809 InitLauncherController(); |
| 3810 ChromeLauncherController::set_instance(launcher_controller_.get()); |
| 3811 |
| 3812 ArcAppListPrefs* const prefs = arc_test_.arc_app_list_prefs(); |
| 3813 EnableArc(false); |
| 3814 EXPECT_FALSE(arc_test_.arc_auth_service()->IsArcEnabled()); |
| 3815 ASSERT_TRUE(prefs->GetAppIds().size()); |
| 3816 |
| 3817 const std::string app_id = |
| 3818 ArcAppTest::GetAppId(arc_test_.fake_default_apps()[0]); |
| 3819 EXPECT_EQ(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3820 EXPECT_TRUE(arc::LaunchApp(profile(), app_id)); |
| 3821 EXPECT_TRUE(arc_test_.arc_auth_service()->IsArcEnabled()); |
| 3822 EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3823 |
| 3824 // Stop Arc again. Shelf item should go away. |
| 3825 EnableArc(false); |
| 3826 EXPECT_EQ(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3827 |
| 3828 EXPECT_TRUE(arc::LaunchApp(profile(), app_id)); |
| 3829 EXPECT_TRUE(arc_test_.arc_auth_service()->IsArcEnabled()); |
| 3830 |
| 3831 EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3832 EXPECT_TRUE(launcher_controller_->GetArcDeferredLauncher()->HasApp(app_id)); |
| 3833 |
| 3834 std::string window_app_id("org.chromium.arc.1"); |
| 3835 CreateArcWindow(window_app_id); |
| 3836 arc_test_.app_instance()->SendTaskCreated(1, |
| 3837 arc_test_.fake_default_apps()[0]); |
| 3838 |
| 3839 EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| 3840 EXPECT_FALSE(launcher_controller_->GetArcDeferredLauncher()->HasApp(app_id)); |
| 3841 } |
OLD | NEW |