Index: components/test_runner/event_sender.cc |
diff --git a/components/test_runner/event_sender.cc b/components/test_runner/event_sender.cc |
index 7501c3fd3836aebfab8d9945aada772fb24678ef..64ffb4be80889f28d31dae42d99a7a5271e2f5f7 100644 |
--- a/components/test_runner/event_sender.cc |
+++ b/components/test_runner/event_sender.cc |
@@ -61,7 +61,7 @@ namespace test_runner { |
namespace { |
-const int kMousePointerId = -1; |
+const int kRawMousePointerId = -1; |
const char* kPointerTypeStringUnknown = ""; |
const char* kPointerTypeStringMouse = "mouse"; |
const char* kPointerTypeStringPen = "pen"; |
@@ -71,7 +71,7 @@ const char* kPointerTypeStringTouch = "touch"; |
// any error. |
bool getPointerType(gin::Arguments* args, |
bool isOnlyMouseAndPenAllowed, |
- blink::WebPointerProperties::PointerType& pointerType) { |
+ WebPointerProperties::PointerType& pointerType) { |
if (args->PeekNext().IsEmpty()) |
return true; |
std::string pointer_type_string; |
@@ -100,30 +100,52 @@ bool getPointerType(gin::Arguments* args, |
return true; |
} |
-// Assigns |pointerType| and |pointerId| from the provided |args|. Returns |
-// false if there was any error. |
-bool getMousePenPointerTypeAndId( |
+// Parses |pointerType|, |rawPointerId|, |pressure|, |tiltX| and |tiltY| from |
+// the provided |args|. Returns false if there was any error, assuming the last |
+// 3 of the five parsed parameters are optional. |
+bool getMousePenPointerProperties( |
gin::Arguments* args, |
- blink::WebPointerProperties::PointerType& pointerType, |
- int& pointerId) { |
- pointerType = blink::WebPointerProperties::PointerType::Mouse; |
- pointerId = kMousePointerId; |
+ WebPointerProperties::PointerType& pointerType, |
+ int& rawPointerId, |
+ float& pressure, |
+ int& tiltX, |
+ int& tiltY) { |
+ pointerType = WebPointerProperties::PointerType::Mouse; |
+ rawPointerId = kRawMousePointerId; |
+ pressure = std::numeric_limits<float>::quiet_NaN(); |
+ tiltX = 0; |
+ tiltY = 0; |
+ |
// Only allow pen or mouse through this API. |
if (!getPointerType(args, false, pointerType)) |
return false; |
if (!args->PeekNext().IsEmpty()) { |
- if (!args->GetNext(&pointerId)) { |
+ if (!args->GetNext(&rawPointerId)) { |
args->ThrowError(); |
return false; |
} |
- if (pointerType != blink::WebPointerProperties::PointerType::Mouse && |
- pointerId == kMousePointerId) { |
- args->ThrowError(); |
- return false; |
+ |
+ // Parse optional params |
+ if (!args->PeekNext().IsEmpty()) { |
+ if (!args->GetNext(&pressure)) { |
+ args->ThrowError(); |
+ return false; |
+ } |
+ if (!args->PeekNext().IsEmpty()) { |
+ if (!args->GetNext(&tiltX)) { |
+ args->ThrowError(); |
+ return false; |
+ } |
+ if (!args->PeekNext().IsEmpty()) { |
+ if (!args->GetNext(&tiltY)) { |
+ args->ThrowError(); |
+ return false; |
+ } |
+ } |
+ } |
} |
- } else if (pointerType == blink::WebPointerProperties::PointerType::Pen) { |
- pointerId = 1; // A default value for the id of the pen. |
} |
+ |
return true; |
} |
@@ -165,16 +187,19 @@ int modifiersWithButtons(int modifiers, int buttons) { |
| (buttons & kButtonsInModifiers); |
} |
-void InitMouseEvent(WebInputEvent::Type t, |
- WebMouseEvent::Button b, |
- int current_buttons, |
- const WebPoint& pos, |
- double time_stamp, |
- int click_count, |
- int modifiers, |
- blink::WebPointerProperties::PointerType pointerType, |
- int pointerId, |
- WebMouseEvent* e) { |
+void InitMouseEventGeneric(WebInputEvent::Type t, |
+ WebMouseEvent::Button b, |
+ int current_buttons, |
+ const WebPoint& pos, |
+ double time_stamp, |
+ int click_count, |
+ int modifiers, |
+ WebPointerProperties::PointerType pointerType, |
+ int pointerId, |
+ float pressure, |
+ int tiltX, |
+ int tiltY, |
+ WebMouseEvent* e) { |
e->type = t; |
e->button = b; |
e->modifiers = modifiersWithButtons(modifiers, current_buttons); |
@@ -184,10 +209,26 @@ void InitMouseEvent(WebInputEvent::Type t, |
e->globalY = pos.y; |
e->pointerType = pointerType; |
e->id = pointerId; |
+ e->force = pressure; |
+ e->tiltX = tiltX; |
+ e->tiltY = tiltY; |
e->timeStampSeconds = time_stamp; |
e->clickCount = click_count; |
} |
+void InitMouseEvent(WebInputEvent::Type t, |
+ WebMouseEvent::Button b, |
+ int current_buttons, |
+ const WebPoint& pos, |
+ double time_stamp, |
+ int click_count, |
+ int modifiers, |
+ WebMouseEvent* e) { |
+ InitMouseEventGeneric(t, b, current_buttons, pos, time_stamp, click_count, |
+ modifiers, WebPointerProperties::PointerType::Mouse, 0, |
+ 0.0, 0, 0, e); |
+} |
+ |
void InitGestureEventFromMouseWheel(WebInputEvent::Type type, |
double time_stamp, |
const WebMouseWheelEvent& wheel_event, |
@@ -989,9 +1030,6 @@ void EventSenderBindings::MouseDown(gin::Arguments* args) { |
int button_number = 0; |
int modifiers = 0; |
- blink::WebPointerProperties::PointerType pointerType = |
- blink::WebPointerProperties::PointerType::Mouse; |
- int pointerId = 0; |
if (!args->PeekNext().IsEmpty()) { |
if (!args->GetNext(&button_number)) { |
args->ThrowError(); |
@@ -1003,10 +1041,18 @@ void EventSenderBindings::MouseDown(gin::Arguments* args) { |
} |
} |
- if (!getMousePenPointerTypeAndId(args, pointerType, pointerId)) |
+ WebPointerProperties::PointerType pointerType = |
+ WebPointerProperties::PointerType::Mouse; |
+ int pointerId = 0; |
+ float pressure = 0; |
+ int tiltX = 0; |
+ int tiltY = 0; |
+ if (!getMousePenPointerProperties(args, pointerType, pointerId, pressure, |
+ tiltX, tiltY)) |
return; |
- sender_->PointerDown(button_number, modifiers, pointerType, pointerId); |
+ sender_->PointerDown(button_number, modifiers, pointerType, pointerId, |
+ pressure, tiltX, tiltY); |
} |
void EventSenderBindings::MouseUp(gin::Arguments* args) { |
@@ -1015,9 +1061,6 @@ void EventSenderBindings::MouseUp(gin::Arguments* args) { |
int button_number = 0; |
int modifiers = 0; |
- blink::WebPointerProperties::PointerType pointerType = |
- blink::WebPointerProperties::PointerType::Mouse; |
- int pointerId = 0; |
if (!args->PeekNext().IsEmpty()) { |
if (!args->GetNext(&button_number)) { |
args->ThrowError(); |
@@ -1029,10 +1072,18 @@ void EventSenderBindings::MouseUp(gin::Arguments* args) { |
} |
} |
- if (!getMousePenPointerTypeAndId(args, pointerType, pointerId)) |
+ WebPointerProperties::PointerType pointerType = |
+ WebPointerProperties::PointerType::Mouse; |
+ int pointerId = 0; |
+ float pressure = 0; |
+ int tiltX = 0; |
+ int tiltY = 0; |
+ if (!getMousePenPointerProperties(args, pointerType, pointerId, pressure, |
+ tiltX, tiltY)) |
return; |
- sender_->PointerUp(button_number, modifiers, pointerType, pointerId); |
+ sender_->PointerUp(button_number, modifiers, pointerType, pointerId, pressure, |
+ tiltX, tiltY); |
} |
void EventSenderBindings::SetMouseButtonState(gin::Arguments* args) { |
@@ -1210,7 +1261,7 @@ void EventSender::Reset() { |
current_drag_effect_ = blink::WebDragOperationNone; |
current_drag_effects_allowed_ = blink::WebDragOperationNone; |
if (view() && |
- current_pointer_state_[kMousePointerId].pressed_button_ != |
+ current_pointer_state_[kRawMousePointerId].pressed_button_ != |
WebMouseEvent::ButtonNone) |
view()->mouseCaptureLost(); |
current_pointer_state_.clear(); |
@@ -1257,15 +1308,11 @@ void EventSender::DoDragDrop(const WebDragData& drag_data, |
WebDragOperationsMask mask) { |
WebMouseEvent event; |
InitMouseEvent(WebInputEvent::MouseDown, |
- current_pointer_state_[kMousePointerId].pressed_button_, |
- current_pointer_state_[kMousePointerId].current_buttons_, |
- current_pointer_state_[kMousePointerId].last_pos_, |
- GetCurrentEventTimeSec(), |
- click_count_, |
- current_pointer_state_[kMousePointerId].modifiers_, |
- blink::WebPointerProperties::PointerType::Mouse, |
- 0, |
- &event); |
+ current_pointer_state_[kRawMousePointerId].pressed_button_, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_, |
+ current_pointer_state_[kRawMousePointerId].last_pos_, |
+ GetCurrentEventTimeSec(), click_count_, |
+ current_pointer_state_[kRawMousePointerId].modifiers_, &event); |
WebPoint client_point(event.x, event.y); |
WebPoint screen_point(event.globalX, event.globalY); |
current_drag_data_ = drag_data; |
@@ -1273,8 +1320,8 @@ void EventSender::DoDragDrop(const WebDragData& drag_data, |
current_drag_effect_ = view()->dragTargetDragEnter( |
drag_data, client_point, screen_point, current_drag_effects_allowed_, |
modifiersWithButtons( |
- current_pointer_state_[kMousePointerId].modifiers_, |
- current_pointer_state_[kMousePointerId].current_buttons_)); |
+ current_pointer_state_[kRawMousePointerId].modifiers_, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_)); |
// Finish processing events. |
ReplaySavedEvents(); |
@@ -1282,19 +1329,22 @@ void EventSender::DoDragDrop(const WebDragData& drag_data, |
void EventSender::MouseDown(int button_number, int modifiers) { |
PointerDown(button_number, modifiers, |
- blink::WebPointerProperties::PointerType::Mouse, kMousePointerId); |
+ WebPointerProperties::PointerType::Mouse, kRawMousePointerId, 0.0, |
+ 0, 0); |
} |
void EventSender::MouseUp(int button_number, int modifiers) { |
- PointerUp(button_number, modifiers, |
- blink::WebPointerProperties::PointerType::Mouse, kMousePointerId); |
+ PointerUp(button_number, modifiers, WebPointerProperties::PointerType::Mouse, |
+ kRawMousePointerId, 0.0, 0, 0); |
} |
-void EventSender::PointerDown( |
- int button_number, |
- int modifiers, |
- blink::WebPointerProperties::PointerType pointerType, |
- int pointerId) { |
+void EventSender::PointerDown(int button_number, |
+ int modifiers, |
+ WebPointerProperties::PointerType pointerType, |
+ int pointerId, |
+ float pressure, |
+ int tiltX, |
+ int tiltY) { |
if (force_layout_on_events_) |
view()->updateAllLifecyclePhases(); |
@@ -1310,29 +1360,28 @@ void EventSender::PointerDown( |
GetWebMouseEventModifierForButton(button_type); |
current_pointer_state_[pointerId].modifiers_ = modifiers; |
- if (pointerType == blink::WebPointerProperties::PointerType::Mouse) { |
+ if (pointerType == WebPointerProperties::PointerType::Mouse) { |
UpdateClickCountForButton(button_type); |
click_count = click_count_; |
} |
- InitMouseEvent(WebInputEvent::MouseDown, |
- current_pointer_state_[pointerId].pressed_button_, |
- current_pointer_state_[pointerId].current_buttons_, |
- current_pointer_state_[pointerId].last_pos_, |
- GetCurrentEventTimeSec(), |
- click_count, |
- current_pointer_state_[pointerId].modifiers_, |
- pointerType, |
- pointerId, |
- &event); |
+ InitMouseEventGeneric(WebInputEvent::MouseDown, |
+ current_pointer_state_[pointerId].pressed_button_, |
+ current_pointer_state_[pointerId].current_buttons_, |
+ current_pointer_state_[pointerId].last_pos_, |
+ GetCurrentEventTimeSec(), click_count, |
+ current_pointer_state_[pointerId].modifiers_, |
+ pointerType, pointerId, pressure, tiltX, tiltY, &event); |
HandleInputEventOnViewOrPopup(event); |
} |
-void EventSender::PointerUp( |
- int button_number, |
- int modifiers, |
- blink::WebPointerProperties::PointerType pointerType, |
- int pointerId) { |
+void EventSender::PointerUp(int button_number, |
+ int modifiers, |
+ WebPointerProperties::PointerType pointerType, |
+ int pointerId, |
+ float pressure, |
+ int tiltX, |
+ int tiltY) { |
if (force_layout_on_events_) |
view()->updateAllLifecyclePhases(); |
@@ -1341,7 +1390,7 @@ void EventSender::PointerUp( |
WebMouseEvent::Button button_type = |
GetButtonTypeFromButtonNumber(button_number); |
- if (pointerType == blink::WebPointerProperties::PointerType::Mouse && |
+ if (pointerType == WebPointerProperties::PointerType::Mouse && |
is_drag_mode_ && !replaying_saved_events_) { |
SavedEvent saved_event; |
saved_event.type = SavedEvent::TYPE_MOUSE_UP; |
@@ -1356,27 +1405,28 @@ void EventSender::PointerUp( |
WebMouseEvent::ButtonNone; |
WebMouseEvent event; |
- InitMouseEvent( |
- WebInputEvent::MouseUp, button_type, |
- current_pointer_state_[pointerId].current_buttons_, |
- current_pointer_state_[pointerId].last_pos_, GetCurrentEventTimeSec(), |
- pointerType == blink::WebPointerProperties::PointerType::Mouse |
- ? click_count_ |
- : 0, |
- modifiers, pointerType, pointerId, &event); |
+ int click_count = pointerType == WebPointerProperties::PointerType::Mouse |
+ ? click_count_ |
+ : 0; |
+ InitMouseEventGeneric(WebInputEvent::MouseUp, button_type, |
+ current_pointer_state_[pointerId].current_buttons_, |
+ current_pointer_state_[pointerId].last_pos_, |
+ GetCurrentEventTimeSec(), click_count, modifiers, |
+ pointerType, pointerId, pressure, tiltX, tiltY, |
+ &event); |
HandleInputEventOnViewOrPopup(event); |
- if (pointerType == blink::WebPointerProperties::PointerType::Mouse) |
+ if (pointerType == WebPointerProperties::PointerType::Mouse) |
DoDragAfterMouseUp(event); |
} |
} |
void EventSender::SetMouseButtonState(int button_number, int modifiers) { |
- current_pointer_state_[kMousePointerId].pressed_button_ = |
+ current_pointer_state_[kRawMousePointerId].pressed_button_ = |
GetButtonTypeFromButtonNumber(button_number); |
- current_pointer_state_[kMousePointerId].current_buttons_ = |
+ current_pointer_state_[kRawMousePointerId].current_buttons_ = |
(modifiers == -1) |
? GetWebMouseEventModifierForButton( |
- current_pointer_state_[kMousePointerId].pressed_button_) |
+ current_pointer_state_[kRawMousePointerId].pressed_button_) |
: modifiers & kButtonsInModifiers; |
} |
@@ -1609,15 +1659,10 @@ void EventSender::KeyDown(const std::string& code_str, |
if (code == ui::VKEY_ESCAPE && !current_drag_data_.isNull()) { |
WebMouseEvent event; |
InitMouseEvent(WebInputEvent::MouseDown, |
- current_pointer_state_[kMousePointerId].pressed_button_, |
- current_pointer_state_[kMousePointerId].current_buttons_, |
- current_pointer_state_[kMousePointerId].last_pos_, |
- GetCurrentEventTimeSec(), |
- click_count_, |
- 0, |
- blink::WebPointerProperties::PointerType::Mouse, |
- 0, |
- &event); |
+ current_pointer_state_[kRawMousePointerId].pressed_button_, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_, |
+ current_pointer_state_[kRawMousePointerId].last_pos_, |
+ GetCurrentEventTimeSec(), click_count_, 0, &event); |
FinishDragAndDrop(event, blink::WebDragOperationNone); |
} |
@@ -1661,42 +1706,30 @@ std::vector<std::string> EventSender::ContextClick() { |
// pressed. |
// TODO(mustaq): This hack seems unused here! But do we need this hack at all |
// after adding current_buttons_. |
- if (current_pointer_state_[kMousePointerId].pressed_button_ == |
+ if (current_pointer_state_[kRawMousePointerId].pressed_button_ == |
WebMouseEvent::ButtonNone) { |
- current_pointer_state_[kMousePointerId].pressed_button_ = |
+ current_pointer_state_[kRawMousePointerId].pressed_button_ = |
WebMouseEvent::ButtonRight; |
- current_pointer_state_[kMousePointerId].current_buttons_ |= |
+ current_pointer_state_[kRawMousePointerId].current_buttons_ |= |
GetWebMouseEventModifierForButton( |
- current_pointer_state_[kMousePointerId].pressed_button_); |
+ current_pointer_state_[kRawMousePointerId].pressed_button_); |
} |
- InitMouseEvent(WebInputEvent::MouseDown, |
- WebMouseEvent::ButtonRight, |
- current_pointer_state_[kMousePointerId].current_buttons_, |
- current_pointer_state_[kMousePointerId].last_pos_, |
- GetCurrentEventTimeSec(), |
- click_count_, |
- 0, |
- blink::WebPointerProperties::PointerType::Mouse, |
- 0, |
- &event); |
+ InitMouseEvent(WebInputEvent::MouseDown, WebMouseEvent::ButtonRight, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_, |
+ current_pointer_state_[kRawMousePointerId].last_pos_, |
+ GetCurrentEventTimeSec(), click_count_, 0, &event); |
HandleInputEventOnViewOrPopup(event); |
#if defined(OS_WIN) |
- current_pointer_state_[kMousePointerId].current_buttons_ &= |
+ current_pointer_state_[kRawMousePointerId].current_buttons_ &= |
~GetWebMouseEventModifierForButton(WebMouseEvent::ButtonRight); |
- current_pointer_state_[kMousePointerId].pressed_button_ = |
+ current_pointer_state_[kRawMousePointerId].pressed_button_ = |
WebMouseEvent::ButtonNone; |
- InitMouseEvent(WebInputEvent::MouseUp, |
- WebMouseEvent::ButtonRight, |
- current_pointer_state_[kMousePointerId].current_buttons_, |
- current_pointer_state_[kMousePointerId].last_pos_, |
- GetCurrentEventTimeSec(), |
- click_count_, |
- 0, |
- blink::WebPointerProperties::PointerType::Mouse, |
- 0, |
- &event); |
+ InitMouseEvent(WebInputEvent::MouseUp, WebMouseEvent::ButtonRight, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_, |
+ current_pointer_state_[kRawMousePointerId].last_pos_, |
+ GetCurrentEventTimeSec(), click_count_, 0, &event); |
HandleInputEventOnViewOrPopup(event); |
#endif |
@@ -1923,7 +1956,7 @@ void EventSender::NotifyStartOfTouchScroll() { |
void EventSender::LeapForward(int milliseconds) { |
if (is_drag_mode_ && |
- current_pointer_state_[kMousePointerId].pressed_button_ == |
+ current_pointer_state_[kRawMousePointerId].pressed_button_ == |
WebMouseEvent::ButtonLeft && |
!replaying_saved_events_) { |
SavedEvent saved_event; |
@@ -1960,20 +1993,20 @@ void EventSender::BeginDragWithFiles(const std::vector<std::string>& files) { |
current_drag_effects_allowed_ = blink::WebDragOperationCopy; |
// Provide a drag source. |
- view()->dragTargetDragEnter(current_drag_data_, |
- current_pointer_state_[kMousePointerId].last_pos_, |
- current_pointer_state_[kMousePointerId].last_pos_, |
- current_drag_effects_allowed_, 0); |
+ view()->dragTargetDragEnter( |
+ current_drag_data_, current_pointer_state_[kRawMousePointerId].last_pos_, |
+ current_pointer_state_[kRawMousePointerId].last_pos_, |
+ current_drag_effects_allowed_, 0); |
// |is_drag_mode_| saves events and then replays them later. We don't |
// need/want that. |
is_drag_mode_ = false; |
// Make the rest of eventSender think a drag is in progress. |
- current_pointer_state_[kMousePointerId].pressed_button_ = |
+ current_pointer_state_[kRawMousePointerId].pressed_button_ = |
WebMouseEvent::ButtonLeft; |
- current_pointer_state_[kMousePointerId].current_buttons_ |= |
+ current_pointer_state_[kRawMousePointerId].current_buttons_ |= |
GetWebMouseEventModifierForButton( |
- current_pointer_state_[kMousePointerId].pressed_button_); |
+ current_pointer_state_[kRawMousePointerId].pressed_button_); |
} |
void EventSender::AddTouchPoint(float x, float y, gin::Arguments* args) { |
@@ -2073,9 +2106,6 @@ void EventSender::MouseMoveTo(gin::Arguments* args) { |
double x; |
double y; |
- blink::WebPointerProperties::PointerType pointerType = |
- blink::WebPointerProperties::PointerType::Mouse; |
- int pointerId = 0; |
if (!args->GetNext(&x) || !args->GetNext(&y)) { |
args->ThrowError(); |
return; |
@@ -2088,12 +2118,19 @@ void EventSender::MouseMoveTo(gin::Arguments* args) { |
args->Skip(); |
} |
- if (!getMousePenPointerTypeAndId(args, pointerType, pointerId)) |
+ WebPointerProperties::PointerType pointerType = |
+ WebPointerProperties::PointerType::Mouse; |
+ int pointerId = 0; |
+ float pressure = 0; |
+ int tiltX = 0; |
+ int tiltY = 0; |
+ if (!getMousePenPointerProperties(args, pointerType, pointerId, pressure, |
+ tiltX, tiltY)) |
return; |
- if (pointerType == blink::WebPointerProperties::PointerType::Mouse && |
+ if (pointerType == WebPointerProperties::PointerType::Mouse && |
is_drag_mode_ && !replaying_saved_events_ && |
- current_pointer_state_[kMousePointerId].pressed_button_ == |
+ current_pointer_state_[kRawMousePointerId].pressed_button_ == |
WebMouseEvent::ButtonLeft) { |
SavedEvent saved_event; |
saved_event.type = SavedEvent::TYPE_MOUSE_MOVE; |
@@ -2103,21 +2140,17 @@ void EventSender::MouseMoveTo(gin::Arguments* args) { |
} else { |
current_pointer_state_[pointerId].last_pos_ = mouse_pos; |
WebMouseEvent event; |
- InitMouseEvent( |
+ int click_count = pointerType == WebPointerProperties::PointerType::Mouse |
+ ? click_count_ |
+ : 0; |
+ InitMouseEventGeneric( |
WebInputEvent::MouseMove, |
- current_pointer_state_[kMousePointerId].pressed_button_, |
- current_pointer_state_[kMousePointerId].current_buttons_, |
- mouse_pos, |
- GetCurrentEventTimeSec(), |
- pointerType == blink::WebPointerProperties::PointerType::Mouse |
- ? click_count_ |
- : 0, |
- modifiers, |
- pointerType, |
- pointerId, |
- &event); |
+ current_pointer_state_[kRawMousePointerId].pressed_button_, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_, mouse_pos, |
+ GetCurrentEventTimeSec(), click_count, modifiers, pointerType, |
+ pointerId, pressure, tiltX, tiltY, &event); |
HandleInputEventOnViewOrPopup(event); |
- if (pointerType == blink::WebPointerProperties::PointerType::Mouse) |
+ if (pointerType == WebPointerProperties::PointerType::Mouse) |
DoDragAfterMouseMove(event); |
} |
} |
@@ -2127,16 +2160,9 @@ void EventSender::MouseLeave() { |
view()->updateAllLifecyclePhases(); |
WebMouseEvent event; |
- InitMouseEvent(WebInputEvent::MouseLeave, |
- WebMouseEvent::ButtonNone, |
- 0, |
- current_pointer_state_[kMousePointerId].last_pos_, |
- GetCurrentEventTimeSec(), |
- click_count_, |
- 0, |
- blink::WebPointerProperties::PointerType::Mouse, |
- 0, |
- &event); |
+ InitMouseEvent(WebInputEvent::MouseLeave, WebMouseEvent::ButtonNone, 0, |
+ current_pointer_state_[kRawMousePointerId].last_pos_, |
+ GetCurrentEventTimeSec(), click_count_, 0, &event); |
HandleInputEventOnViewOrPopup(event); |
} |
@@ -2455,13 +2481,10 @@ void EventSender::GestureEvent(WebInputEvent::Type type, |
if (type == WebInputEvent::GestureLongPress && !current_drag_data_.isNull()) { |
WebMouseEvent mouse_event; |
InitMouseEvent(WebInputEvent::MouseDown, |
- current_pointer_state_[kMousePointerId].pressed_button_, |
- current_pointer_state_[kMousePointerId].current_buttons_, |
- WebPoint(x, y), GetCurrentEventTimeSec(), |
- click_count_, |
- current_pointer_state_[kMousePointerId].modifiers_, |
- blink::WebPointerProperties::PointerType::Mouse, |
- 0, |
+ current_pointer_state_[kRawMousePointerId].pressed_button_, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_, |
+ WebPoint(x, y), GetCurrentEventTimeSec(), click_count_, |
+ current_pointer_state_[kRawMousePointerId].modifiers_, |
&mouse_event); |
FinishDragAndDrop(mouse_event, blink::WebDragOperationNone); |
@@ -2474,7 +2497,7 @@ void EventSender::UpdateClickCountForButton( |
if ((GetCurrentEventTimeSec() - last_click_time_sec_ < |
kMultipleClickTimeSec) && |
(!OutsideMultiClickRadius( |
- current_pointer_state_[kMousePointerId].last_pos_, |
+ current_pointer_state_[kRawMousePointerId].last_pos_, |
last_click_pos_)) && |
(button_type == last_button_type_)) { |
++click_count_; |
@@ -2529,15 +2552,10 @@ void EventSender::InitMouseWheelEvent(gin::Arguments* args, |
} |
InitMouseEvent(WebInputEvent::MouseWheel, |
- current_pointer_state_[kMousePointerId].pressed_button_, |
- current_pointer_state_[kMousePointerId].current_buttons_, |
- current_pointer_state_[kMousePointerId].last_pos_, |
- GetCurrentEventTimeSec(), |
- click_count_, |
- modifiers, |
- blink::WebPointerProperties::PointerType::Mouse, |
- 0, |
- event); |
+ current_pointer_state_[kRawMousePointerId].pressed_button_, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_, |
+ current_pointer_state_[kRawMousePointerId].last_pos_, |
+ GetCurrentEventTimeSec(), click_count_, modifiers, event); |
event->wheelTicksX = static_cast<float>(horizontal); |
event->wheelTicksY = static_cast<float>(vertical); |
event->deltaX = event->wheelTicksX; |
@@ -2558,7 +2576,7 @@ void EventSender::InitMouseWheelEvent(gin::Arguments* args, |
// WebPointerProperties. |
// TODO(e_hakkinen): Drop radius_{x,y}_pointer parameters once that happens. |
void EventSender::InitPointerProperties(gin::Arguments* args, |
- blink::WebPointerProperties* e, |
+ WebPointerProperties* e, |
float* radius_x_pointer, |
float* radius_y_pointer) { |
if (!args->PeekNext().IsEmpty()) { |
@@ -2623,7 +2641,7 @@ void EventSender::FinishDragAndDrop(const WebMouseEvent& e, |
void EventSender::DoDragAfterMouseUp(const WebMouseEvent& e) { |
last_click_time_sec_ = e.timeStampSeconds; |
- last_click_pos_ = current_pointer_state_[kMousePointerId].last_pos_; |
+ last_click_pos_ = current_pointer_state_[kRawMousePointerId].last_pos_; |
// If we're in a drag operation, complete it. |
if (current_drag_data_.isNull()) |
@@ -2642,7 +2660,7 @@ void EventSender::DoDragAfterMouseUp(const WebMouseEvent& e) { |
} |
void EventSender::DoDragAfterMouseMove(const WebMouseEvent& e) { |
- if (current_pointer_state_[kMousePointerId].pressed_button_ == |
+ if (current_pointer_state_[kRawMousePointerId].pressed_button_ == |
WebMouseEvent::ButtonNone || |
current_drag_data_.isNull()) { |
return; |
@@ -2665,16 +2683,10 @@ void EventSender::ReplaySavedEvents() { |
WebMouseEvent event; |
InitMouseEvent( |
WebInputEvent::MouseMove, |
- current_pointer_state_[kMousePointerId].pressed_button_, |
- current_pointer_state_[kMousePointerId].current_buttons_, |
- e.pos, |
- GetCurrentEventTimeSec(), |
- click_count_, |
- e.modifiers, |
- blink::WebPointerProperties::PointerType::Mouse, |
- 0, |
- &event); |
- current_pointer_state_[kMousePointerId].last_pos_ = |
+ current_pointer_state_[kRawMousePointerId].pressed_button_, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_, e.pos, |
+ GetCurrentEventTimeSec(), click_count_, e.modifiers, &event); |
+ current_pointer_state_[kRawMousePointerId].last_pos_ = |
WebPoint(event.x, event.y); |
HandleInputEventOnViewOrPopup(event); |
DoDragAfterMouseMove(event); |
@@ -2684,22 +2696,17 @@ void EventSender::ReplaySavedEvents() { |
DoLeapForward(e.milliseconds); |
break; |
case SavedEvent::TYPE_MOUSE_UP: { |
- current_pointer_state_[kMousePointerId].current_buttons_ &= |
+ current_pointer_state_[kRawMousePointerId].current_buttons_ &= |
~GetWebMouseEventModifierForButton(e.button_type); |
- current_pointer_state_[kMousePointerId].pressed_button_ = |
+ current_pointer_state_[kRawMousePointerId].pressed_button_ = |
WebMouseEvent::ButtonNone; |
WebMouseEvent event; |
- InitMouseEvent(WebInputEvent::MouseUp, |
- e.button_type, |
- current_pointer_state_[kMousePointerId].current_buttons_, |
- current_pointer_state_[kMousePointerId].last_pos_, |
- GetCurrentEventTimeSec(), |
- click_count_, |
- e.modifiers, |
- blink::WebPointerProperties::PointerType::Mouse, |
- 0, |
- &event); |
+ InitMouseEvent( |
+ WebInputEvent::MouseUp, e.button_type, |
+ current_pointer_state_[kRawMousePointerId].current_buttons_, |
+ current_pointer_state_[kRawMousePointerId].last_pos_, |
+ GetCurrentEventTimeSec(), click_count_, e.modifiers, &event); |
HandleInputEventOnViewOrPopup(event); |
DoDragAfterMouseUp(event); |
break; |