Chromium Code Reviews| 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 "ash/system/chromeos/tray_display.h" | 5 #include "ash/system/chromeos/tray_display.h" |
| 6 | 6 |
| 7 #include "ash/display/display_manager.h" | 7 #include "ash/display/display_manager.h" |
| 8 #include "ash/root_window_controller.h" | 8 #include "ash/root_window_controller.h" |
| 9 #include "ash/screen_util.h" | 9 #include "ash/screen_util.h" |
| 10 #include "ash/shell.h" | 10 #include "ash/shell.h" |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 74 class TrayDisplayTest : public ash::test::AshTestBase { | 74 class TrayDisplayTest : public ash::test::AshTestBase { |
| 75 public: | 75 public: |
| 76 TrayDisplayTest(); | 76 TrayDisplayTest(); |
| 77 ~TrayDisplayTest() override; | 77 ~TrayDisplayTest() override; |
| 78 | 78 |
| 79 void SetUp() override; | 79 void SetUp() override; |
| 80 | 80 |
| 81 protected: | 81 protected: |
| 82 SystemTray* tray() { return tray_; } | 82 SystemTray* tray() { return tray_; } |
| 83 TrayDisplay* tray_display() { return tray_display_; } | 83 TrayDisplay* tray_display() { return tray_display_; } |
| 84 void UpdateTray(); | |
| 84 | 85 |
| 85 void CloseNotification(); | 86 void CloseNotification(); |
| 86 bool IsDisplayVisibleInTray() const; | 87 bool IsDisplayVisibleInTray() const; |
| 87 base::string16 GetTrayDisplayText() const; | 88 base::string16 GetTrayDisplayText() const; |
| 88 void CheckAccessibleName() const; | 89 void CheckAccessibleName() const; |
| 89 base::string16 GetTrayDisplayTooltipText() const; | 90 base::string16 GetTrayDisplayTooltipText() const; |
| 90 base::string16 GetDisplayNotificationText() const; | 91 base::string16 GetDisplayNotificationText() const; |
| 91 base::string16 GetDisplayNotificationAdditionalText() const; | 92 base::string16 GetDisplayNotificationAdditionalText() const; |
| 92 | 93 |
| 93 private: | 94 private: |
| 94 const message_center::Notification* GetDisplayNotification() const; | 95 const message_center::Notification* GetDisplayNotification() const; |
| 95 | 96 |
| 96 // Weak reference, owned by Shell. | 97 // Weak reference, owned by Shell. |
| 97 SystemTray* tray_; | 98 SystemTray* tray_; |
| 98 | 99 |
| 99 // Weak reference, owned by |tray_|. | 100 // Weak reference, owned by |tray_|. |
| 100 TrayDisplay* tray_display_; | 101 TrayDisplay* tray_display_; |
| 101 | 102 |
| 102 DISALLOW_COPY_AND_ASSIGN(TrayDisplayTest); | 103 DISALLOW_COPY_AND_ASSIGN(TrayDisplayTest); |
| 103 }; | 104 }; |
| 104 | 105 |
| 105 TrayDisplayTest::TrayDisplayTest() : tray_(NULL), tray_display_(NULL) { | 106 TrayDisplayTest::TrayDisplayTest() : tray_(NULL), tray_display_(NULL) { |
| 106 } | 107 } |
| 107 | 108 |
| 108 TrayDisplayTest::~TrayDisplayTest() { | 109 TrayDisplayTest::~TrayDisplayTest() { |
| 109 } | 110 } |
| 110 | 111 |
| 111 void TrayDisplayTest::SetUp() { | 112 void TrayDisplayTest::SetUp() { |
| 112 ash::test::AshTestBase::SetUp(); | 113 ash::test::AshTestBase::SetUp(); |
| 114 UpdateTray(); | |
| 115 } | |
| 116 | |
| 117 void TrayDisplayTest::UpdateTray() { | |
| 113 tray_ = Shell::GetPrimaryRootWindowController()->GetSystemTray(); | 118 tray_ = Shell::GetPrimaryRootWindowController()->GetSystemTray(); |
| 114 tray_display_ = new TrayDisplay(tray_); | 119 tray_display_ = new TrayDisplay(tray_); |
| 115 tray_->AddTrayItem(tray_display_); | 120 tray_->AddTrayItem(tray_display_); |
| 116 } | 121 } |
| 117 | 122 |
| 118 void TrayDisplayTest::CloseNotification() { | 123 void TrayDisplayTest::CloseNotification() { |
| 119 message_center::MessageCenter::Get()->RemoveNotification( | 124 message_center::MessageCenter::Get()->RemoveNotification( |
| 120 TrayDisplay::kNotificationId, false); | 125 TrayDisplay::kNotificationId, false); |
| 121 RunAllPendingInMessageLoop(); | 126 RunAllPendingInMessageLoop(); |
| 122 } | 127 } |
| (...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 284 UpdateDisplay("400x400@1.5"); | 289 UpdateDisplay("400x400@1.5"); |
| 285 tray()->ShowDefaultView(BUBBLE_USE_EXISTING); | 290 tray()->ShowDefaultView(BUBBLE_USE_EXISTING); |
| 286 EXPECT_TRUE(IsDisplayVisibleInTray()); | 291 EXPECT_TRUE(IsDisplayVisibleInTray()); |
| 287 expected = l10n_util::GetStringUTF16(IDS_ASH_STATUS_TRAY_DISPLAY_DOCKED); | 292 expected = l10n_util::GetStringUTF16(IDS_ASH_STATUS_TRAY_DISPLAY_DOCKED); |
| 288 EXPECT_EQ(expected, GetTrayDisplayText()); | 293 EXPECT_EQ(expected, GetTrayDisplayText()); |
| 289 EXPECT_EQ( | 294 EXPECT_EQ( |
| 290 GetTooltipText( | 295 GetTooltipText( |
| 291 expected, GetFirstDisplayName(), "600x600", base::string16(), ""), | 296 expected, GetFirstDisplayName(), "600x600", base::string16(), ""), |
| 292 GetTrayDisplayTooltipText()); | 297 GetTrayDisplayTooltipText()); |
| 293 CheckAccessibleName(); | 298 CheckAccessibleName(); |
| 299 | |
| 300 // Unified mode | |
| 301 display_manager->SetDefaultMultiDisplayMode(DisplayManager::UNIFIED); | |
| 302 display_manager->SetMultiDisplayMode(DisplayManager::UNIFIED); | |
| 303 UpdateDisplay("300x200,400x500"); | |
| 304 // Update the cache variables as the primary root window changed. | |
| 305 UpdateTray(); | |
|
Jun Mukai
2015/05/13 18:03:49
Resetting the variable explicitly from a test case
| |
| 306 tray()->ShowDefaultView(BUBBLE_USE_EXISTING); | |
| 307 EXPECT_TRUE(IsDisplayVisibleInTray()); | |
| 308 expected = l10n_util::GetStringUTF16(IDS_ASH_STATUS_TRAY_DISPLAY_UNIFIED); | |
| 309 EXPECT_EQ(expected, GetTrayDisplayText()); | |
| 294 } | 310 } |
| 295 | 311 |
| 296 TEST_F(TrayDisplayTest, ExternalDisplayResized) { | 312 TEST_F(TrayDisplayTest, ExternalDisplayResized) { |
| 297 UpdateDisplay("400x400"); | 313 UpdateDisplay("400x400"); |
| 298 DisplayManager* display_manager = Shell::GetInstance()->display_manager(); | 314 DisplayManager* display_manager = Shell::GetInstance()->display_manager(); |
| 299 gfx::Display::SetInternalDisplayId(display_manager->first_display_id()); | 315 gfx::Display::SetInternalDisplayId(display_manager->first_display_id()); |
| 300 | 316 |
| 301 // Shows the tray_display even though there's a single-display. | 317 // Shows the tray_display even though there's a single-display. |
| 302 tray()->ShowDefaultView(BUBBLE_USE_EXISTING); | 318 tray()->ShowDefaultView(BUBBLE_USE_EXISTING); |
| 303 EXPECT_FALSE(IsDisplayVisibleInTray()); | 319 EXPECT_FALSE(IsDisplayVisibleInTray()); |
| (...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 557 // rotate the second. | 573 // rotate the second. |
| 558 UpdateDisplay("400x400,200x200/r"); | 574 UpdateDisplay("400x400,200x200/r"); |
| 559 EXPECT_EQ(l10n_util::GetStringFUTF16( | 575 EXPECT_EQ(l10n_util::GetStringFUTF16( |
| 560 IDS_ASH_STATUS_TRAY_DISPLAY_ROTATED, GetSecondDisplayName(), | 576 IDS_ASH_STATUS_TRAY_DISPLAY_ROTATED, GetSecondDisplayName(), |
| 561 l10n_util::GetStringUTF16( | 577 l10n_util::GetStringUTF16( |
| 562 IDS_ASH_STATUS_TRAY_DISPLAY_ORIENTATION_90)), | 578 IDS_ASH_STATUS_TRAY_DISPLAY_ORIENTATION_90)), |
| 563 GetDisplayNotificationAdditionalText()); | 579 GetDisplayNotificationAdditionalText()); |
| 564 } | 580 } |
| 565 | 581 |
| 566 } // namespace ash | 582 } // namespace ash |
| OLD | NEW |