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
3 // found in the LICENSE file.
5 #include "ui/events/ozone/evdev/event_converter_test_util.h"
7 #include "ui/events/ozone/device/device_manager.h"
8 #include "ui/events/ozone/evdev/device_event_dispatcher_evdev.h"
9 #include "ui/events/ozone/evdev/event_factory_evdev.h"
10 #include "ui/events/platform/platform_event_dispatcher.h"
16 class TestDeviceManager
: public ui::DeviceManager
{
18 TestDeviceManager() {}
19 ~TestDeviceManager() override
{}
22 void ScanDevices(DeviceEventObserver
* observer
) override
{}
23 void AddObserver(DeviceEventObserver
* observer
) override
{}
24 void RemoveObserver(DeviceEventObserver
* observer
) override
{}
27 class TestDeviceEventDispatcherEvdev
: public DeviceEventDispatcherEvdev
{
29 TestDeviceEventDispatcherEvdev(EventFactoryEvdev
* event_factory_evdev
)
30 : event_factory_evdev_(event_factory_evdev
) {}
31 ~TestDeviceEventDispatcherEvdev() override
{}
33 // DeviceEventDispatcher:
34 void DispatchKeyEvent(const KeyEventParams
& params
) override
{
35 event_factory_evdev_
->DispatchKeyEvent(params
);
38 void DispatchMouseMoveEvent(const MouseMoveEventParams
& params
) override
{
39 event_factory_evdev_
->DispatchMouseMoveEvent(params
);
42 void DispatchMouseButtonEvent(const MouseButtonEventParams
& params
) override
{
43 event_factory_evdev_
->DispatchMouseButtonEvent(params
);
46 void DispatchMouseWheelEvent(const MouseWheelEventParams
& params
) override
{
47 event_factory_evdev_
->DispatchMouseWheelEvent(params
);
50 void DispatchScrollEvent(const ScrollEventParams
& params
) override
{
51 event_factory_evdev_
->DispatchScrollEvent(params
);
54 void DispatchTouchEvent(const TouchEventParams
& params
) override
{
55 event_factory_evdev_
->DispatchTouchEvent(params
);
58 void DispatchKeyboardDevicesUpdated(
59 const std::vector
<KeyboardDevice
>& devices
) override
{
60 event_factory_evdev_
->DispatchKeyboardDevicesUpdated(devices
);
62 void DispatchTouchscreenDevicesUpdated(
63 const std::vector
<TouchscreenDevice
>& devices
) override
{
64 event_factory_evdev_
->DispatchTouchscreenDevicesUpdated(devices
);
66 void DispatchMouseDevicesUpdated(
67 const std::vector
<InputDevice
>& devices
) override
{
68 event_factory_evdev_
->DispatchMouseDevicesUpdated(devices
);
70 void DispatchTouchpadDevicesUpdated(
71 const std::vector
<InputDevice
>& devices
) override
{
72 event_factory_evdev_
->DispatchTouchpadDevicesUpdated(devices
);
76 EventFactoryEvdev
* event_factory_evdev_
;
79 class TestEventFactoryEvdev
: public EventFactoryEvdev
{
81 TestEventFactoryEvdev(CursorDelegateEvdev
* cursor
,
82 DeviceManager
* device_manager
,
83 KeyboardLayoutEngine
* keyboard_layout_engine
,
84 const EventDispatchCallback
& callback
)
85 : EventFactoryEvdev(cursor
, device_manager
, keyboard_layout_engine
),
86 callback_(callback
) {}
87 ~TestEventFactoryEvdev() override
{}
90 uint32_t DispatchEvent(PlatformEvent platform_event
) override
{
91 Event
* event
= static_cast<Event
*>(platform_event
);
93 return POST_DISPATCH_NONE
;
96 EventDispatchCallback callback_
;
101 scoped_ptr
<DeviceEventDispatcherEvdev
> CreateDeviceEventDispatcherEvdevForTest(
102 EventFactoryEvdev
* event_factory
) {
103 return make_scoped_ptr(new TestDeviceEventDispatcherEvdev(event_factory
));
106 scoped_ptr
<DeviceManager
> CreateDeviceManagerForTest() {
107 return make_scoped_ptr(new TestDeviceManager());
110 scoped_ptr
<EventFactoryEvdev
> CreateEventFactoryEvdevForTest(
111 CursorDelegateEvdev
* cursor
,
112 DeviceManager
* device_manager
,
113 KeyboardLayoutEngine
* keyboard_layout_engine
,
114 const EventDispatchCallback
& callback
) {
115 return make_scoped_ptr(new TestEventFactoryEvdev(
116 cursor
, device_manager
, keyboard_layout_engine
, callback
));