OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 "ui/wm/core/cursor_manager.h" | 5 #include "ui/wm/core/cursor_manager.h" |
6 | 6 |
7 #include "base/macros.h" | 7 #include "base/macros.h" |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/ptr_util.h" |
9 #include "ui/aura/client/cursor_client_observer.h" | 9 #include "ui/aura/client/cursor_client_observer.h" |
10 #include "ui/aura/test/aura_test_base.h" | 10 #include "ui/aura/test/aura_test_base.h" |
11 #include "ui/wm/core/native_cursor_manager.h" | 11 #include "ui/wm/core/native_cursor_manager.h" |
12 | 12 |
13 namespace { | 13 namespace { |
14 | 14 |
15 class TestingCursorManager : public wm::NativeCursorManager { | 15 class TestingCursorManager : public wm::NativeCursorManager { |
16 public: | 16 public: |
17 // Overridden from wm::NativeCursorManager: | 17 // Overridden from wm::NativeCursorManager: |
18 void SetDisplay(const gfx::Display& display, | 18 void SetDisplay(const gfx::Display& display, |
(...skipping 20 matching lines...) Expand all Loading... |
39 delegate->CommitCursorSet(cursor_set); | 39 delegate->CommitCursorSet(cursor_set); |
40 } | 40 } |
41 }; | 41 }; |
42 | 42 |
43 } // namespace | 43 } // namespace |
44 | 44 |
45 class CursorManagerTest : public aura::test::AuraTestBase { | 45 class CursorManagerTest : public aura::test::AuraTestBase { |
46 protected: | 46 protected: |
47 CursorManagerTest() | 47 CursorManagerTest() |
48 : delegate_(new TestingCursorManager), | 48 : delegate_(new TestingCursorManager), |
49 cursor_manager_(std::unique_ptr<wm::NativeCursorManager>(delegate_)) {} | 49 cursor_manager_(base::WrapUnique(delegate_)) {} |
50 | 50 |
51 TestingCursorManager* delegate_; | 51 TestingCursorManager* delegate_; |
52 wm::CursorManager cursor_manager_; | 52 wm::CursorManager cursor_manager_; |
53 }; | 53 }; |
54 | 54 |
55 class TestingCursorClientObserver : public aura::client::CursorClientObserver { | 55 class TestingCursorClientObserver : public aura::client::CursorClientObserver { |
56 public: | 56 public: |
57 TestingCursorClientObserver() | 57 TestingCursorClientObserver() |
58 : cursor_visibility_(false), | 58 : cursor_visibility_(false), |
59 did_visibility_change_(false) {} | 59 did_visibility_change_(false) {} |
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
325 EXPECT_TRUE(observer_a.is_cursor_visible()); | 325 EXPECT_TRUE(observer_a.is_cursor_visible()); |
326 } | 326 } |
327 | 327 |
328 // This test validates that the cursor visiblity state is restored when a | 328 // This test validates that the cursor visiblity state is restored when a |
329 // CursorManager instance is destroyed and recreated. | 329 // CursorManager instance is destroyed and recreated. |
330 TEST(CursorManagerCreateDestroyTest, VisibilityTest) { | 330 TEST(CursorManagerCreateDestroyTest, VisibilityTest) { |
331 // This block ensures that the cursor is hidden when the CursorManager | 331 // This block ensures that the cursor is hidden when the CursorManager |
332 // instance is destroyed. | 332 // instance is destroyed. |
333 { | 333 { |
334 wm::CursorManager cursor_manager1( | 334 wm::CursorManager cursor_manager1( |
335 scoped_ptr<wm::NativeCursorManager>(new TestingCursorManager)); | 335 base::WrapUnique(new TestingCursorManager)); |
336 cursor_manager1.ShowCursor(); | 336 cursor_manager1.ShowCursor(); |
337 EXPECT_TRUE(cursor_manager1.IsCursorVisible()); | 337 EXPECT_TRUE(cursor_manager1.IsCursorVisible()); |
338 cursor_manager1.HideCursor(); | 338 cursor_manager1.HideCursor(); |
339 EXPECT_FALSE(cursor_manager1.IsCursorVisible()); | 339 EXPECT_FALSE(cursor_manager1.IsCursorVisible()); |
340 } | 340 } |
341 | 341 |
342 // This block validates that the cursor is hidden initially. It ensures that | 342 // This block validates that the cursor is hidden initially. It ensures that |
343 // the cursor is visible when the CursorManager instance is destroyed. | 343 // the cursor is visible when the CursorManager instance is destroyed. |
344 { | 344 { |
345 wm::CursorManager cursor_manager2( | 345 wm::CursorManager cursor_manager2( |
346 scoped_ptr<wm::NativeCursorManager>(new TestingCursorManager)); | 346 base::WrapUnique(new TestingCursorManager)); |
347 EXPECT_FALSE(cursor_manager2.IsCursorVisible()); | 347 EXPECT_FALSE(cursor_manager2.IsCursorVisible()); |
348 cursor_manager2.ShowCursor(); | 348 cursor_manager2.ShowCursor(); |
349 EXPECT_TRUE(cursor_manager2.IsCursorVisible()); | 349 EXPECT_TRUE(cursor_manager2.IsCursorVisible()); |
350 } | 350 } |
351 | 351 |
352 // This block validates that the cursor is visible initially. It then | 352 // This block validates that the cursor is visible initially. It then |
353 // performs normal cursor visibility operations. | 353 // performs normal cursor visibility operations. |
354 { | 354 { |
355 wm::CursorManager cursor_manager3( | 355 wm::CursorManager cursor_manager3( |
356 scoped_ptr<wm::NativeCursorManager>(new TestingCursorManager)); | 356 base::WrapUnique(new TestingCursorManager)); |
357 EXPECT_TRUE(cursor_manager3.IsCursorVisible()); | 357 EXPECT_TRUE(cursor_manager3.IsCursorVisible()); |
358 cursor_manager3.HideCursor(); | 358 cursor_manager3.HideCursor(); |
359 EXPECT_FALSE(cursor_manager3.IsCursorVisible()); | 359 EXPECT_FALSE(cursor_manager3.IsCursorVisible()); |
360 } | 360 } |
361 } | 361 } |
OLD | NEW |