# HG changeset patch # User alberth # Date 2010-05-30 12:18:49 # Node ID 2c8e46da4f5d043600be805166d12dd3d2b37d53 # Parent d1aef859a24ba1d7e7433ea0d35fbd4f1fcdb0ba (svn r19906) -Codechange: HandleMouseOver() never ends, so don't return an event handling state. diff --git a/src/window.cpp b/src/window.cpp --- a/src/window.cpp +++ b/src/window.cpp @@ -1406,7 +1406,8 @@ static EventState HandleMouseDrag() return ES_HANDLED; } -static bool HandleMouseOver() +/** Report position of the mouse to the underlying window. */ +static void HandleMouseOver() { Window *w = FindWindowFromPt(_cursor.pos.x, _cursor.pos.y); @@ -1426,9 +1427,6 @@ static bool HandleMouseOver() const NWidgetCore *widget = w->nested_root->GetWidgetFromPos(pt.x, pt.y); if (widget != NULL) w->OnMouseOver(pt, widget->index); } - - /* Mouseover never stops execution */ - return true; } /** @@ -2094,7 +2092,8 @@ static void MouseLoop(MouseClick click, if (HandleWindowDragging() == ES_HANDLED) return; if (HandleScrollbarScrolling() == ES_HANDLED) return; if (HandleViewportScroll() == ES_HANDLED) return; - if (!HandleMouseOver()) return; + + HandleMouseOver(); bool scrollwheel_scrolling = _settings_client.gui.scrollwheel_scrolling == 1 && (_cursor.v_wheel != 0 || _cursor.h_wheel != 0); if (click == MC_NONE && mousewheel == 0 && !scrollwheel_scrolling) return;