From 8c33893ffd5cfcaf3d3a8b0cc24cb1f2be7738ef Mon Sep 17 00:00:00 2001 From: rubidium Date: Sun, 4 Jan 2009 12:09:48 +0000 Subject: (svn r14824) -Fix [FS#1725]: mouse events could be treated twice (illogict) --- src/window.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/window.cpp b/src/window.cpp index bf79b2b88..cc5e6b700 100644 --- 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(); } -- cgit v1.2.3-54-g00ecf