# HG changeset patch # User rubidium # Date 2009-01-04 12:09:48 # Node ID 28f1a7f85f52a621b6e241a60198d3ae59e9eb0d # Parent c95d786af88826db9ce1767b893f7f46d3300d38 (svn r14824) -Fix [FS#1725]: mouse events could be treated twice (illogict) diff --git a/src/window.cpp b/src/window.cpp --- a/src/window.cpp +++ b/src/window.cpp @@ -1776,13 +1776,6 @@ static int _input_events_this_tick = 0; */ static void HandleAutoscroll() { - if (_input_events_this_tick != 0) { - /* HandleAutoscroll is called only once per GameLoop() - so we can clear the counter here */ - _input_events_this_tick = 0; - /* there were some inputs this tick, don't scroll ??? */ - return; - } - if (_settings_client.gui.autoscroll && _game_mode != GM_MENU && !IsGeneratingWorld()) { int x = _cursor.pos.x; int y = _cursor.pos.y; @@ -2020,6 +2013,15 @@ void HandleMouseEvents() void InputLoop() { HandleKeyScrolling(); + + if (_input_events_this_tick != 0) { + /* The input loop is called only once per GameLoop() - so we can clear the counter here */ + _input_events_this_tick = 0; + /* there were some inputs this tick, don't scroll ??? */ + return; + } + + /* HandleMouseEvents was already called for this tick */ HandleMouseEvents(); HandleAutoscroll(); }