Chromium Code Reviews| Index: content/renderer/render_widget.cc |
| diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc |
| index 0541afe311f539e07552d9055e37bbf46ad7af5e..3eae941222e02a342e19df00a37a358d6de53d8f 100644 |
| --- a/content/renderer/render_widget.cc |
| +++ b/content/renderer/render_widget.cc |
| @@ -446,10 +446,16 @@ void RenderWidget::OnHandleInputEvent(const IPC::Message& message) { |
| if (input_event->type == WebInputEvent::RawKeyDown) |
| message.ReadBool(&iter, &is_keyboard_shortcut); |
| - bool processed = false; |
| + bool mouse_event_absorbed = false; |
|
brettw
2011/09/14 22:17:58
I think this would be more clear if this were call
yzshen1
2011/09/19 20:48:41
Done. It looks much better.
|
| + if (WebInputEvent::isMouseEventType(input_event->type)) { |
| + mouse_event_absorbed = BeforeHandleMouseEvent( |
|
brettw
2011/09/14 22:17:58
Can you rename this to "WillHandleMouseEvent" whic
yzshen1
2011/09/19 20:48:41
Done.
|
| + *(static_cast<const WebMouseEvent*>(input_event))); |
| + } |
| + |
| + bool processed = mouse_event_absorbed; |
| if (input_event->type != WebInputEvent::Char || !suppress_next_char_events_) { |
| suppress_next_char_events_ = false; |
| - if (webwidget_) |
| + if (!processed && webwidget_) |
| processed = webwidget_->handleInputEvent(*input_event); |
| } |
| @@ -484,8 +490,10 @@ void RenderWidget::OnHandleInputEvent(const IPC::Message& message) { |
| if (WebInputEvent::isKeyboardEventType(input_event->type)) |
| DidHandleKeyEvent(); |
| - if (WebInputEvent::isMouseEventType(input_event->type)) |
| + if (!mouse_event_absorbed && |
| + WebInputEvent::isMouseEventType(input_event->type)) { |
| DidHandleMouseEvent(*(static_cast<const WebMouseEvent*>(input_event))); |
| + } |
| } |
| void RenderWidget::OnMouseCaptureLost() { |