| Index: ui/views/widget/widget.cc
|
| diff --git a/ui/views/widget/widget.cc b/ui/views/widget/widget.cc
|
| index 280969a84e5e7d0067d1f10378dec9d6d15061fb..513e9acd00c4eabaaa5fae744cf173043a269033 100644
|
| --- a/ui/views/widget/widget.cc
|
| +++ b/ui/views/widget/widget.cc
|
| @@ -169,6 +169,7 @@ Widget::Widget()
|
| is_top_level_(false),
|
| native_widget_initialized_(false),
|
| native_widget_destroyed_(false),
|
| + hovered_(false),
|
| is_mouse_button_pressed_(false),
|
| ignore_capture_loss_(false),
|
| last_mouse_event_was_move_(false),
|
| @@ -988,6 +989,9 @@ gfx::Rect Widget::GetWorkAreaBoundsInScreen() const {
|
| }
|
|
|
| void Widget::SynthesizeMouseMoveEvent() {
|
| + if (!hovered_)
|
| + return;
|
| +
|
| last_mouse_event_was_move_ = false;
|
| ui::MouseEvent mouse_event(ui::ET_MOUSE_MOVED, last_mouse_event_position_,
|
| last_mouse_event_position_, ui::EventTimeForNow(),
|
| @@ -1230,7 +1234,12 @@ void Widget::OnMouseEvent(ui::MouseEvent* event) {
|
| }
|
| return;
|
|
|
| + case ui::ET_MOUSE_ENTERED:
|
| + hovered_ = true;
|
| + return;
|
| +
|
| case ui::ET_MOUSE_EXITED:
|
| + hovered_ = false;
|
| last_mouse_event_was_move_ = false;
|
| if (root_view)
|
| root_view->OnMouseExited(*event);
|
|
|