Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(317)

Unified Diff: content/shell/test_runner/event_sender.cc

Issue 2867093003: Do not increase the pointer id when type is eraser (Closed)
Patch Set: eraser id Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/shell/test_runner/event_sender.cc
diff --git a/content/shell/test_runner/event_sender.cc b/content/shell/test_runner/event_sender.cc
index 081d63af64ace7331926df05a6125b78bb1e6d03..3f20c735df0425ed483585f797b3c093ac6244e7 100644
--- a/content/shell/test_runner/event_sender.cc
+++ b/content/shell/test_runner/event_sender.cc
@@ -616,7 +616,7 @@ class EventSenderBindings : public gin::Wrappable<EventSenderBindings> {
void GestureTwoFingerTap(gin::Arguments* args);
void ContinuousMouseScrollBy(gin::Arguments* args);
void MouseMoveTo(gin::Arguments* args);
- void MouseLeave();
+ void MouseLeave(gin::Arguments* args);
void MouseScrollBy(gin::Arguments* args);
void ScheduleAsynchronousClick(gin::Arguments* args);
void ScheduleAsynchronousKeyDown(gin::Arguments* args);
@@ -1015,9 +1015,24 @@ void EventSenderBindings::MouseMoveTo(gin::Arguments* args) {
sender_->MouseMoveTo(args);
}
-void EventSenderBindings::MouseLeave() {
- if (sender_)
- sender_->MouseLeave();
+void EventSenderBindings::MouseLeave(gin::Arguments* args) {
+ if (!sender_)
+ return;
+
+ WebPointerProperties::PointerType pointerType =
+ WebPointerProperties::PointerType::kMouse;
+ int pointerId = kRawMousePointerId;
+
+ // Only allow pen or mouse through this API.
+ if (!getPointerType(args, false, pointerType))
+ return;
+ if (!args->PeekNext().IsEmpty()) {
+ if (!args->GetNext(&pointerId)) {
+ args->ThrowError();
+ return;
+ }
+ }
+ sender_->MouseLeave(pointerType, pointerId);
}
void EventSenderBindings::MouseScrollBy(gin::Arguments* args) {
@@ -2211,16 +2226,18 @@ void EventSender::MouseMoveTo(gin::Arguments* args) {
}
}
-void EventSender::MouseLeave() {
+void EventSender::MouseLeave(
+ blink::WebPointerProperties::PointerType pointerType,
+ int pointerId) {
if (force_layout_on_events_)
widget()->UpdateAllLifecyclePhases();
WebMouseEvent event(WebInputEvent::kMouseLeave,
- ModifiersForPointer(kRawMousePointerId),
- GetCurrentEventTimeSec());
- InitMouseEvent(WebMouseEvent::Button::kNoButton, 0,
- current_pointer_state_[kRawMousePointerId].last_pos_,
- click_count_, &event);
+ ModifiersForPointer(pointerId), GetCurrentEventTimeSec());
+ InitMouseEventGeneric(WebMouseEvent::Button::kNoButton, 0,
+ current_pointer_state_[kRawMousePointerId].last_pos_,
+ click_count_, pointerType, pointerId, 0.0, 0, 0,
+ &event);
HandleInputEventOnViewOrPopup(event);
}

Powered by Google App Engine
This is Rietveld 408576698