| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/views/mus/pointer_watcher_event_router.h" | 5 #include "ui/views/mus/pointer_watcher_event_router.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 | 8 |
| 9 #include "base/message_loop/message_loop.h" | 9 #include "base/message_loop/message_loop.h" |
| 10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 64 ASSERT_TRUE(pointer_watcher_event_router); | 64 ASSERT_TRUE(pointer_watcher_event_router); |
| 65 | 65 |
| 66 ui::PointerEvent pointer_event_down( | 66 ui::PointerEvent pointer_event_down( |
| 67 ui::ET_POINTER_DOWN, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, | 67 ui::ET_POINTER_DOWN, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, |
| 68 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), | 68 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), |
| 69 base::TimeTicks()); | 69 base::TimeTicks()); |
| 70 ui::PointerEvent pointer_event_up( | 70 ui::PointerEvent pointer_event_up( |
| 71 ui::ET_POINTER_UP, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, | 71 ui::ET_POINTER_UP, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, |
| 72 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_MOUSE), | 72 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_MOUSE), |
| 73 base::TimeTicks()); | 73 base::TimeTicks()); |
| 74 ui::PointerEvent pointer_event_wheel( |
| 75 ui::ET_POINTER_WHEEL_CHANGED, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, |
| 76 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_MOUSE), |
| 77 base::TimeTicks()); |
| 78 ui::PointerEvent pointer_event_capture( |
| 79 ui::ET_POINTER_CAPTURE_CHANGED, gfx::Point(), gfx::Point(), ui::EF_NONE, |
| 80 1, ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_MOUSE), |
| 81 base::TimeTicks()); |
| 74 | 82 |
| 75 // PointerWatchers receive pointer down events. | 83 // PointerWatchers receive pointer down events. |
| 76 TestPointerWatcher watcher1; | 84 TestPointerWatcher watcher1; |
| 77 pointer_watcher_event_router->AddPointerWatcher(&watcher1, false); | 85 pointer_watcher_event_router->AddPointerWatcher(&watcher1, false); |
| 78 OnPointerEventObserved(pointer_event_down); | 86 OnPointerEventObserved(pointer_event_down); |
| 79 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher1.last_event_observed()->type()); | 87 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher1.last_event_observed()->type()); |
| 80 watcher1.Reset(); | 88 watcher1.Reset(); |
| 81 | 89 |
| 82 // PointerWatchers receive pointer up events. | 90 // PointerWatchers receive pointer up events. |
| 83 OnPointerEventObserved(pointer_event_up); | 91 OnPointerEventObserved(pointer_event_up); |
| 84 EXPECT_EQ(ui::ET_POINTER_UP, watcher1.last_event_observed()->type()); | 92 EXPECT_EQ(ui::ET_POINTER_UP, watcher1.last_event_observed()->type()); |
| 85 watcher1.Reset(); | 93 watcher1.Reset(); |
| 86 | 94 |
| 95 // PointerWatchers receive pointer wheel changed events. |
| 96 OnPointerEventObserved(pointer_event_wheel); |
| 97 EXPECT_EQ(ui::ET_POINTER_WHEEL_CHANGED, |
| 98 watcher1.last_event_observed()->type()); |
| 99 watcher1.Reset(); |
| 100 |
| 101 // PointerWatchers receive pointer capture changed events. |
| 102 OnPointerEventObserved(pointer_event_capture); |
| 103 EXPECT_EQ(ui::ET_POINTER_CAPTURE_CHANGED, |
| 104 watcher1.last_event_observed()->type()); |
| 105 watcher1.Reset(); |
| 106 |
| 87 // Two PointerWatchers can both receive a single observed event. | 107 // Two PointerWatchers can both receive a single observed event. |
| 88 TestPointerWatcher watcher2; | 108 TestPointerWatcher watcher2; |
| 89 pointer_watcher_event_router->AddPointerWatcher(&watcher2, false); | 109 pointer_watcher_event_router->AddPointerWatcher(&watcher2, false); |
| 90 OnPointerEventObserved(pointer_event_down); | 110 OnPointerEventObserved(pointer_event_down); |
| 91 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher1.last_event_observed()->type()); | 111 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher1.last_event_observed()->type()); |
| 92 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher2.last_event_observed()->type()); | 112 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher2.last_event_observed()->type()); |
| 93 watcher1.Reset(); | 113 watcher1.Reset(); |
| 94 watcher2.Reset(); | 114 watcher2.Reset(); |
| 95 | 115 |
| 96 // Removing the first PointerWatcher stops sending events to it. | 116 // Removing the first PointerWatcher stops sending events to it. |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 155 watcher2.Reset(); | 175 watcher2.Reset(); |
| 156 | 176 |
| 157 // Removing the last PointerWatcher stops sending events to it. | 177 // Removing the last PointerWatcher stops sending events to it. |
| 158 pointer_watcher_event_router->RemovePointerWatcher(&watcher2); | 178 pointer_watcher_event_router->RemovePointerWatcher(&watcher2); |
| 159 OnPointerEventObserved(pointer_event_move); | 179 OnPointerEventObserved(pointer_event_move); |
| 160 EXPECT_FALSE(watcher1.last_event_observed()); | 180 EXPECT_FALSE(watcher1.last_event_observed()); |
| 161 EXPECT_FALSE(watcher2.last_event_observed()); | 181 EXPECT_FALSE(watcher2.last_event_observed()); |
| 162 } | 182 } |
| 163 | 183 |
| 164 } // namespace views | 184 } // namespace views |
| OLD | NEW |