| 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 "services/ui/public/cpp/tests/window_tree_client_private.h" | 10 #include "services/ui/public/cpp/tests/window_tree_client_private.h" |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 124 ASSERT_TRUE(pointer_watcher_event_router); | 124 ASSERT_TRUE(pointer_watcher_event_router); |
| 125 | 125 |
| 126 ui::PointerEvent pointer_event_down( | 126 ui::PointerEvent pointer_event_down( |
| 127 ui::ET_POINTER_DOWN, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, | 127 ui::ET_POINTER_DOWN, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, |
| 128 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), | 128 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), |
| 129 base::TimeTicks()); | 129 base::TimeTicks()); |
| 130 ui::PointerEvent pointer_event_up( | 130 ui::PointerEvent pointer_event_up( |
| 131 ui::ET_POINTER_UP, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, | 131 ui::ET_POINTER_UP, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, |
| 132 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_MOUSE), | 132 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_MOUSE), |
| 133 base::TimeTicks()); | 133 base::TimeTicks()); |
| 134 ui::PointerEvent pointer_event_wheel( |
| 135 ui::ET_POINTER_WHEEL_CHANGED, gfx::Point(), gfx::Point(), ui::EF_NONE, 1, |
| 136 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_MOUSE), |
| 137 base::TimeTicks()); |
| 138 ui::PointerEvent pointer_event_capture( |
| 139 ui::ET_POINTER_CAPTURE_CHANGED, gfx::Point(), gfx::Point(), ui::EF_NONE, |
| 140 1, ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_MOUSE), |
| 141 base::TimeTicks()); |
| 134 | 142 |
| 135 // PointerWatchers receive pointer down events. | 143 // PointerWatchers receive pointer down events. |
| 136 TestPointerWatcher watcher1; | 144 TestPointerWatcher watcher1; |
| 137 pointer_watcher_event_router->AddPointerWatcher(&watcher1, false); | 145 pointer_watcher_event_router->AddPointerWatcher(&watcher1, false); |
| 138 OnPointerEventObserved(pointer_event_down); | 146 OnPointerEventObserved(pointer_event_down); |
| 139 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher1.last_event_observed()->type()); | 147 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher1.last_event_observed()->type()); |
| 140 watcher1.Reset(); | 148 watcher1.Reset(); |
| 141 | 149 |
| 142 // PointerWatchers receive pointer up events. | 150 // PointerWatchers receive pointer up events. |
| 143 OnPointerEventObserved(pointer_event_up); | 151 OnPointerEventObserved(pointer_event_up); |
| 144 EXPECT_EQ(ui::ET_POINTER_UP, watcher1.last_event_observed()->type()); | 152 EXPECT_EQ(ui::ET_POINTER_UP, watcher1.last_event_observed()->type()); |
| 145 watcher1.Reset(); | 153 watcher1.Reset(); |
| 146 | 154 |
| 155 // PointerWatchers receive pointer wheel changed events. |
| 156 OnPointerEventObserved(pointer_event_wheel); |
| 157 EXPECT_EQ(ui::ET_POINTER_WHEEL_CHANGED, |
| 158 watcher1.last_event_observed()->type()); |
| 159 watcher1.Reset(); |
| 160 |
| 161 // PointerWatchers receive pointer capture changed events. |
| 162 OnPointerEventObserved(pointer_event_capture); |
| 163 EXPECT_EQ(ui::ET_POINTER_CAPTURE_CHANGED, |
| 164 watcher1.last_event_observed()->type()); |
| 165 watcher1.Reset(); |
| 166 |
| 147 // Two PointerWatchers can both receive a single observed event. | 167 // Two PointerWatchers can both receive a single observed event. |
| 148 TestPointerWatcher watcher2; | 168 TestPointerWatcher watcher2; |
| 149 pointer_watcher_event_router->AddPointerWatcher(&watcher2, false); | 169 pointer_watcher_event_router->AddPointerWatcher(&watcher2, false); |
| 150 OnPointerEventObserved(pointer_event_down); | 170 OnPointerEventObserved(pointer_event_down); |
| 151 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher1.last_event_observed()->type()); | 171 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher1.last_event_observed()->type()); |
| 152 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher2.last_event_observed()->type()); | 172 EXPECT_EQ(ui::ET_POINTER_DOWN, watcher2.last_event_observed()->type()); |
| 153 watcher1.Reset(); | 173 watcher1.Reset(); |
| 154 watcher2.Reset(); | 174 watcher2.Reset(); |
| 155 | 175 |
| 156 // Removing the first PointerWatcher stops sending events to it. | 176 // Removing the first PointerWatcher stops sending events to it. |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 215 watcher2.Reset(); | 235 watcher2.Reset(); |
| 216 | 236 |
| 217 // Removing the last PointerWatcher stops sending events to it. | 237 // Removing the last PointerWatcher stops sending events to it. |
| 218 pointer_watcher_event_router->RemovePointerWatcher(&watcher2); | 238 pointer_watcher_event_router->RemovePointerWatcher(&watcher2); |
| 219 OnPointerEventObserved(pointer_event_move); | 239 OnPointerEventObserved(pointer_event_move); |
| 220 EXPECT_FALSE(watcher1.last_event_observed()); | 240 EXPECT_FALSE(watcher1.last_event_observed()); |
| 221 EXPECT_FALSE(watcher2.last_event_observed()); | 241 EXPECT_FALSE(watcher2.last_event_observed()); |
| 222 } | 242 } |
| 223 | 243 |
| 224 } // namespace views | 244 } // namespace views |
| OLD | NEW |