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

Side by Side Diff: content/browser/renderer_host/web_input_event_aura.cc

Issue 585393002: Use changed_button_flags() when converting MouseEvent to blink::WebMouseEvent. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 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 unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "content/browser/renderer_host/web_input_event_aura.h" 5 #include "content/browser/renderer_host/web_input_event_aura.h"
6 6
7 #include "content/browser/renderer_host/ui_events_helper.h" 7 #include "content/browser/renderer_host/ui_events_helper.h"
8 #include "ui/aura/window.h" 8 #include "ui/aura/window.h"
9 #include "ui/events/event.h" 9 #include "ui/events/event.h"
10 #include "ui/events/event_utils.h" 10 #include "ui/events/event_utils.h"
(...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 return gesture_event; 306 return gesture_event;
307 } 307 }
308 308
309 blink::WebMouseEvent MakeWebMouseEventFromAuraEvent(ui::MouseEvent* event) { 309 blink::WebMouseEvent MakeWebMouseEventFromAuraEvent(ui::MouseEvent* event) {
310 blink::WebMouseEvent webkit_event; 310 blink::WebMouseEvent webkit_event;
311 311
312 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags()); 312 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags());
313 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF(); 313 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF();
314 314
315 webkit_event.button = blink::WebMouseEvent::ButtonNone; 315 webkit_event.button = blink::WebMouseEvent::ButtonNone;
316 if (event->flags() & ui::EF_LEFT_MOUSE_BUTTON) 316 int button_flags = event->flags();
317 if (event->type() == ui::ET_MOUSE_PRESSED ||
318 event->type() == ui::ET_MOUSE_RELEASED) {
319 // We want to use changed_button_flags() for mouse pressed & released.
320 // These flags can be used only if they are set which is not always the case
321 // (see e.g. GetChangedMouseButtonFlagsFromNative() in events_win.cc).
322 if (event->changed_button_flags())
323 button_flags = event->changed_button_flags();
324 }
325 if (button_flags & ui::EF_LEFT_MOUSE_BUTTON)
317 webkit_event.button = blink::WebMouseEvent::ButtonLeft; 326 webkit_event.button = blink::WebMouseEvent::ButtonLeft;
318 if (event->flags() & ui::EF_MIDDLE_MOUSE_BUTTON) 327 if (button_flags & ui::EF_MIDDLE_MOUSE_BUTTON)
319 webkit_event.button = blink::WebMouseEvent::ButtonMiddle; 328 webkit_event.button = blink::WebMouseEvent::ButtonMiddle;
320 if (event->flags() & ui::EF_RIGHT_MOUSE_BUTTON) 329 if (button_flags & ui::EF_RIGHT_MOUSE_BUTTON)
321 webkit_event.button = blink::WebMouseEvent::ButtonRight; 330 webkit_event.button = blink::WebMouseEvent::ButtonRight;
322 331
323 switch (event->type()) { 332 switch (event->type()) {
324 case ui::ET_MOUSE_PRESSED: 333 case ui::ET_MOUSE_PRESSED:
325 webkit_event.type = blink::WebInputEvent::MouseDown; 334 webkit_event.type = blink::WebInputEvent::MouseDown;
326 webkit_event.clickCount = event->GetClickCount(); 335 webkit_event.clickCount = event->GetClickCount();
327 break; 336 break;
328 case ui::ET_MOUSE_RELEASED: 337 case ui::ET_MOUSE_RELEASED:
329 webkit_event.type = blink::WebInputEvent::MouseUp; 338 webkit_event.type = blink::WebInputEvent::MouseUp;
330 webkit_event.clickCount = event->GetClickCount(); 339 webkit_event.clickCount = event->GetClickCount();
(...skipping 29 matching lines...) Expand all
360 webkit_event.deltaY = event->y_offset(); 369 webkit_event.deltaY = event->y_offset();
361 } 370 }
362 371
363 webkit_event.wheelTicksX = webkit_event.deltaX / kPixelsPerTick; 372 webkit_event.wheelTicksX = webkit_event.deltaX / kPixelsPerTick;
364 webkit_event.wheelTicksY = webkit_event.deltaY / kPixelsPerTick; 373 webkit_event.wheelTicksY = webkit_event.deltaY / kPixelsPerTick;
365 374
366 return webkit_event; 375 return webkit_event;
367 } 376 }
368 377
369 } // namespace content 378 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698