| Index: components/test_runner/event_sender.cc
|
| diff --git a/components/test_runner/event_sender.cc b/components/test_runner/event_sender.cc
|
| index a5fcc7bfb56d49e10f2b016055f8f898fb6bf77a..fdcc7f3519944c66340a034dede057f41822d5af 100644
|
| --- a/components/test_runner/event_sender.cc
|
| +++ b/components/test_runner/event_sender.cc
|
| @@ -408,6 +408,30 @@ bool IsSystemKeyEvent(const WebKeyboardEvent& event) {
|
| #endif
|
| }
|
|
|
| +bool GetScrollUnits(gin::Arguments* args, WebGestureEvent::ScrollUnits* units) {
|
| + std::string units_string;
|
| + if (!args->PeekNext().IsEmpty()) {
|
| + if (args->PeekNext()->IsString())
|
| + args->GetNext(&units_string);
|
| + if (units_string == "Page") {
|
| + *units = WebGestureEvent::Page;
|
| + return true;
|
| + } else if (units_string == "Pixels") {
|
| + *units = WebGestureEvent::Pixels;
|
| + return true;
|
| + } else if (units_string == "PrecisePixels") {
|
| + *units = WebGestureEvent::PrecisePixels;
|
| + return true;
|
| + } else {
|
| + args->ThrowError();
|
| + return false;
|
| + }
|
| + } else {
|
| + *units = WebGestureEvent::PrecisePixels;
|
| + return true;
|
| + }
|
| +}
|
| +
|
| const char* kSourceDeviceStringTouchpad = "touchpad";
|
| const char* kSourceDeviceStringTouchscreen = "touchscreen";
|
|
|
| @@ -2142,6 +2166,8 @@ void EventSender::GestureEvent(WebInputEvent::Type type,
|
| return;
|
| }
|
| }
|
| + if (!GetScrollUnits(args, &event.data.scrollUpdate.deltaUnits))
|
| + return;
|
|
|
| event.data.scrollUpdate.deltaX = static_cast<float>(x);
|
| event.data.scrollUpdate.deltaY = static_cast<float>(y);
|
|
|