| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/display/display_controller.h" | 5 #include "ash/display/display_controller.h" |
| 6 #include "ash/shell.h" | 6 #include "ash/shell.h" |
| 7 #include "ash/test/ash_test_base.h" | 7 #include "ash/test/ash_test_base.h" |
| 8 #include "ash/tooltips/tooltip_controller.h" | 8 #include "ash/tooltips/tooltip_controller.h" |
| 9 #include "ash/wm/cursor_manager.h" | 9 #include "ash/wm/cursor_manager.h" |
| 10 #include "base/utf_string_conversions.h" | 10 #include "base/utf_string_conversions.h" |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 150 TooltipTestView* view = new TooltipTestView; | 150 TooltipTestView* view = new TooltipTestView; |
| 151 AddViewToWidgetAndResize(widget.get(), view); | 151 AddViewToWidgetAndResize(widget.get(), view); |
| 152 view->set_tooltip_text(ASCIIToUTF16("Tooltip Text")); | 152 view->set_tooltip_text(ASCIIToUTF16("Tooltip Text")); |
| 153 EXPECT_EQ(string16(), GetTooltipText()); | 153 EXPECT_EQ(string16(), GetTooltipText()); |
| 154 EXPECT_EQ(NULL, GetTooltipWindow()); | 154 EXPECT_EQ(NULL, GetTooltipWindow()); |
| 155 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); | 155 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); |
| 156 generator.MoveMouseToCenterOf(widget->GetNativeView()); | 156 generator.MoveMouseToCenterOf(widget->GetNativeView()); |
| 157 | 157 |
| 158 aura::Window* window = widget->GetNativeView(); | 158 aura::Window* window = widget->GetNativeView(); |
| 159 EXPECT_EQ(window, Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( | 159 EXPECT_EQ(window, Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( |
| 160 generator.current_location())); | 160 generator.current_location(), ui::ET_MOUSE_ENTERED)); |
| 161 string16 expected_tooltip = ASCIIToUTF16("Tooltip Text"); | 161 string16 expected_tooltip = ASCIIToUTF16("Tooltip Text"); |
| 162 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); | 162 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); |
| 163 EXPECT_EQ(string16(), GetTooltipText()); | 163 EXPECT_EQ(string16(), GetTooltipText()); |
| 164 EXPECT_EQ(window, GetTooltipWindow()); | 164 EXPECT_EQ(window, GetTooltipWindow()); |
| 165 | 165 |
| 166 // Fire tooltip timer so tooltip becomes visible. | 166 // Fire tooltip timer so tooltip becomes visible. |
| 167 FireTooltipTimer(); | 167 FireTooltipTimer(); |
| 168 | 168 |
| 169 EXPECT_TRUE(IsTooltipVisible()); | 169 EXPECT_TRUE(IsTooltipVisible()); |
| 170 generator.MoveMouseBy(1, 0); | 170 generator.MoveMouseBy(1, 0); |
| (...skipping 21 matching lines...) Expand all Loading... |
| 192 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); | 192 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); |
| 193 generator.MoveMouseRelativeTo(window, | 193 generator.MoveMouseRelativeTo(window, |
| 194 view1->bounds().CenterPoint()); | 194 view1->bounds().CenterPoint()); |
| 195 FireTooltipTimer(); | 195 FireTooltipTimer(); |
| 196 EXPECT_TRUE(IsTooltipVisible()); | 196 EXPECT_TRUE(IsTooltipVisible()); |
| 197 for (int i = 0; i < 50; i++) { | 197 for (int i = 0; i < 50; i++) { |
| 198 generator.MoveMouseBy(1, 0); | 198 generator.MoveMouseBy(1, 0); |
| 199 EXPECT_TRUE(IsTooltipVisible()); | 199 EXPECT_TRUE(IsTooltipVisible()); |
| 200 EXPECT_EQ(window, | 200 EXPECT_EQ(window, |
| 201 Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( | 201 Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( |
| 202 generator.current_location())); | 202 generator.current_location(), ui::ET_MOUSE_ENTERED)); |
| 203 string16 expected_tooltip = ASCIIToUTF16("Tooltip Text"); | 203 string16 expected_tooltip = ASCIIToUTF16("Tooltip Text"); |
| 204 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); | 204 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); |
| 205 EXPECT_EQ(expected_tooltip, GetTooltipText()); | 205 EXPECT_EQ(expected_tooltip, GetTooltipText()); |
| 206 EXPECT_EQ(window, GetTooltipWindow()); | 206 EXPECT_EQ(window, GetTooltipWindow()); |
| 207 } | 207 } |
| 208 for (int i = 0; i < 50; i++) { | 208 for (int i = 0; i < 50; i++) { |
| 209 generator.MoveMouseBy(1, 0); | 209 generator.MoveMouseBy(1, 0); |
| 210 EXPECT_FALSE(IsTooltipVisible()); | 210 EXPECT_FALSE(IsTooltipVisible()); |
| 211 EXPECT_EQ(window, | 211 EXPECT_EQ(window, |
| 212 Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( | 212 Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( |
| 213 generator.current_location())); | 213 generator.current_location(), ui::ET_MOUSE_ENTERED)); |
| 214 string16 expected_tooltip; // = "" | 214 string16 expected_tooltip; // = "" |
| 215 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); | 215 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); |
| 216 EXPECT_EQ(expected_tooltip, GetTooltipText()); | 216 EXPECT_EQ(expected_tooltip, GetTooltipText()); |
| 217 EXPECT_EQ(window, GetTooltipWindow()); | 217 EXPECT_EQ(window, GetTooltipWindow()); |
| 218 } | 218 } |
| 219 } | 219 } |
| 220 | 220 |
| 221 TEST_F(TooltipControllerTest, EnableOrDisableTooltips) { | 221 TEST_F(TooltipControllerTest, EnableOrDisableTooltips) { |
| 222 scoped_ptr<views::Widget> widget(CreateNewWidget()); | 222 scoped_ptr<views::Widget> widget(CreateNewWidget()); |
| 223 TooltipTestView* view = new TooltipTestView; | 223 TooltipTestView* view = new TooltipTestView; |
| (...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 397 | 397 |
| 398 // Moving the mouse inside |view1| should not change the state of the tooltip | 398 // Moving the mouse inside |view1| should not change the state of the tooltip |
| 399 // or the timers. | 399 // or the timers. |
| 400 for (int i = 0; i < 50; i++) { | 400 for (int i = 0; i < 50; i++) { |
| 401 generator.MoveMouseBy(1, 0); | 401 generator.MoveMouseBy(1, 0); |
| 402 EXPECT_FALSE(IsTooltipVisible()); | 402 EXPECT_FALSE(IsTooltipVisible()); |
| 403 EXPECT_FALSE(IsTooltipTimerRunning()); | 403 EXPECT_FALSE(IsTooltipTimerRunning()); |
| 404 EXPECT_FALSE(IsTooltipShownTimerRunning()); | 404 EXPECT_FALSE(IsTooltipShownTimerRunning()); |
| 405 EXPECT_EQ(window, | 405 EXPECT_EQ(window, |
| 406 Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( | 406 Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( |
| 407 generator.current_location())); | 407 generator.current_location(), ui::ET_MOUSE_ENTERED)); |
| 408 string16 expected_tooltip = ASCIIToUTF16("Tooltip Text for view 1"); | 408 string16 expected_tooltip = ASCIIToUTF16("Tooltip Text for view 1"); |
| 409 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); | 409 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); |
| 410 EXPECT_EQ(expected_tooltip, GetTooltipText()); | 410 EXPECT_EQ(expected_tooltip, GetTooltipText()); |
| 411 EXPECT_EQ(window, GetTooltipWindow()); | 411 EXPECT_EQ(window, GetTooltipWindow()); |
| 412 } | 412 } |
| 413 | 413 |
| 414 // Now we move the mouse on to |view2|. It should re-start the tooltip timer. | 414 // Now we move the mouse on to |view2|. It should re-start the tooltip timer. |
| 415 generator.MoveMouseBy(1, 0); | 415 generator.MoveMouseBy(1, 0); |
| 416 EXPECT_TRUE(IsTooltipTimerRunning()); | 416 EXPECT_TRUE(IsTooltipTimerRunning()); |
| 417 FireTooltipTimer(); | 417 FireTooltipTimer(); |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 452 | 452 |
| 453 // Moving the mouse inside |view1| should not change the state of the tooltip | 453 // Moving the mouse inside |view1| should not change the state of the tooltip |
| 454 // or the timers. | 454 // or the timers. |
| 455 for (int i = 0; i < 50; i++) { | 455 for (int i = 0; i < 50; i++) { |
| 456 generator.MoveMouseBy(1, 0); | 456 generator.MoveMouseBy(1, 0); |
| 457 EXPECT_FALSE(IsTooltipVisible()); | 457 EXPECT_FALSE(IsTooltipVisible()); |
| 458 EXPECT_FALSE(IsTooltipTimerRunning()); | 458 EXPECT_FALSE(IsTooltipTimerRunning()); |
| 459 EXPECT_FALSE(IsTooltipShownTimerRunning()); | 459 EXPECT_FALSE(IsTooltipShownTimerRunning()); |
| 460 EXPECT_EQ(window, | 460 EXPECT_EQ(window, |
| 461 Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( | 461 Shell::GetPrimaryRootWindow()->GetEventHandlerForPoint( |
| 462 generator.current_location())); | 462 generator.current_location(), ui::ET_MOUSE_ENTERED)); |
| 463 string16 expected_tooltip = ASCIIToUTF16("Tooltip Text for view 1"); | 463 string16 expected_tooltip = ASCIIToUTF16("Tooltip Text for view 1"); |
| 464 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); | 464 EXPECT_EQ(expected_tooltip, aura::client::GetTooltipText(window)); |
| 465 EXPECT_EQ(expected_tooltip, GetTooltipText()); | 465 EXPECT_EQ(expected_tooltip, GetTooltipText()); |
| 466 EXPECT_EQ(window, GetTooltipWindow()); | 466 EXPECT_EQ(window, GetTooltipWindow()); |
| 467 } | 467 } |
| 468 | 468 |
| 469 // Now we move the mouse on to |view2|. It should re-start the tooltip timer. | 469 // Now we move the mouse on to |view2|. It should re-start the tooltip timer. |
| 470 generator.MoveMouseBy(1, 0); | 470 generator.MoveMouseBy(1, 0); |
| 471 EXPECT_TRUE(IsTooltipTimerRunning()); | 471 EXPECT_TRUE(IsTooltipTimerRunning()); |
| 472 FireTooltipTimer(); | 472 FireTooltipTimer(); |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 512 // be able to show tooltips on the primary display. | 512 // be able to show tooltips on the primary display. |
| 513 aura::test::EventGenerator generator1(root_windows[0]); | 513 aura::test::EventGenerator generator1(root_windows[0]); |
| 514 generator1.MoveMouseRelativeTo(widget1->GetNativeView(), | 514 generator1.MoveMouseRelativeTo(widget1->GetNativeView(), |
| 515 view1->bounds().CenterPoint()); | 515 view1->bounds().CenterPoint()); |
| 516 FireTooltipTimer(); | 516 FireTooltipTimer(); |
| 517 EXPECT_TRUE(IsTooltipVisible()); | 517 EXPECT_TRUE(IsTooltipVisible()); |
| 518 } | 518 } |
| 519 | 519 |
| 520 } // namespace test | 520 } // namespace test |
| 521 } // namespace ash | 521 } // namespace ash |
| OLD | NEW |