| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "services/ui/public/cpp/window_tree_client.h" | 5 #include "services/ui/public/cpp/window_tree_client.h" |
| 6 | 6 |
| 7 #include <stdint.h> | 7 #include <stdint.h> |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/macros.h" | 10 #include "base/macros.h" |
| (...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 470 WindowTreeSetup setup; | 470 WindowTreeSetup setup; |
| 471 Window* root = setup.GetFirstRoot(); | 471 Window* root = setup.GetFirstRoot(); |
| 472 ASSERT_TRUE(root); | 472 ASSERT_TRUE(root); |
| 473 | 473 |
| 474 // Start a pointer watcher for all events excluding move events. | 474 // Start a pointer watcher for all events excluding move events. |
| 475 setup.client()->StartPointerWatcher(false /* want_moves */); | 475 setup.client()->StartPointerWatcher(false /* want_moves */); |
| 476 | 476 |
| 477 // Simulate the server sending an observed event. | 477 // Simulate the server sending an observed event. |
| 478 std::unique_ptr<ui::PointerEvent> pointer_event_down(new ui::PointerEvent( | 478 std::unique_ptr<ui::PointerEvent> pointer_event_down(new ui::PointerEvent( |
| 479 ui::ET_POINTER_DOWN, gfx::Point(), gfx::Point(), ui::EF_CONTROL_DOWN, 1, | 479 ui::ET_POINTER_DOWN, gfx::Point(), gfx::Point(), ui::EF_CONTROL_DOWN, 1, |
| 480 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), | 480 0, ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), |
| 481 base::TimeTicks())); | 481 base::TimeTicks())); |
| 482 setup.window_tree_client()->OnPointerEventObserved( | 482 setup.window_tree_client()->OnPointerEventObserved( |
| 483 std::move(pointer_event_down), 0u); | 483 std::move(pointer_event_down), 0u); |
| 484 | 484 |
| 485 // Delegate sensed the event. | 485 // Delegate sensed the event. |
| 486 ui::Event* last_event = setup.window_tree_delegate()->last_event_observed(); | 486 ui::Event* last_event = setup.window_tree_delegate()->last_event_observed(); |
| 487 EXPECT_EQ(ui::ET_POINTER_DOWN, last_event->type()); | 487 EXPECT_EQ(ui::ET_POINTER_DOWN, last_event->type()); |
| 488 EXPECT_EQ(ui::EF_CONTROL_DOWN, last_event->flags()); | 488 EXPECT_EQ(ui::EF_CONTROL_DOWN, last_event->flags()); |
| 489 setup.window_tree_delegate()->Reset(); | 489 setup.window_tree_delegate()->Reset(); |
| 490 | 490 |
| 491 // Stop the pointer watcher. | 491 // Stop the pointer watcher. |
| 492 setup.client()->StopPointerWatcher(); | 492 setup.client()->StopPointerWatcher(); |
| 493 | 493 |
| 494 // Simulate another event from the server. | 494 // Simulate another event from the server. |
| 495 std::unique_ptr<ui::PointerEvent> pointer_event_up(new ui::PointerEvent( | 495 std::unique_ptr<ui::PointerEvent> pointer_event_up(new ui::PointerEvent( |
| 496 ui::ET_POINTER_UP, gfx::Point(), gfx::Point(), ui::EF_CONTROL_DOWN, 1, | 496 ui::ET_POINTER_UP, gfx::Point(), gfx::Point(), ui::EF_CONTROL_DOWN, 1, 0, |
| 497 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), | 497 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), |
| 498 base::TimeTicks())); | 498 base::TimeTicks())); |
| 499 setup.window_tree_client()->OnPointerEventObserved( | 499 setup.window_tree_client()->OnPointerEventObserved( |
| 500 std::move(pointer_event_up), 0u); | 500 std::move(pointer_event_up), 0u); |
| 501 | 501 |
| 502 // No event was sensed. | 502 // No event was sensed. |
| 503 EXPECT_FALSE(setup.window_tree_delegate()->last_event_observed()); | 503 EXPECT_FALSE(setup.window_tree_delegate()->last_event_observed()); |
| 504 } | 504 } |
| 505 | 505 |
| 506 // Tests pointer watchers triggered by events that hit this window tree. | 506 // Tests pointer watchers triggered by events that hit this window tree. |
| 507 TEST_F(WindowTreeClientTest, OnWindowInputEventWithPointerWatcher) { | 507 TEST_F(WindowTreeClientTest, OnWindowInputEventWithPointerWatcher) { |
| 508 WindowTreeSetup setup; | 508 WindowTreeSetup setup; |
| 509 Window* root = setup.GetFirstRoot(); | 509 Window* root = setup.GetFirstRoot(); |
| 510 ASSERT_TRUE(root); | 510 ASSERT_TRUE(root); |
| 511 | 511 |
| 512 // Start a pointer watcher for all events excluding move events. | 512 // Start a pointer watcher for all events excluding move events. |
| 513 setup.client()->StartPointerWatcher(false /* want_moves */); | 513 setup.client()->StartPointerWatcher(false /* want_moves */); |
| 514 | 514 |
| 515 // Simulate the server dispatching an event that also matched the observer. | 515 // Simulate the server dispatching an event that also matched the observer. |
| 516 std::unique_ptr<ui::PointerEvent> pointer_event_down(new ui::PointerEvent( | 516 std::unique_ptr<ui::PointerEvent> pointer_event_down(new ui::PointerEvent( |
| 517 ui::ET_POINTER_DOWN, gfx::Point(), gfx::Point(), ui::EF_CONTROL_DOWN, 1, | 517 ui::ET_POINTER_DOWN, gfx::Point(), gfx::Point(), ui::EF_CONTROL_DOWN, 1, |
| 518 ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), | 518 0, ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH), |
| 519 base::TimeTicks())); | 519 base::TimeTicks())); |
| 520 setup.window_tree_client()->OnWindowInputEvent( | 520 setup.window_tree_client()->OnWindowInputEvent( |
| 521 1, server_id(root), std::move(pointer_event_down), true); | 521 1, server_id(root), std::move(pointer_event_down), true); |
| 522 | 522 |
| 523 // Delegate sensed the event. | 523 // Delegate sensed the event. |
| 524 ui::Event* last_event = setup.window_tree_delegate()->last_event_observed(); | 524 ui::Event* last_event = setup.window_tree_delegate()->last_event_observed(); |
| 525 EXPECT_EQ(ui::ET_POINTER_DOWN, last_event->type()); | 525 EXPECT_EQ(ui::ET_POINTER_DOWN, last_event->type()); |
| 526 EXPECT_EQ(ui::EF_CONTROL_DOWN, last_event->flags()); | 526 EXPECT_EQ(ui::EF_CONTROL_DOWN, last_event->flags()); |
| 527 } | 527 } |
| 528 | 528 |
| (...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1075 | 1075 |
| 1076 // Changes originating from server should notify observers too. | 1076 // Changes originating from server should notify observers too. |
| 1077 WindowTreeClientPrivate(setup.client()).CallOnCaptureChanged(child2, nullptr); | 1077 WindowTreeClientPrivate(setup.client()).CallOnCaptureChanged(child2, nullptr); |
| 1078 EXPECT_EQ(1, capture_recorder.capture_changed_count()); | 1078 EXPECT_EQ(1, capture_recorder.capture_changed_count()); |
| 1079 EXPECT_EQ(child2_id, capture_recorder.last_gained_capture_window_id()); | 1079 EXPECT_EQ(child2_id, capture_recorder.last_gained_capture_window_id()); |
| 1080 EXPECT_EQ(0, capture_recorder.last_lost_capture_window_id()); | 1080 EXPECT_EQ(0, capture_recorder.last_lost_capture_window_id()); |
| 1081 capture_recorder.reset_capture_captured_count(); | 1081 capture_recorder.reset_capture_captured_count(); |
| 1082 } | 1082 } |
| 1083 | 1083 |
| 1084 } // namespace ui | 1084 } // namespace ui |
| OLD | NEW |