| 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 "ui/aura/client/cursor_client_observer.h" | 7 #include "ui/aura/client/cursor_client_observer.h" |
| 8 #include "ui/aura/test/aura_test_base.h" | 8 #include "ui/aura/test/aura_test_base.h" |
| 9 #include "ui/wm/core/native_cursor_manager.h" | 9 #include "ui/wm/core/native_cursor_manager.h" |
| 10 | 10 |
| 11 namespace { | 11 namespace { |
| 12 | 12 |
| 13 class TestingCursorManager : public wm::NativeCursorManager { | 13 class TestingCursorManager : public wm::NativeCursorManager { |
| 14 public: | 14 public: |
| 15 // Overridden from wm::NativeCursorManager: | 15 // Overridden from wm::NativeCursorManager: |
| 16 virtual void SetDisplay( | 16 virtual void SetDisplay( |
| 17 const gfx::Display& display, | 17 const gfx::Display& display, |
| 18 wm::NativeCursorManagerDelegate* delegate) OVERRIDE {} | 18 wm::NativeCursorManagerDelegate* delegate) override {} |
| 19 | 19 |
| 20 virtual void SetCursor( | 20 virtual void SetCursor( |
| 21 gfx::NativeCursor cursor, | 21 gfx::NativeCursor cursor, |
| 22 wm::NativeCursorManagerDelegate* delegate) OVERRIDE { | 22 wm::NativeCursorManagerDelegate* delegate) override { |
| 23 delegate->CommitCursor(cursor); | 23 delegate->CommitCursor(cursor); |
| 24 } | 24 } |
| 25 | 25 |
| 26 virtual void SetVisibility( | 26 virtual void SetVisibility( |
| 27 bool visible, | 27 bool visible, |
| 28 wm::NativeCursorManagerDelegate* delegate) OVERRIDE { | 28 wm::NativeCursorManagerDelegate* delegate) override { |
| 29 delegate->CommitVisibility(visible); | 29 delegate->CommitVisibility(visible); |
| 30 } | 30 } |
| 31 | 31 |
| 32 virtual void SetMouseEventsEnabled( | 32 virtual void SetMouseEventsEnabled( |
| 33 bool enabled, | 33 bool enabled, |
| 34 wm::NativeCursorManagerDelegate* delegate) OVERRIDE { | 34 wm::NativeCursorManagerDelegate* delegate) override { |
| 35 delegate->CommitMouseEventsEnabled(enabled); | 35 delegate->CommitMouseEventsEnabled(enabled); |
| 36 } | 36 } |
| 37 | 37 |
| 38 virtual void SetCursorSet( | 38 virtual void SetCursorSet( |
| 39 ui::CursorSetType cursor_set, | 39 ui::CursorSetType cursor_set, |
| 40 wm::NativeCursorManagerDelegate* delegate) OVERRIDE { | 40 wm::NativeCursorManagerDelegate* delegate) override { |
| 41 delegate->CommitCursorSet(cursor_set); | 41 delegate->CommitCursorSet(cursor_set); |
| 42 } | 42 } |
| 43 }; | 43 }; |
| 44 | 44 |
| 45 } // namespace | 45 } // namespace |
| 46 | 46 |
| 47 class CursorManagerTest : public aura::test::AuraTestBase { | 47 class CursorManagerTest : public aura::test::AuraTestBase { |
| 48 protected: | 48 protected: |
| 49 CursorManagerTest() | 49 CursorManagerTest() |
| 50 : delegate_(new TestingCursorManager), | 50 : delegate_(new TestingCursorManager), |
| 51 cursor_manager_(scoped_ptr<wm::NativeCursorManager>( | 51 cursor_manager_(scoped_ptr<wm::NativeCursorManager>( |
| 52 delegate_)) { | 52 delegate_)) { |
| 53 } | 53 } |
| 54 | 54 |
| 55 TestingCursorManager* delegate_; | 55 TestingCursorManager* delegate_; |
| 56 wm::CursorManager cursor_manager_; | 56 wm::CursorManager cursor_manager_; |
| 57 }; | 57 }; |
| 58 | 58 |
| 59 class TestingCursorClientObserver : public aura::client::CursorClientObserver { | 59 class TestingCursorClientObserver : public aura::client::CursorClientObserver { |
| 60 public: | 60 public: |
| 61 TestingCursorClientObserver() | 61 TestingCursorClientObserver() |
| 62 : cursor_visibility_(false), | 62 : cursor_visibility_(false), |
| 63 did_visibility_change_(false) {} | 63 did_visibility_change_(false) {} |
| 64 void reset() { cursor_visibility_ = did_visibility_change_ = false; } | 64 void reset() { cursor_visibility_ = did_visibility_change_ = false; } |
| 65 bool is_cursor_visible() const { return cursor_visibility_; } | 65 bool is_cursor_visible() const { return cursor_visibility_; } |
| 66 bool did_visibility_change() const { return did_visibility_change_; } | 66 bool did_visibility_change() const { return did_visibility_change_; } |
| 67 | 67 |
| 68 // Overridden from aura::client::CursorClientObserver: | 68 // Overridden from aura::client::CursorClientObserver: |
| 69 virtual void OnCursorVisibilityChanged(bool is_visible) OVERRIDE { | 69 virtual void OnCursorVisibilityChanged(bool is_visible) override { |
| 70 cursor_visibility_ = is_visible; | 70 cursor_visibility_ = is_visible; |
| 71 did_visibility_change_ = true; | 71 did_visibility_change_ = true; |
| 72 } | 72 } |
| 73 | 73 |
| 74 private: | 74 private: |
| 75 bool cursor_visibility_; | 75 bool cursor_visibility_; |
| 76 bool did_visibility_change_; | 76 bool did_visibility_change_; |
| 77 | 77 |
| 78 DISALLOW_COPY_AND_ASSIGN(TestingCursorClientObserver); | 78 DISALLOW_COPY_AND_ASSIGN(TestingCursorClientObserver); |
| 79 }; | 79 }; |
| (...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 321 EXPECT_FALSE(observer_a.is_cursor_visible()); | 321 EXPECT_FALSE(observer_a.is_cursor_visible()); |
| 322 | 322 |
| 323 // Show the cursor using ShowCursor(). | 323 // Show the cursor using ShowCursor(). |
| 324 observer_a.reset(); | 324 observer_a.reset(); |
| 325 observer_b.reset(); | 325 observer_b.reset(); |
| 326 cursor_manager_.ShowCursor(); | 326 cursor_manager_.ShowCursor(); |
| 327 EXPECT_TRUE(observer_a.did_visibility_change()); | 327 EXPECT_TRUE(observer_a.did_visibility_change()); |
| 328 EXPECT_FALSE(observer_b.did_visibility_change()); | 328 EXPECT_FALSE(observer_b.did_visibility_change()); |
| 329 EXPECT_TRUE(observer_a.is_cursor_visible()); | 329 EXPECT_TRUE(observer_a.is_cursor_visible()); |
| 330 } | 330 } |
| OLD | NEW |